// Toggle Hide/Show div

function toggle_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'block')
e.style.display = 'none';
else
e.style.display = 'block';
}

// Hide div

function hide_visibility(id) {
for (var i = 0; i < id.length; i++) {
	var e = document.getElementById(id[i]);
e.style.display = 'none';
} 
}

// Show div

function show_visibility(id) {
for (var i = 0; i < id.length; i++) {
	var e = document.getElementById(id[i]);
e.style.display = 'block';
}
}


function changeClass(elem, className1,className2)
{
    elem.className = (elem.className == className1)?className2:className1;
}


function delete_file(id) {
  var answer = confirm("Are you sure you want to delete the file?")
	if (answer){
		document.location = "admin_images.php?action=dl_file&dl_id=" + id;
	}
}

// Variables needed for Rollovers
var over = 'no';
var whichOne = ' ';
var styleSheetElement;
var oldElement;

// Function to Assign the relative path to images and links
if (whichLevel == 0) {
	var path = '';
} else if (whichLevel == 1) {
	var path = '../';
} else if (whichLevel == 2) {
	var path = '../../';
} else if (whichLevel == 3) {
	var path = '../../../';
}


// function that turns on the menus
function menuOn(pic) {
	over = 'yes';
	var layerName = pic + 'Menu';
		styleSheetElement = document.getElementById(layerName);
		if(document.images) {
			if (whichOne != ' ') {
				whichOne = whichOne + 'Menu';
				oldElement = document.getElementById(whichOne);
				oldElement.style.visibility = "hidden";
				
			}
			styleSheetElement.style.visibility = "visible";
				
		}
	}



// Timer function that is run to give the user time to get to the menu from the button
function overChecker(pic) {
	whichOne = pic;
	over = 'no';
	setTimeout("menuOff()", 900);
}

// function that turns off the menus
function menuOff() 
{
	if (over == 'no')  {	
		styleSheetElement.style.visibility = "hidden";
	}
}


function ajaxFileUpload()
	{
		

		$("#loading")
		.ajaxStart(function(){
			$(this).show();
		})
		.ajaxComplete(function(){
			$(this).hide();
		});

		$.ajaxFileUpload
		(
			{
				url:'doajaxfileupload.php',
				secureuri:false,
				fileElementId:'fileToUpload',
				dataType: 'json',
				success: function (data, status)
				{
					if(typeof(data.error) != 'undefined')
					{
						if(data.error != '')
						{
							alert(data.error);
						}else {
							loadImageLibrary('0', 'lookup', 'lookup');
						}
					}
				},
				error: function (data, status, e)
				{
					alert(e);
				}
			}
		)
		
		return false;

	}




// Variables needed for Ajax functions
var request;
var dest;
var navRequest;
var navDest;
var libraryImageSort = 'date';
var libraryImageFilter = 'all'

// Function to update file librarycontent
function loadImageLibrary(offset, sort, filter) {
	
	if(sort != 'lookup') {
		libraryImageSort = sort;
	}
	
	if(filter != 'lookup') {
		libraryImageFilter = filter;
	}

	
	
	
	// Build URl
	var URL = "image_library.php?";
	URL += "&offset=" + offset;
	URL += "&sort=" + libraryImageSort;
	URL += "&filter=" + libraryImageFilter;

	loadHTML(URL, 'imageLibrary');
	
	var NAVURL;
	NAVURL = "image_library_nav.php?";
	NAVURL += "&offset=" + offset;
	NAVURL += "&sort=" + libraryImageSort;
	NAVURL += "&filter=" + libraryImageFilter;
	
	loadNavHTML(NAVURL, 'imageNav');
	
	highlightLinks(libraryImageFilter, libraryImageSort);
}


// functions to highlight filter and sort items
function highlightLinks(currentFilter, currentSort) {


	// get element ids
	allLink = document.getElementById('allFilter');
	docLink = document.getElementById('docFilter');
	imageLink = document.getElementById('imageFilter');
	dateLink = document.getElementById('dateSort');
	nameLink = document.getElementById('nameSort');
	
	// turn on all underlines
	allLink.style.textDecoration = 'underline';
	docLink.style.textDecoration = 'underline';
	imageLink.style.textDecoration = 'underline';
	dateLink.style.textDecoration = 'underline';
	nameLink.style.textDecoration = 'underline';

	// turn off selected filter
	eval(currentFilter + "Link.style.textDecoration = 'none'");
	
	// turn off selected sort
	eval(currentSort + "Link.style.textDecoration = 'none'");
	
}


function processStateChange(){
    if (request.readyState == 4){
        contentDiv = document.getElementById(dest);
        if (request.status == 200){
          response = request.responseText;
        	contentDiv.innerHTML = response;
           	
        }  else {
            contentDiv.innerHTML = "Error: Status "+request.status;
        }
    }
}

function loadHTML(URL, destination){
    dest = destination;
    if(window.XMLHttpRequest){
        request = new XMLHttpRequest();
        request.onreadystatechange = processStateChange;
        request.open("GET", URL, true);
        request.send(null);
    } else if (window.ActiveXObject) {
        request = new ActiveXObject("Microsoft.XMLHTTP");
        if (request) {
            request.onreadystatechange = processStateChange;
            request.open("GET", URL, true);
            request.send();
        }
    }
}




function processNavStateChange(){
    if (navRequest.readyState == 4){
        contentDiv = document.getElementById(navDest);
        if (navRequest.status == 200){
          response = navRequest.responseText;
        	contentDiv.innerHTML = response;
           	
        }  else {
            contentDiv.innerHTML = "Error: Status "+navRequest.status;
        }
    }
}

function loadNavHTML(URL, destination){
    navDest = destination;
    if(window.XMLHttpRequest){
        navRequest = new XMLHttpRequest();
        navRequest.onreadystatechange = processNavStateChange;
        navRequest.open("GET", URL, true);
        navRequest.send(null);
    } else if (window.ActiveXObject) {
        navRequest = new ActiveXObject("Microsoft.XMLHTTP");
        if (navRequest) {
            navRequest.onreadystatechange = processNavStateChange;
            navRequest.open("GET", URL, true);
            navRequest.send();
        }
    }
}

// Validity check for Add New Page form
function validateAddPageForm() {
	
	var error = '';
	
	if(!document.addPage.nav_title.value) { error += 'Please enter a nav title for the page\n'; }
	if(!document.addPage.pageUrl.value) { error += 'Please enter a URL for the page\n'; }
	// if(!document.addPage.sortOrder.value) { error += 'Please select a sort order for the page\n'; }
	if(!document.addPage.section.value) { error += 'Please select a section for the page\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.addPage.submit();
	}
}

// Validity check for Edit Page form
function validateEditPageForm() {
	
	var error = '';
	
	if(!document.editPage.nav_title.value) { error += 'Please enter a nav title for the page\n'; }
	if(!document.editPage.pageUrl.value) { error += 'Please enter a URL for the page\n'; }
	// if(!document.editPage.sortOrder.value) { error += 'Please select a sort order for the page\n'; }
	if(!document.editPage.section.value) { error += 'Please select a section for the page\n'; }
	// if(!document.editPage.pageContent.value) { error += 'Please enter content for the page\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.editPage.submit();
	}
}

// Validity check for Add New Page form
function validateAddStaffForm() {
	
	var error = '';
	
	if(!document.addStaff.fname.value) { error += 'Please enter a first name for the staff member\n'; }
	if(!document.addStaff.lname.value) { error += 'Please enter a last name for the staff member\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.addStaff.submit();
	}
}


// Validity check for Add New Page form
function validateAddAffiliateStaffForm() {
	
	var error = '';
	
	if(!document.addAffiliateStaff.fname.value) { error += 'Please enter a first name for the staff member\n'; }
	if(!document.addAffiliateStaff.lname.value) { error += 'Please enter a last name for the staff member\n'; }
	if(!document.addAffiliateStaff.credentials.value) { error += 'Please enter credentials for the staff member\n'; }
	if(!document.addAffiliateStaff.title.value) { error += 'Please enter a title for the staff member\n'; }
	if(!document.addAffiliateStaff.organization.value) { error += 'Please enter an orginization for the staff member\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.addAffiliateStaff.submit();
	}
}


// Validity check for Add New Page form
function validateEditAffiliateStaffForm() {
	
	var error = '';
	
	if(!document.editAffiliateStaff.fname.value) { error += 'Please enter a first name for the staff member\n'; }
	if(!document.editAffiliateStaff.lname.value) { error += 'Please enter a last name for the staff member\n'; }
	if(!document.editAffiliateStaff.credentials.value) { error += 'Please enter credentials for the staff member\n'; }
	if(!document.editAffiliateStaff.title.value) { error += 'Please enter a title for the staff member\n'; }
	if(!document.editAffiliateStaff.organization.value) { error += 'Please enter an orginization for the staff member\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.editAffiliateStaff.submit();
	}
}

// Validity check for Add New Page form
function validateAddStaffResearchForm() {
	
	var error = '';
	
	if(!document.addStaffResearch.projectId.value) { error += 'Please select a research project\n'; }
	if(!document.addStaffResearch.title.value) { error += 'Please enter a project title for the staff member\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.addStaffResearch.submit();
	}
}


// Validity check for Add New Research form
function validateAddResearchForm() {
	
	var error = '';
	
	if(!document.addResearch.title.value) { error += 'Please enter a title for the research project\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.addResearch.submit();
	}
}

// Validity check for Add New Publication form
function validateAddPublicationForm() {
	
	var error = '';
	
	if(!document.addPublication.title.value) { error += 'Please enter a title for the publication\n'; }
	if(!document.addPublication.year.value) { error += 'Please select a year for the publication\n'; }
	if(!document.addPublication.authors.value) { error += 'Please enter author(s) for the publication\n'; }
	
	
	if(error != '') {
		alert(error);
	} else {
		document.addPublication.submit();
	}
}


// Validity check for Add New Research form
function validateEditResearchForm() {
	
	var error = '';
	
	if(!document.editResearch.title.value) { error += 'Please enter a title for the research project\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.editResearch.submit();
	}
}

// Validity check for Edit Publication form
function validateEditPublicationForm() {
	
	var error = '';
	
	if(!document.editPublication.title.value) { error += 'Please enter a title for the publication\n'; }
	if(!document.editPublication.year.value) { error += 'Please select a year for the publication\n'; }
	if(!document.editPublication.authors.value) { error += 'Please enter author(s) for the publication\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.editPublication.submit();
	}
}

// Validity check for Add New Fellow form
function validateAddFellowForm() {
	
	var error = '';
	
	if(!document.addFellow.fname.value) { error += 'Please enter a first name for the fellow\n'; }
	if(!document.addFellow.lname.value) { error += 'Please enter a last name for the fellow\n'; }
	
	if(error != '') {
		alert(error);
	} else {
		document.addFellow.submit();
	}
}