function menuGoto(selectBox) {

	url = selectBox.options[selectBox.selectedIndex].value;
	if(url) document.location = url;

}

function validateLogin() {

	var email = document.forms.login_form.email.value;
	var password = document.forms.login_form.password.value;
	var pwd = document.forms.login_form.pwd.value;
	
	if(pwd) password = pwd;
	
	var formValid = true;
	var reason = "";
	
	if(!isEmail(email)) {
		formValid = false;
		reason = reason + "\nPlease enter a valid email address   ";
		document.forms.login_form.email.style.backgroundColor = "#ff0000";
	}
	if(!password || password == "Enter Password") {
		formValid = false;
		reason = reason + "\nPlease enter a password   ";
		document.forms.login_form.password.style.backgroundColor = "#ff0000";
	}
	
	email = document.forms.login_form.email.focus();
	
	if(!formValid) {
		alert("The following errors have occured:   \n" + reason);
		document.forms.login_form.email.style.backgroundColor = "#ffffff";
		document.forms.login_form.password.style.backgroundColor = "#ffffff";
		return false;
	}
	else {
		return true;
	}

}

function validateLogin2() {

	var email = document.forms.login_form2.email.value;
	var password = document.forms.login_form2.password.value;
	
	var formValid = true;
	var reason = "";
	
	if(!isEmail(email)) {
		formValid = false;
		reason = reason + "\nPlease enter a valid email address   ";
		document.forms.login_form2.email.style.backgroundColor = "#dd0000";
	}
	if(!password || password == "Enter Password") {
		formValid = false;
		reason = reason + "\nPlease enter a password   ";
		document.forms.login_form2.password.style.backgroundColor = "#dd0000";
	}
	
	email = document.forms.login_form2.email.focus();
	
	if(!formValid) {
		alert("The following errors have occured:   \n" + reason);
		document.forms.login_form2.email.style.backgroundColor = "#ffffff";
		document.forms.login_form2.password.style.backgroundColor = "#ffffff";
		return false;
	}
	else {
		return true;
	}

}

function emailFocus(email) {
	if (email.value == "Enter Email") {
		email.value = "";
		email.style.color = "#000000";
	}
}

function emailBlur(email) {
	if(email.value == "") {
		email.value = "Enter Email";
		email.style.color = "#666666";
	}
}

function passwordFocus(password) {
	if(document.getElementById && document.all && navigator.appVersion.indexOf("Win")!=-1) {
		password.style.display = "none";
		document.getElementById("pwd").style.display = "inline";
		document.getElementById("pwd").focus();
	}
	else if(password.value == "Enter Password") {
		password.value = "";
		password.style.color = "#000000";
	}
}

function passwordBlur(password) {
	if(password.value == "") {
		if(document.getElementById && document.all && navigator.appVersion.indexOf("Win")!=-1) {
			password.style.display = "none";
			document.getElementById("password").style.display = "inline";
		}
		else {
			password.value = "Enter Password";
			password.style.color = "#666666";
		}
	}
}

function isEmail(str) {
  // are regular expressions supported?
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported) 
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

function openWindow(url, scrollbars, popupWidth, popupHeight) {
	if(!popupWidth || !popupHeight) {
		popupWidth = 450;
		popupHeight = 260;
	}
	
	popupLeft = (screenWidth - popupWidth) / 2;
	popupTop = (screenHeight - popupHeight) / 2;
	
	popup = window.open(url, "popup", "width=" + popupWidth + ", height=" + popupHeight + ", left=" + popupLeft + ", top=" + popupTop + ", scrollbars=" + scrollbars);
	popup.focus();
}

function indexPopup(fundId) {
	popupWidth = 650;
	popupHeight = 350;
	popupLeft = (screenWidth - popupWidth) / 2;
	popupTop = (screenHeight - popupHeight) / 2;
	
	url = "fund_index_select.php?id=" + fundId;

	popup = window.open(url, "popup", "width=" + popupWidth + ", height=" + popupHeight + ", left=" + popupLeft + ", top=" + popupTop + ", scrollbars=1");
	popup.focus();
}

screenWidth = screen.width;
screenHeight = screen.height;

screenRes = (screenWidth + "x" + screenHeight);
document.cookie = "screenres=" + screenRes;

function checkout(id, price, shipping) {
	if(shipping) {
		alert("You have placed an order for item(s) which require shipping. Please enter your shipping details by clicking 'Edit' in the shipping column. Once your have selected a shipping country you may proceed with your order.");
	}
	else {
		if(!price) {
			alert("There are no items in your shopping basket!   ");
		}
		else {
			//popup the window to set checkout status
			window.open("order_checkout.php?id=" + id, "orderCheckout", "width=1; height=1; left=5000; top=5000;");
			document.forms.checkout.submit();
		}
	}
}

function validateNewsSend() {
	
	email = document.forms.news_send.recipient_email.value;
	
	if(!isEmail(email)) {
		alert("Please enter a valid recipient email address   ");
		return false;
	}
	else {
		return true;
	}
}

function validateFeedback() {
	
	name = document.forms.feedback_form.name.value;
	email = document.forms.feedback_form.email.value;
	message = document.forms.feedback_form.message.value;
	
	reason = "";
	formValid = true;
	
	if(!name) {
		reason = reason + "\nYou must enter your name   ";
		formValid = false;
	}
	if(!isEmail(email)) {
		reason = reason + "\nYou must enter a valid email address   ";
		formValid = false;
	}
	if(!message) {
		reason = reason + "\nYou must enter a message   ";
		formValid = false;
	}
	
	if(!formValid) {
		alert("The following errors occured:   \n" + reason);
		return false;
	}
	else {
		return true;
	}
	
}

function setSubscription(subscriptionId) {
	document.forms.form.subscription.value = subscriptionId;
	document.forms.login_form2.page.value = "basket.php?id=" + subscriptionId + "&type=subscription";
	window.scrollTo(0, 550);
}

function checkBackToTop() {
	if(document.getElementById) {
		pageHeight = document.body.scrollHeight;
		if(pageHeight > 850) {
			document.getElementById("backToTopHolder").innerHTML = '<hr width="100%" noshade="noshade" color="#cccccc" size="1"/><p><a href="#top"><img src="images/icon_backtotop.gif" align="absmiddle" border="0" />Back to top</a></p>';
		}
	}
}

function validateQuickSearch() {
	queryText = document.forms.quickSearchForm.query.value;
	
	if(!queryText) {
		alert("Please enter a search query!   ");
		document.forms.quickSearchForm.query.focus();
		return false;
	}
	else {
		return true;
	}
}

function validateQuickSearch2() {
	queryText = document.forms.searchForm2.query.value;
	
	if(!queryText) {
		alert("Please enter a search query!   ");
		document.forms.searchForm2.query.focus();
		return false;
	}
	else {
		return true;
	}
}

function validateSiteSearch() {
	queryText = document.forms.siteSearch.query.value;
	
	if(!queryText) {
		alert("Please enter a search query!   ");
		document.forms.siteSearch.query.focus();
		return false;
	}
	else {
		return true;
	}
}

function validateSiteSearch2() {
	queryText = document.forms.siteSearch2.query.value;
	
	if(!queryText) {
		alert("Please enter a search query!   ");
		document.forms.siteSearch2.query.focus();
		return false;
	}
	else {
		return true;
	}
}

function convertCurrency() {
	
	currencyTo = document.forms.currencyForm.To.value;
	currencyAmount = document.forms.currencyForm.Amount.value;
	
	openWindow("http://www.xe.com/ucc/convert.cgi?From=GBP&Amount=" + currencyAmount + "&To=" + currencyTo, "1", 520, 480);
	
}

function validatePostMessage() {
	
	theMessage = document.forms.messageForm.message.value;
	theSubject = document.forms.messageForm.subject.value;
	
	if(!theMessage || !theSubject) {
		alert("You must enter a message and subject!   ");
		return false;
	}
	else {
		return true;
	}
	
}

function loadSearch(id) {
	
	window.opener.location = "fund_search.php?save_search_id=" + id;
	window.close();
	
}