<!--

document.write('<script type="text\/javascript" src="\/includes\/scripts\/utils_js.js"><\/script>');

// generic functions for use across main site

// preload images used for 'rollovers' etc
preLoadImages( 
	"/images/link1_on.gif", "/images/link1_off.gif", 
	"/images/link2_on.gif", "/images/link2_off.gif", 
	"/images/link3_on.gif", "/images/link3_off.gif" 
	);
	
function preLoadImages() {
	if (!document.images) { return; }
	var imgCache = new Array();
	for (i=0; i<arguments.length; i++) {
		imgCache[i] = new Image;
		imgCache[i].src = arguments[i];
	}
}

// process site search form
function process_frm_sitesearch(frm) {
	var f_search = frm.f_search.value.trimAll();
	frm.f_search.value = f_search;
	return (f_search == "") ? false : true;
}

// process login form
function process_frm_login(frm) {
	var frm_id = frm.id;
	var f_username 	= trimInput(frm.USERNAME);
	var f_password 	= trimInput(frm.PASSWORD);
	
	if (f_username == "" || f_password == "" || ! f_username.isType(USERNAME)) {
		if (frm.id == "frm_login_main") {
			setMsg("Error: valid username and password must be entered"); 
		}
		return false;
	}
	else {
		return true;
	}
}

function process_account_logout() {
	return confirm("Are you sure you want to log out?");
}

function process_account_delete() {
	return confirm("Are you sure you want to delete your account?\nYou will no longer be able to view your order history");
}

// process send password form
function process_frm_send_password(frm) {
	var f_username = trimInput(frm.USERNAME);
	var f_captcha  = trimInput(frm.CAPTCHA);
	
	if (f_username == "" || ! f_username.isType(USERNAME) || f_captcha == "") {
		setMsg("Error: valid username and validation code must be entered"); 
		return false;
	}
	else {
		return true;
	}
}

function TODOLINK() {
	alert("Link to be implemented ...");
	return void 0;
}


function process_frmAddToBasket(frm) {
	var q = frm.quantity.value.trim();
	if (q != "" && q.isType(POS_INT)) {	
		frm.quantity.value = q;	
		return true;
	}
	else {
		alert("Invalid quantity entered");
		frm.quantity.value = 1;
		return false;
	}
}


function process_frmRecalculateBasket(frm) {
	var qo = frm.quantity_old.value;
	var q = frm.quantity.value.trim();
	if (q != "" && q.isType(POS_INT)) {	
		frm.quantity.value = q;	
		if (q == qo) {
			setMsg("No changes made");
			return false;
		}
		else {
			setMsg("");
			return true;
		}
	}
	else {
		frm.quantity.value = qo;
		setMsg("Please enter a valid numeric value for quantity");
		return false;
	}
}

function process_frm_profile_edit(frm) {

	var f_username 	= trimInput(frm.USERNAME);
	var f_password 	= trimInput(frm.PASSWORD);	
	var f_password2	= trimInput(frm.PASSWORD2);	
	var f_fullname	= trimInput(frm.fullname);	
	var f_address1 	= trimInput(frm.ADDRESS1);	
	var f_city 		= trimInput(frm.CITY);	
	var f_postcode 	= trimInput(frm.POSTCODE);	
	var f_country 	= getSelectValue(frm.COUNTRY);	
	var f_telephone	= trimInput(frm.TELEPHONE);		
	var f_email		= trimInput(frm.EMAIL);
	var f_vatstatus	= getRadioValue(frm.VATSTATUS);
	var f_vatnum	= trimInput(frm.VATNUM);
	
	if (	f_username	== "" || 
		f_password	== "" ||
		f_password2	== "" ||
		f_fullname == "" || 
		//f_firstname	== "" ||
		//f_lastname	== "" ||
		f_address1	== "" ||
		f_city	== "" ||
		f_postcode	== "" ||
		f_country	== "" ||
		f_telephone	== "" ||
		f_email	== ""  ) {
		setMsg("Error: Required fields not completed");
		return false;
	}
	else if (! f_username.isType(USERNAME)) {
		setMsg("Error: Username must be at least 6 alpha or numeric characters");
		return false;	
	}
	else if (f_password != f_password2) {
		setMsg("Error: Password and Password confirmation do not match");
		return false;		
	}
	else if (! f_email.isType(EMAIL)) {
		setMsg("Error: Email format is invalid");
		return false;		
	}
	else if (f_vatstatus == "3" && f_vatnum == "") {
		setMsg("Error: VAT Number must be entered");
		return false;		
	}
	else {
		return true;
	}
}

function cancel_frm_profile_edit(frm) {
	// avoid js validation of fields on cancel but still submit as php will handle the 'cancel'
	frm = document.getElementById("frm_profile_edit");
	frm.submit();
}

function setMsg(msgTxt) {
	var msg = document.getElementById("msg");
	document.getElementById("msg").style.color="red";
	if (msg !== null) {
		msg.innerHTML = msgTxt;
	}
	else {
		if (msgTxt != "") {
			alert(msgTxt);
		}
	}
}

function getPopup(obj) {
	var href   = obj.href.substring( obj.href.lastIndexOf("/") + 1 );
	var target = obj.target;
	var win = window.open("/File/popup.php?f="+href,target,"scrollbars=yes,width=540,height=540,top=50,left=50"); 
	win.focus();
	return false;
}

function checkKeyQuantity(evt) {
/*	Valid character are;
	- numerics, 0-9, (codes 48 - 57),
	- nonalphanumeric chars below code 32: includes Backspace (8), Tab (9), and Return (13)
*/
	var keynum	= (evt.keyCode)		// I.E.
			? evt.keyCode
			: ( (evt.which)		// Netscape, Mozilla, Opera
			? evt.which
			: 0 );			// default
	
	// validate key - if enter pressed then calculate gift aid
	if ( (keynum >= 48 && keynum <= 57) || (keynum < 32) ) {
		return true;
	}
	else {
		return false;
	}
}


//-->