function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//
//	Contact
//
var SUCCESS = "thankyou.asp";
var FAILURE = "error.asp";

//	Validates the required fields
function isFieldsValid() {
	var msg = "";
	
	//	Validate the fields
	msg += validateName(document.emailForm.FullName.value);
	if(msg != "") {
		msg += "\n";
	}
	msg += validateEmail(document.emailForm.EmailAddress.value);
	
	//	Display a message if validation failed
	if(msg != "") {
		alert("Please correct the following errors so that we can process your message:" +
			  "\n\n" + msg);
		return false;
	}
	else {
		return true;
	}
}

//	Validates the name field
function validateName(name) {
	var msg = "";
	var errorMsg = "  - Enter a valid name";

	name = trimString(name);	
	if(name == "") {
		msg = errorMsg;
	}
	
	return msg;
}

//	Validate the email field
function validateEmail(email) {
	var msg = "";
	var errorMsg = "  - Enter a valid email address";

	email = trimString(email);	
	if(email == "") {
		msg = errorMsg;
	}
	else {
		var at = "@"
		var dot = "."
		var lat = email.indexOf(at)
		var lstr = email.length - 1;
		var ldot = email.indexOf(dot)

		//	Validate presence of at least one @
	  	if(email.indexOf(at) == -1 || email.indexOf(at) == 0 || email.indexOf(at) == lstr) {
			msg = errorMsg;
		}	
		//	Validate presence of only one @
		else if(email.indexOf(at, (lat + 1)) != -1) {
			msg = errorMsg;
		}
		//	Validate presence of at last one .
		else if(email.indexOf(dot) == -1 || email.indexOf(dot) == 0 || email.indexOf(dot) == lstr) {
			msg = errorMsg;
		}		
		//	Validate that .@ or @. is not present
		else if(email.substring(lat - 1, lat) == dot || email.substring(lat + 1, lat + 2) == dot) {
			msg = errorMsg;
		}
		//	Validate @<char>. pattern is found
		else if(email.indexOf(dot, (lat + 2)) == -1) {
			msg = errorMsg;
		}
	}

 	return msg;
}
  
//	Resets the form
function resetForm() {
	document.all.emailForm.reset();
}

var timerID;

//	Submits the message to the server
function submitMessage() {
	if(isFieldsValid()) {
	document.emailForm.submit();
	}
}

//	Returns true if a supported browser (IE 4.x or higher; Netscape 6.x or higher) 
//	is being used
function isBrowserSupported() {
	var isSupported = false

	if(navigator.appName == 'Microsoft Internet Explorer') {
		if(getIEVersionNum() >= 5) {
		  	isSupported = true;
		}
	}
	else if(navigator.appName == 'Netscape') {
		if(getNetscapeVersionNum() >= 5) {
			isSupported = true;
		}
	}
	
	return isSupported;
}

//	Gets the version number for Internet Explorer
function getIEVersionNum() {
	var brVer = navigator.userAgent;
	var brVerId = brVer.indexOf('MSIE');
	var brNum = brVer.substr(brVerId, 8);

	return brNum.substring(5, 6);
}

//	Gets the version number for Netscape
function getNetscapeVersionNum() {
	var brVer = navigator.userAgent;
	var reg = new RegExp('index.html');
	var brVerId = brVer.search(reg);
	var brNum = brVer.substring(brVerId + 1);

	return brNum.substring(0, 1);
}

//	Polling function that waits for a response from the server
function pollForResponse() {
	var response = responseFrame.document.body.innerHTML;
	
	if(response != null && response != "") {
		stopTimer();
		
		if(response.indexOf("Your email was sent") != -1) {
			parent.document.location.href = SUCCESS;
		}
		else {
			parent.document.location.href = FAILURE;	
		}
	}
}

//	Clears the polling timer
function stopTimer()
{
	clearInterval(timerID);
}

//	Opens a window that is centered on the screen
function openCenteredWindow(url, name, width, height) {

	// Compute the window's top and left positions so that it is centered
	var windowWidth 	= width;
	var windowHeight 	= height;
	var screenWidth 	= screen.availWidth;
	var screenHeight 	= screen.availHeight;
	var left 			= screenWidth  / 2 - windowWidth  / 2;
	var top 			= screenHeight / 2 - windowHeight / 2;
	var properties		= "resizable=yes,left=" + left + ",top=" + top + ",width=" + 
		windowWidth + ",height=" + windowHeight;

	window.open(url, name, properties);
}

//	Trims a string
function trimString(str) {
	if(str == null || str == "") {
		return str;
	}

	//	Remove leading whitespaces
	while (str.charAt(0) == ' '  || str.charAt(0) == '\t' ||
		   str.charAt(0) == '\r' || str.charAt(0) == '\n') {
		str = str.substring(1,str.length);
	}
	
	//	Remove trailing whitespaces
	while (str.charAt(str.length - 1) == ' '  || str.charAt(str.length - 1) == '\t' ||
		   str.charAt(str.length - 1) == '\r' || str.charAt(str.length - 1) == '\n') {
    	str = str.substring(0, str.length - 1);
	}
	
	return str;
}

//	Netscape 4.x bug fix - reloads the page when the browser is resized
function MM_reloadPage(init) {  
	if (init==true) with (navigator) {
		if((appName=="Netscape") && (parseInt(appVersion)==4)) {
			document.MM_pgW=innerWidth; 
			document.MM_pgH=innerHeight; 
			onresize=MM_reloadPage; 
		}
	}
	else if(innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) {
		location.reload();
	}
}

//------------------------------
function inpTog(){
	de=document.emailForm;
	de.AddtlComments.disabled=(de.LikeToSee[de.LikeToSee.selectedIndex].value=="Other")?false:true;
}
MM_reloadPage(true);