var IE
var reTestString = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;

// Simple check for browser type
if (document.all)
	IE = true
else
	IE = false;
	
// Returns either the element of false if element not on page
function locateElement (pID) {
 if (document.getElementById(pID))
 	return document.getElementById(pID)
else
	return false;
}

// Returns a StylesheetClass or false is class not in stylesheet
function locateStyleClass (pStyleClass) {

	var oStyleClass = '.' + pStyleClass;
	var retValue = false;

	if (IE) {
		for (i=0; i<(document.styleSheets.length); i+=1) {
			for (j=0; j<(document.styleSheets[i].rules.length); j+=1) {
				if (document.styleSheets[i].rules[j].selectorText == oStyleClass) {
					retValue = document.styleSheets[i].rules[j];
				}
			}
		}
	}
	else {
		for (i=0; i<(document.styleSheets.length); i+=1) {
			for (j=0; j<(document.styleSheets[i].cssRules.length); j+=1) {
				if (document.styleSheets[i].cssRules[j].selectorText == oStyleClass) {
					retValue = document.styleSheets[i].cssRules[j];
				}
			}
		}
	}
	
	return retValue;
}
	
// Gets colours for an element from the stylesheet
// Note: this is different on IE and Netscape
function invertColours(pElement) {

	var i, j
	var strColor = '';
	
	var oStyleClass = locateStyleClass(pElement.className);
	
	if (oStyleClass) {
	
		if ((!pElement.style.color) || (oStyleClass.style.color == pElement.style.color)) {
			strColor = oStyleClass.style.backgroundColor;
			pElement.style.backgroundColor = oStyleClass.style.color;
			pElement.style.color = strColor;
		}
		else {
			pElement.style.backgroundColor = oStyleClass.style.backgroundColor;
			pElement.style.color = oStyleClass.style.color;
		}
	}
}

function highlight(pElement) {

	invertColours (pElement);
	invertLink (pElement, pElement.style.color);
}

function revert(pElement) {

	invertColours (pElement);
	invertLink (pElement, pElement.style.color);
}

function showDetail(pDiv) {
	if (locateElement(pDiv))
		locateElement(pDiv).style.visibility='visible';
}

function hideDetail(pDiv) {
	if (locateElement(pDiv))
		locateElement(pDiv).style.visibility='hidden';
}

// Searches for an alink in child nodes of element and clicks
// Note: not suitable if more than 1 link in child nodes.
function clickLink(pElement) {

	var oElement = null;
	var i;
	for (i=0; i<(pElement.childNodes.length); i+=1) {
		oElement = pElement.childNodes[i];
		if (oElement.nodeType == 1)
			if (oElement.tagName == 'A')
				if (IE)
					oElement.click()
				else
					window.location = oElement.href;
		clickLink (oElement);	
	}
}


// Fix for Stylesheet transparency bug
// Uses code from clickLink to change link colours
function invertLink(pElement, pColour) {

	var oElement = null;
	var i;
	for (i=0; i<(pElement.childNodes.length); i+=1) {
		oElement = pElement.childNodes[i];
		if (oElement.nodeType == 1)
			if (oElement.tagName == 'A')
				oElement.style.color = pColour;
		clickLink (oElement, pColour);		
	}
}

function checkKeysNum(e) {
/* e		: Netscape Event Object (ignored by Internet Explorer */
	if (IE) {	
		if ((event.keyCode < 1 || event.keyCode > 32) && (event.keyCode != 42) && (event.keyCode != 46) && (event.keyCode < 48 || event.keyCode > 57)) {
			event.returnValue = false;
			return false;
		}
	}
	else {
		if ((e.which < 1 || e.which > 32) && (e.which != 42) && (e.which != 46) && (e.which < 48 || e.which > 57) && (e.which != 0)) {
			e.cancelBubble = true;
			return false;
		}
	}			
}


function removeDash (pElement) {

	var i=0;
	var newString = '';
	
	for (i=0; i<(pElement.value.length); i+=1) {
		if (pElement.value.substr(i, 1) != '-')
			newString = newString + pElement.value.substr(i, 1);
	}
	
	pElement.value = newString;
}

function removeHeader (pElement) {

	if (pElement.value.length > 7) {
		
		var firstSeven = pElement.value.substr(0,7);
		firstSeven = firstSeven.toUpperCase();
		if (firstSeven == 'HTTP://')
			pElement.value = pElement.value.substring(7, pElement.value.length);
	}

}

function addDash (pElement) {

	var i=0;
	var newString = '';
	
	for (i=0; (i<(pElement.value.length) && i< 15); i+=1) {
		newString = newString + pElement.value.substr(i, 1);
		if (i == 3 || i==7 || i==11)
			newString = newString + "-"
	}
	
	pElement.value = newString;
}

function checkKeys(e) {
/* e		: Netscape Event Object (ignored by Internet Explorer */
	if (IE) {	
		if ((event.keyCode < 1 || event.keyCode > 32) && (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 65 || event.keyCode > 90) && (event.keyCode < 97 || event.keyCode > 122) && event.keyCode != 27) {
			event.returnValue = false;
			return false;
		}
	}
	else {
		if ((e.which < 1 || e.which > 32) && (e.which < 48 || e.which > 57) && (e.which < 65 || e.which > 90) && (e.which < 97 || e.which > 122) && e.which != 0) {
			e.cancelBubble = true;
			return false;
		}
	}			
}

function checkNumKeys(e) {
/* e		: Netscape Event Object (ignored by Internet Explorer */
	if (IE) {	
		if ((event.keyCode < 1 || event.keyCode > 32) && (event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 27) {
			event.returnValue = false;
			return false;
		}
	}
	else {
		if ((e.which < 1 || e.which > 32) && (e.which < 48 || e.which > 57) && e.which != 0) {
			e.cancelBubble = true;
			return false;
		}
	}			
}

function checkPrice(e) {
/* e		: Netscape Event Object (ignored by Internet Explorer */
	if (IE) {	
		if ((event.keyCode < 1 || event.keyCode > 32) && (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode !=46) &&event.keyCode != 27) {
			event.returnValue = false;
			return false;
		}
	}
	else {
		if ((e.which < 1 || e.which > 32) && (e.which < 48 || e.which > 57) && e.which !=46 && e.which != 0) {
			e.cancelBubble = true;
			return false;
		}
	}			
}


function checkCredit(e) {

/* e		: Netscape Event Object (ignored by Internet Explorer */

	var returnValue = true
	oElement = document.getElementById('creditcardno');

	if (IE) {	
		if ((event.keyCode < 1 || event.keyCode > 32) && (event.keyCode != 42) && (event.keyCode != 46) && (event.keyCode < 48 || event.keyCode > 57)) {
			event.returnValue = false;
			returnValue = false;
		}
	}
	else {
		if ((e.which < 1 || e.which > 32) && (e.which != 42) && (e.which != 46) && (e.which < 48 || e.which > 57) && (e.which != 0)) {
			e.cancelBubble = true;
			returnValue = false;
		}
	}			
	
	if (document.getElementById('creditcardtype').selectedIndex != 0) {
		removeDash(oElement);
		addDash(oElement);
	}
	
	return returnValue;
}

function subscribe (pElement) {

	if (pElement.checked == true && pElement.id == 'newSub')
		document.getElementById('startIssue').style.visibility = 'visible';
		
	if (pElement.checked == true && pElement.id == 'renewSub') {
		document.getElementById('startIssue').value = 'x';
		document.getElementById('startIssue').style.visibility = 'hidden';
	}
		
}		

function selectCard(pElement) {
	if (pElement.selectedIndex != 0) {
		document.getElementById('creditexp').style.display='block'
		document.getElementById('switchexp').style.display='none'
	}
	else {
		document.getElementById('creditexp').style.display='none'
		document.getElementById('switchexp').style.display='block'
	}
}

function highlightSpan(pElement) {
	var oElement = pElement.parentNode;
	
	oElement.style.backgroundColor = "#000000";
	oElement.style.color = "#FFFFFF";
}

function revertSpan(pElement) {
	var oElement = pElement.parentNode;
	
	oElement.style.backgroundColor = "";
	oElement.style.color = "";
}

function testURL (pElement) {

if (pElement.form.companywebsite.value.length > 0) {
	window.open ('http://' + pElement.form.companywebsite.value, 'preview', 'width=640,height=480, menubar=no, toolbar=no, screenx=30, screeny=30');
}
else {
	alert ('Please enter a Website address to test!');
}

}

// Searches for an alink in child nodes of element and clicks
// Note: not suitable if more than 1 link in child nodes.
function clickLink(pElement) {

	var oElement = null;
	var i;
	for (i=0; i<(pElement.childNodes.length); i+=1) {
		oElement = pElement.childNodes[i];
		if (oElement.nodeType == 1)
			if (oElement.tagName == 'A')
				if (IE)
					oElement.click()
				else
					window.location = oElement.href;
		clickLink (oElement);	
	}
}

function showAd(pSize) {

	var i = 0;
	for (i=1; i<33; i+=1){
		document.getElementById('ad'+i).style.backgroundColor='#FFFFFF';
	}
	document.getElementById('adStart').style.display='block';
	document.getElementById('adQuarter').style.display='none';
	document.getElementById('adHalf').style.display='none';
	document.getElementById('adFull').style.display='none';
	document.getElementById('adDouble').style.display='none';
	
	
	if (pSize=='quarter') {
		document.getElementById('ad1').style.backgroundColor='#FF9999';
		document.getElementById('ad2').style.backgroundColor='#FF9999';
		document.getElementById('ad9').style.backgroundColor='#FF9999';
		document.getElementById('ad10').style.backgroundColor='#FF9999';
		
		document.getElementById('adStart').style.display='none';
		document.getElementById('adQuarter').style.display='block';
		document.getElementById('adHalf').style.display='none';
		document.getElementById('adFull').style.display='none';
		
	}

	if (pSize=='half') {
		document.getElementById('ad1').style.backgroundColor='#FF9999';
		document.getElementById('ad2').style.backgroundColor='#FF9999';
		document.getElementById('ad9').style.backgroundColor='#FF9999';
		document.getElementById('ad10').style.backgroundColor='#FF9999';
		document.getElementById('ad3').style.backgroundColor='#FF9999';
		document.getElementById('ad4').style.backgroundColor='#FF9999';
		document.getElementById('ad11').style.backgroundColor='#FF9999';
		document.getElementById('ad12').style.backgroundColor='#FF9999';
		
		document.getElementById('adStart').style.display='none';
		document.getElementById('adQuarter').style.display='none';
		document.getElementById('adHalf').style.display='block';
		document.getElementById('adFull').style.display='none';
		document.getElementById('adDouble').style.display='none';

	}

	if (pSize=='full') {
		document.getElementById('ad1').style.backgroundColor='#FF9999';
		document.getElementById('ad2').style.backgroundColor='#FF9999';
		document.getElementById('ad9').style.backgroundColor='#FF9999';
		document.getElementById('ad10').style.backgroundColor='#FF9999';
		document.getElementById('ad3').style.backgroundColor='#FF9999';
		document.getElementById('ad4').style.backgroundColor='#FF9999';
		document.getElementById('ad11').style.backgroundColor='#FF9999';
		document.getElementById('ad12').style.backgroundColor='#FF9999';
		document.getElementById('ad25').style.backgroundColor='#FF9999';
		document.getElementById('ad26').style.backgroundColor='#FF9999';
		document.getElementById('ad27').style.backgroundColor='#FF9999';
		document.getElementById('ad28').style.backgroundColor='#FF9999';
		document.getElementById('ad17').style.backgroundColor='#FF9999';
		document.getElementById('ad18').style.backgroundColor='#FF9999';
		document.getElementById('ad19').style.backgroundColor='#FF9999';
		document.getElementById('ad20').style.backgroundColor='#FF9999';
		
		document.getElementById('adStart').style.display='none';
		document.getElementById('adQuarter').style.display='none';
		document.getElementById('adHalf').style.display='none';
		document.getElementById('adFull').style.display='block';
		document.getElementById('adDouble').style.display='none';
		
	}
	
	if (pSize=="double") {
		for (i=1; i<33; i+=1){
			document.getElementById('ad'+i).style.backgroundColor='#FF9999';
		}
		
		document.getElementById('adStart').style.display='none';
		document.getElementById('adQuarter').style.display='none';
		document.getElementById('adHalf').style.display='none';
		document.getElementById('adFull').style.display='none';
		document.getElementById('adDouble').style.display='block';

	}
	
	
	
}

function checkRecruitmentUserForm(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'surname';
	requiredFields[1] = 'firstname';
	requiredFields[2] = 'email';
	requiredFields[3] = 'email2';
	requiredFields[4] = 'password';
	requiredFields[5] = 'password2';
	requiredFields[6] = 'dayphone';
	requiredFields[7] = 'addr1';
	requiredFields[8] = 'towncity';
	requiredFields[9] = 'county';
	requiredFields[10] = 'country';
	requiredFields[11] = 'postcode';
	
	for (i=0; i<(requiredFields.length); i+=1) {
		if (locateElement(requiredFields[i])){
			if (locateElement(requiredFields[i]).value.length == 0) {
				valid = false;
			}
		}
	}
	
	if (valid) {
		if (locateElement('email').value != locateElement('email2').value) {
			valid = false;
			locateElement('email2').value = '';			
			alert ('Email values do not match, please check and re-enter');
		}
		else {
			if (locateElement('password').value != locateElement('password2').value) {
				valid = false;
				locateElement('password').value = '';			
				locateElement('password2').value = '';
				alert ('Password values do not match, please re-enter');
			}
		}
	}
	else {
		alert ('Please enter details for all fields with BOLD titles');
	}

	if (valid)
		pElement.submit();
	
}

function checkRecruitmentBusinessForm(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'companyname';
	requiredFields[1] = 'contactname';
	requiredFields[2] = 'email';
	requiredFields[3] = 'email2';
	requiredFields[4] = 'password';
	requiredFields[5] = 'password2';
	requiredFields[6] = 'phone';
	requiredFields[7] = 'fax';
	requiredFields[8] = 'addr1';
	requiredFields[9] = 'towncity';
	requiredFields[10] = 'county';
	requiredFields[11] = 'country';
	requiredFields[12] = 'postcode';
	
	
	if (locateElement('businesstype')) {
		if (locateElement('businesstype').options[0].selected) {
			valid = false;
			alert ('Please select a Business Type for the list');
		}
	}
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid)
			alert ('Please enter details for all fields with BOLD titles');
	}

	if (!valid) {
		if (!reTestString.test(document.getElementById('email').value)) {
			alert('Please enter a valid email address');
			valid = false;
		}
	}
		
	if (valid) {
		if (locateElement('email').value != locateElement('email2').value) {
			valid = false;
			locateElement('email2').value = '';			
			alert ('Email values do not match, please check and re-enter');
		}
	}
	
	if (valid) {
		if (locateElement('password').value != locateElement('password2').value) {
				valid = false;
				locateElement('password').value = '';			
				locateElement('password2').value = '';
				alert ('Password values do not match, please re-enter');
		}
	}

	if (valid)
		pElement.submit();
		
	
}

function checkUserRegistrationForm(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'lastname';
	requiredFields[1] = 'firstname';
	requiredFields[2] = 'email';
	requiredFields[3] = 'email2';
	requiredFields[4] = 'password';
	requiredFields[5] = 'password2';
	requiredFields[6] = 'telephone';
	
	if (locateElement('title')) {
		if (locateElement('title').options[0].selected) {
			valid = false;
			alert ('Please select a Title from the list.');
		}
	}	
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid)
			alert ('Please enter details for all fields with BOLD titles');
	}
		
	if (valid) {
		if (!reTestString.test(document.getElementById('email').value)) {
			alert('Please enter a valid email address');
			valid = false;
		}
	}
		
	if (valid) {
		if (locateElement('email').value != locateElement('email2').value) {
			valid = false;
			locateElement('email2').value = '';			
			alert ('Email values do not match, please check and re-enter');
		}
	}
	
	if (valid) {
		if (locateElement('password').value != locateElement('password2').value) {
				valid = false;
				locateElement('password').value = '';			
				locateElement('password2').value = '';
				alert ('Password values do not match, please re-enter');
		}
	}

	if (valid)
		pElement.submit();
		
	
}

function processTitle(pElement) {

	if (pElement.options[6].selected) {
		locateElement('titleother').style.visibility = "visible";
	}
	else {
		locateElement('titleother').style.visibility = "hidden";
	}

}

function newcheckUserRegistrationForm(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'firstname';
	requiredFields[1] = 'lastname';
	requiredFields[2] = 'address1';
	requiredFields[3] = 'towncity';
	requiredFields[4] = 'countydistrict';
	requiredFields[5] = 'postzipcode';
	requiredFields[6] = 'telephone';
	requiredFields[7] = 'email';
	requiredFields[8] = 'email2';
	requiredFields[9] = 'password';
	requiredFields[10] = 'password2';
	
	if (valid) {
		if (locateElement('title')) {
			if (locateElement('title').options[0].selected) {
				valid = false;
				alert ('Please select a Title from the list.');
			}
		}	
	}
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid)
			alert ('Please enter details for all fields with BOLD titles');
	}
	
	if (valid) {
		if (locateElement('country')) {
			if (locateElement('country').options[0].selected) {
				valid = false;
				alert ('Please select a country from the list.');
			}
		}	
	}
	
	if (valid) {
		if (!reTestString.test(document.getElementById('email').value)) {
			alert('Please enter a valid email address');
			valid = false;
		}
	}
		
	if (valid) {
		if (locateElement('email').value != locateElement('email2').value) {
			valid = false;
			locateElement('email2').value = '';			
			alert ('Email values do not match, please check and re-enter');
		}
	}
	
	if (valid) {
		if (locateElement('password').value != locateElement('password2').value) {
				valid = false;
				locateElement('password').value = '';			
				locateElement('password2').value = '';
				alert ('Password values do not match, please re-enter');
		}
	}

	if (valid)
		pElement.submit();
		
	
}

function checkPaymentForm(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'cardnumber';
	requiredFields[1] = 'cardholder';
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid)
			alert ('Please enter details for all fields with BOLD titles');
	}
	
	if (valid) {
		if (locateElement('cardtype')) {
			if (locateElement('cardtype').options[0].selected) {
				valid = false;
				alert ('Please select a Card Type from the list.');
			}
		}	
	}

	if (valid) {
		if (locateElement('expirymonth')) {
			if (locateElement('expirymonth').options[0].selected) {
				valid = false;
				alert ('Please select a expiry month from the list.');
			}
		}	
	}
	
	if (valid) {
		if (locateElement('expiryyear')) {
			if (locateElement('expiryyear').options[0].selected) {
				valid = false;
				alert ('Please select a expiry year from the list.');
			}
		}	
	}
	
	if (valid && locateElement('cardtype').options[4].selected) {
		if (locateElement('startmonth').options[0].selected) {
			valid = false;
			alert ('Please select a start month for Switch Cards.');
		}
	}

	if (valid && locateElement('cardtype').options[4].selected) {
		if (locateElement('startyear').options[0].selected) {
			valid = false;
			alert ('Please select a start year for Switch Cards.');
		}
	}
	
	if (valid && locateElement('cardtype').options[4].selected) {
		if (locateElement('issueno').value.length ==0) {
			valid = false;
			alert ('Issue Number must be entered for Switch cards');
		}
	}
	
	if (valid)
		pElement.submit();
		
	
}

function checkDeliveryForm(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'delfirstname';
	requiredFields[1] = 'dellastname';
	requiredFields[2] = 'deladdress1';
	requiredFields[3] = 'deltowncity';
	requiredFields[4] = 'delcountydistrict';
	requiredFields[5] = 'delpostzipcode';
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid)
			alert ('Please enter details for all fields with BOLD titles');
	}
	
	if (valid) {
		if (locateElement('delcountry')) {
			if (locateElement('delcountry').options[0].selected) {
				valid = false;
				alert ('Please select a country from the list.');
			}
		}	
	}
	
	if (valid)
		pElement.submit();
		
	
}

function checkCardNumber(e) {

/* e		: Netscape Event Object (ignored by Internet Explorer */

	var returnValue = true
	oElement = document.getElementById('cardnumber');

	if (IE) {	
		if ((event.keyCode < 1 || event.keyCode > 32) && (event.keyCode != 42) && (event.keyCode != 46) && (event.keyCode < 48 || event.keyCode > 57)) {
			event.returnValue = false;
			returnValue = false;
		}
	}
	else {
		if ((e.which < 1 || e.which > 32) && (e.which != 42) && (e.which != 46) && (e.which < 48 || e.which > 57) && (e.which != 0)) {
			e.cancelBubble = true;
			returnValue = false;
		}
	}			
	
	if (document.getElementById('cardtype').selectedIndex != 4) {
		removeDash(oElement);
		addDash(oElement);
	}
	
	return returnValue;
}

function copyDetails() {

	if (locateElement('firstname') && locateElement('delfirstname'))
		locateElement('delfirstname').value = locateElement('firstname').value;

	if (locateElement('lastname') && locateElement('dellastname'))
		locateElement('dellastname').value = locateElement('lastname').value;

	if (locateElement('company') && locateElement('delcompany'))
		locateElement('delcompany').value = locateElement('company').value;
	
	if (locateElement('address1') && locateElement('deladdress1'))
		locateElement('deladdress1').value = locateElement('address1').value;
		
	if (locateElement('address2') && locateElement('deladdress2'))
		locateElement('deladdress2').value = locateElement('address2').value;
		
	if (locateElement('address3') && locateElement('deladdress3'))
		locateElement('deladdress3').value = locateElement('address3').value;
		
	if (locateElement('towncity') && locateElement('deltowncity'))
		locateElement('deltowncity').value = locateElement('towncity').value;

	if (locateElement('countydistrict') && locateElement('delcountydistrict'))
		locateElement('delcountydistrict').value = locateElement('countydistrict').value;

	if (locateElement('postzipcode') && locateElement('delpostzipcode'))
		locateElement('delpostzipcode').value = locateElement('postzipcode').value;
		
	if (locateElement('country') && locateElement('delcountry')) {

		for (i=0; i<(locateElement('delcountry').options.length); i+=1) {
			if (locateElement('delcountry').options[i].value == locateElement('country').value){
				locateElement('delcountry').options[i].selected = true;
			}
		}
	}

}

function checkShopNewAccount(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'email';
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid) {
			alert ('Please enter Email address to continue');
			valid = false;
		}
	}
	
	if (valid) {
		if (!reTestString.test(document.getElementById('email').value)) {
			alert('Please enter a valid email address');
			valid = false;
		}
	}

	
	
	if (valid) {
		pElement.action = 'https://www.racetechmag.com/secure/createnewaccount_process.asp';
		pElement.submit();
	}
		
	
}

function checkShopLogin(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'email';
	requiredFields[1] = 'password';
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid) {
			alert ('Please enter Email address and Password to login');
			valid = false;
		}
	}
	
	
	if (valid) {
		if (!reTestString.test(document.getElementById('email').value)) {
			alert('Please enter a valid email address');
			valid = false;
		}
	}
	
	
	if (valid) {
		pElement.action = 'https://www.racetechmag.com/secure/shoplogin_process.asp';
		pElement.submit();
	}
		
	
}

function checkOrderSearch(pElement) {

	var valid = true;
	var requiredFields =  new Array();
	
	requiredFields[0] = 'email';
	
	if (valid) {

		for (i=0; i<(requiredFields.length); i+=1) {
			if (locateElement(requiredFields[i])){
				if (locateElement(requiredFields[i]).value.length == 0) {
					valid = false;
				}
			}
		}
		
		if (!valid) {
			alert ('Please enter Email address');
			valid = false;
		}
	}
	
	if (valid) {
		if (!reTestString.test(document.getElementById('email').value)) {
			alert('Please enter a valid email address');
			valid = false;
		}
	}

	
	if (valid) {
		pElement.submit();
	}
		
	
}

function toggle() {

	var oElements = document.getElementsByName('toggle');

	for (i=0; i<(oElements.length); i+=1) {
		 if (oElements[i].style.display == 'none')
		 	oElements[i].style.display = 'block'
		 else
			oElements[i].style.display = 'none';
	}

}

function checkStatusChange(pElement) {

var newStatusValue;
var confirmAction = true;

for (i=0; i<(document.getElementById('newstatus').options.length); i+=1) {
	if (locateElement('newstatus').options[i].selected)
		newStatusValue = locateElement('newstatus').options[i].value;
}

if (document.getElementById('originalstatus').value != newStatusValue) {
	 if (document.getElementById('originalstatus').value == 0) {
	 	confirmAction = window.confirm ("Once this Status is changes, the credit card details will be lost. Continue?")
	 }
	 
	 if (document.getElementById('originalstatus').value != 0 && newStatusValue == 0) {
	 	confirmAction = false;
		alert ("You may not reopen an order.");
	 }
	 
	 if (confirmAction)
	 	pElement.submit();
}
else
	alert ("Order Status has not changed");

}
