function setCurrent() {
	if(document.getElementById("menu")) {
		var y = document.getElementById("menu").getElementsByTagName("LI");
		for(i=0;i<y.length;i++) {
			var x = document.location.href.split("#")[0];
			if(y[i].getElementsByTagName("A")[0].href == x || y[i].getElementsByTagName("A")[0].href+"/" == x) {
				y[i].className = y[i].className+" current";
			}
		}
	}
}

function setExternalLinks() {
	var x = document.getElementsByTagName("A");
	for(i=0;i<x.length;i++) {
		if(x[i].className.indexOf("external") > -1) {
			x[i].onclick = function() {
				window.open(this.href,"exwin");
				return false;
			}
		}
	}
}

function toggleLogin() {
	var x = document.getElementById("loginform");
	if(x) {
		if(x.style.display != "block") {
			x.style.display = "block";
		} else {
			x.style.display = "none";
		}
	}
}

function validateLogin() {
	var x = document.getElementById("loginform");
	if(x.elements['un'].value.length < 1 || x.elements['pw'].value.length < 1) {
		alert("Please enter a username and password.");
		return false;	
	}
	else {
		return true;
	}
}

function validate(form) {
	var f = form;
	var missing = new Array();
	var msg = "Please be sure to fill out all of the fields marked in red.";
	for(i=0;i<f.elements.length;i++) {
		if(f.elements[i].value.length < 1 && f.elements[i].className == "required") {
			missing.push(f.elements[i].name);
		}
		if(f.elements[i].name == "email" && f.elements[i].className == "required") {
			if(!validateEmail(f.elements[i].value)) {
				missing.push(f.elements[i].name);
				missing.length > 1 ? msg += " Also, please make sure you have entered a valid email address." : msg = "Please make sure you have entered a valid email address.";
			}
		}
	}
	if (missing.length > 0) {
		labels = document.getElementsByTagName("LABEL");
		for(h=0;h<labels.length;h++) {
			labels[h].className = "";
		}
		for(j=0;j<missing.length;j++) {
			document.getElementById(missing[j]).className = "required";
		}
		alert(msg);
		return false;
	}
	else {
		return true;
	}
}

function validateEmail(str) {
	return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}

jQuery.preloadImages = function() {
	for(var i = 0; i<arguments.length; i++) {
		jQuery("<img>").attr("src", arguments[i]);
	}
}	

$.preloadImages("/images/loading.gif");

$(document).ready(function() {
	setCurrent();
	setExternalLinks();
	$('body.projects div.slides').cycle({ 
	    fx:'scrollHorz',
	 	timeout:0,
		pager:'div.pager'
	});
	$('body.project div.slides').cycle({ 
	    fx:'scrollHorz',
	 	timeout:0,
		pager:'div.pager'
	});
	$('body.home div.slides').cycle({ 
	    fx:'fade',
		pause:1,
	 	timeout:7000
	});
});
