var SearchImage="Miscellaneous/Search.png";
var HoverSearchImage="Miscellaneous/SearchHover.png";
var DownSearchImage="Miscellaneous/SearchDown.png";
var HoverTopOfPageImage="Miscellaneous/TopOfPageHover.png";
var HomeImage="Miscellaneous/Home.png";
var HoverHomeImage="Miscellaneous/HomeHover.png";
var DownHomeImage="Miscellaneous/HomeDown.png";

function detectResolution() {
	if(screen.width<1024||screen.height<768) {
		alert("This website is best viewed with a resolution of 1024x768 or higher. If possible, please change your resolution.")
		return false;
	}
	else {
		return true;
	}
}

function doMenu(menuDiv) {
	/* First up, we close everything. */
	menuArray     = new Array(12);
	menuArray[0]	= "corporate";
	menuArray[1]	= "contact";
	menuArray[2]	= "products";
	menuArray[3]	= "support";
	menuArray[4]	= "training"; 
	menuArray[5]	= "geedeetutor";	
	menuArray[6]	= "news";
	menuArray[7]	= "downloads";
	menuArray[8]	= "partners";
	menuArray[9]	= "legal";
	menuArray[10]	= "clients";
	menuArray[11]   = "testimonials";

	for (var i = 0; i < menuArray.length; i++) {
		element = document.getElementById(menuArray[i]);
		element.style.display = "none";
	}
	
	/* Now, we open the appropriate menu. */
	openMenu(menuDiv);
}

function openMenu(menuDiv) {
	element = document.getElementById(menuDiv);
	element.style.display = "";
}

/* These two functions were written by Chris Pederick (http://chrispederick.com) */
// Trims leading and trailing spaces from a string
function trim(what) {
  return what.replace(new RegExp("^\\s+|\\s+$", "gi"), "");
}

// Tests if an email address is valid
function isValidEmailAddress(emailAddress) {
  // If a simple regular expression doesn't work
  if (!new RegExp(/^test$/).test("test")) {
    return true;
  }
  // If the email address is empty
  if (trim(emailAddress) == "") {
    return false;
  }
  return new RegExp(/^[^@]+@[^@]+\.[^@]{2,}$/).test(trim(emailAddress));
}

// Tests if a string contains 1..9, leading +, -, (, or ) only.
function isValidPhoneNumber(phoneNumber) {
	// if the number is empty.
	if (trim(phoneNumber) == "") {
		return false;
	}
	return new RegExp(/^\+?[0-9 ()-]+[0-9]$/).test(trim(phoneNumber));
}

// Tests if a string is of the form "GD-xxxx", where x is 0..9
function isValidUserNumber(userNumber) {
	// if the number is empty.
	if (trim(userNumber) == "") {
		return false;
	}
	return new RegExp(/^gd/i).test(trim(userNumber));
}

function validateEmail(field, errorelement) {
	emailaddress = document.getElementById(field);
	elem = document.getElementById(errorelement);
	if (!isValidEmailAddress(emailaddress.value)) {
		elem.style.display = "";
		return false;
	}
	else {
		elem.style.display = "none";
		return true;
	}
}

function validateGeneric(field, errorelement) {
	data = document.getElementById(field);
	elem = document.getElementById(errorelement);
	if (trim(data.value) == "") {
		elem.style.display = "";
		return false;
	}
	else {
		elem.style.display = "none";
		return true;
	}
}

function validatePhone(field, errorelement) {
	phone = document.getElementById(field);
	elem = document.getElementById(errorelement);
	if (!isValidPhoneNumber(phone.value)) {
		elem.style.display = "";
		return false;
	}
	else {
		elem.style.display = "none";
		return true;
	}
}

function validateChecked(field, errorelement) {
	box = document.getElementById(field);
	elem = document.getElementById(errorelement);
	if (!box.checked == true) {
		elem.style.display = "";
		return false;
	}
	else {
		elem.style.display = "none";
		return true;
	}
}

function validateUserNumber(field, errorelement) {
	number = document.getElementById(field);
	elem = document.getElementById(errorelement);
	if (!isValidUserNumber(number.value)) {
		elem.style.display = "";
		return false;
	}
	else {
		elem.style.display = "none";
		return true;
	}
}
