function doFillInLater()
{
	var $form				= document.getElementById('register');
	var $checkbox			= document.getElementById('fill_in_later');
	var $payPal 			= document.getElementById('payPal');
	var $shipsTo 			= document.getElementById('shipsTo');
	// var $preferredCurrency 	= document.getElementById('preferredCurrency');
	var $returnsPolicy 		= document.getElementById('returnsPolicy');

	//alert($checkbox);
	//alert($checkbox.checked);

	$payPal.disabled 				= $checkbox.checked;
	$shipsTo.disabled 				= $checkbox.checked;
	$preferredCurrency.disabled 	= $checkbox.checked;
	$returnsPolicy.disabled 		= $checkbox.checked;
	//document.click();
}

function VerifyUsername( obj ) {
		
		var validChars = /^([a-zA-Z0-9_]+)$/gi;
		return obj.value.match( validChars ) === null ? false : true;
	}

function checkForm()
{
	if (document.register.username.value == '' || VerifyUsername( document.register.username ) == false )
	{
		alert("You must select a username and it must not contain any spaces.");
		document.register.username.focus();
		document.register.username.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.username.style.borderColor = '';
	}

	if (document.register.password.value == '' || document.register.password.value != document.register.password2.value)
	{
		alert("Your passwords do not match or you have not supplied one.");
		document.register.password.focus();
		document.register.password.style.borderColor = 'red';
		document.register.password2.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.password.style.borderColor = '';
		document.register.password2.style.borderColor = '';
	}
	
	if (document.register.secretQuestion.value == '')
	{
		alert("You must select a secret question.");
		document.register.secretQuestion.focus();
		document.register.secretQuestion.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.secretAnswer.style.borderColor = '';
	}

	if (document.register.secretAnswer.value == '')
	{
		alert("You must supply an answer to your secret question.");
		document.register.secretAnswer.focus();
		document.register.secretAnswer.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.secretAnswer.style.borderColor = '';
	}

	if (document.getElementById('agreeTerms').checked == '')
	{
		alert("You must agree to our terms and conditions.");
		document.getElementById('agreeTerms').focus();
		document.getElementById('agreeTerms').style.borderColor = 'red';
		return false;
	}
	else
	{
		document.getElementById('agreeTerms').borderColor = '';
	}
	
	if (document.getElementById('over18').checked == '')
	{
		alert("Please confirm you are over 18 (or over 16 with consent of parent or guardian).");
		document.getElementById('over18').focus();
		document.getElementById('over18').style.borderColor = 'red';
		return false;
	}
	else
	{
		document.getElementById('agreeTerms').borderColor = '';
	}
	
	
	document.register.submit();
}



function checkSubmit()
{
	submit 		= document.getElementById('form_submit');
	agreeTerms 	= document.getElementById('agreeTerms');
	over18 		= document.getElementById('over18');
	
	// we no longer disable the submit button, we want popup alert instead...
	if (agreeTerms.checked && over18.checked)
	{
		//submit.disabled = true;
	}
	else
	{
		//submit.disabled = true;
	}
}

function VerifyCharacters(event, objInput) {
  var strText = objInput.value;
  var keyCode = event.keyCode||event.charCode;
  var arrSpecialChars = new Array(95,95,9);
  
  if (InArray(arrSpecialChars, keyCode) >= 0)
  {
	  return true;
  }
  // backspace
  if(keyCode == 8 )
	  return true;

  //numbers
  if (keyCode >= 48 && keyCode <= 59)
  {
	return true;
  }
  // lower
  if (keyCode >= 97 && keyCode <= 122 )
  {
	return true;
  }
  //upper
  if (keyCode >= 65 && keyCode <= 90 )
  {
	return true;
  }
  var strChar = String.fromCharCode(keyCode);
  alert('You have typed an illegal character "'+strChar+'" which is not allowed in the username field');
  return false;
}

function InArray(arr, key) {
  for (var i=0; i<arr.length; i++) {
	  if (arr[i] == key)
		  return i;
  }
  return -1;
}






function checkForm1()
{
	if (document.register.username.value == '' || VerifyUsername( document.register.username ) == false )
	{
		alert("You must select a username and it must not contain any spaces.");
		document.register.username.focus();
		document.register.username.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.username.style.borderColor = '';
	}

	if (document.register.password.value == '' || document.register.password.value != document.register.password2.value)
	{
		alert("Your passwords do not match or you have not supplied one.");
		document.register.password.focus();
		document.register.password.style.borderColor = 'red';
		document.register.password2.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.password.style.borderColor = '';
		document.register.password2.style.borderColor = '';
	}

	if (document.register.secretAnswer.value == '')
	{
		alert("You must supply an answer to your secret question.");
		document.register.secretAnswer.focus();
		document.register.secretAnswer.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.secretAnswer.style.borderColor = '';
	}

	
	$('#reg1').hide();
	$('#reg2').show();
}



function GetSelectedItem() {

chosen = "none"
len = document.register.business.length

for (i = 0; i <len; i++) {
if (document.register.business[i].checked) {
chosen = document.register.business[i].value
}
}



}

function checkForm2()
{
	

	if (document.register.firstname.value == '')
	{
		alert("You must supply a forename.");
		document.register.firstname.focus();
		document.register.firstname.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.firstname.style.borderColor = '';
	}

	if (document.register.surname.value == '')
	{
		alert("You must supply a surname.");
		document.register.surname.focus();
		document.register.surname.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.surname.style.borderColor = '';
	}
	if (document.register.gender.value == '')
	{
		alert("You must supply a gender.");
		document.register.gender.focus();
		document.register.gender.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.gender.style.borderColor = '';
	}

	if (document.register.address.value == '')
	{
		alert("You must supply an address.");
		document.register.address.focus();
		document.register.address.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.address.style.borderColor = '';
	}

	if (document.register.town.value == '')
	{
		alert("You must supply a town.");
		document.register.town.focus();
		document.register.town.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.town.style.borderColor = '';
	}
	if (document.register.county.value == '')
	{
		alert("You must supply a county.");
		document.register.county.focus();
		document.register.county.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.county.style.borderColor = '';
	}

	if (document.register.postcode.value == '')
	{
		alert("You must supply a postcode.");
		document.register.postcode.focus();
		document.register.postcode.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.postcode.style.borderColor = '';
	}
	
	if (document.register.country.value == '')
	{
		alert("You must select a country.");
		document.register.country.focus();
		document.register.country.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.country.style.borderColor = '';
	}
	
	
	if (document.register.email.value == '' || document.register.email.value != document.register.emailConfirm.value)
	{
		alert("Your email addresses do not match or you have not supplied one.");
		document.register.email.focus();
		document.register.email.style.borderColor = 'red';
		document.register.emailConfirm.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.email.style.borderColor = '';
		document.register.emailConfirm.style.borderColor = '';
	}

	if (document.register.phone.value == '')
	{
		alert("You must supply a phone number.");
		document.register.phone.focus();
		document.register.phone.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.phone.style.borderColor = '';
	}

	if (chosen == "yes") {
		
  if (document.register.companyName.value == '')
	{
		alert("You must supply a company name.");
		document.register.companyName.focus();
		document.register.companyName.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.companyName.style.borderColor = '';
	}
	

	}
	

}



function checkForm3()
{
	
	$('#reg3').hide();
	$('#reg4').show();
}


function checkForm4()
{
	
	
	//Popup if required check
	agreeTerms 	= document.getElementById('agreeTerms');
	over18 		= document.getElementById('over18');
	
	if (!agreeTerms.checked)
	{
		document.register.agreeTerms.style.borderColor = 'red';
		alert('You must agree to the terms and conditions' );
		return false;
	}
	
	if (!over18.checked)
	{
		document.register.over18.style.borderColor = 'red';
		alert('You must state that you are over 18' );
		return false;
	}
	
	if (document.register.payPal.value != document.register.payPalconfirm.value)
	{
		document.register.payPal.focus();
		document.register.payPal.style.borderColor = 'red';
		document.register.payPalconfirm.style.borderColor = 'red';
		alert('Your paypal email addresses do not match.');
		
		return false;
	}
	
	
	document.register.submit();
}

function checkForm5()
{
	if (document.register.username.value == '' || VerifyUsername( document.register.username ) == false )
	{
		alert("You must select a username and it must not contain any spaces.");
		document.register.username.focus();
		document.register.username.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.username.style.borderColor = '';
	}

	if (document.register.password.value == '' || document.register.password.value != document.register.password2.value)
	{
		alert("Your passwords do not match or you have not supplied one.");
		document.register.password.focus();
		document.register.password.style.borderColor = 'red';
		document.register.password2.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.password.style.borderColor = '';
		document.register.password2.style.borderColor = '';
	}

	if (document.register.secretAnswer.value == '')
	{
		alert("You must supply an answer to your secret question.");
		document.register.secretAnswer.focus();
		document.register.secretAnswer.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.secretAnswer.style.borderColor = '';
	}
	if (document.register.firstname.value == '')
	{
		alert("You must supply a forename.");
		document.register.firstname.focus();
		document.register.firstname.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.firstname.style.borderColor = '';
	}

	if (document.register.surname.value == '')
	{
		alert("You must supply a surname.");
		document.register.surname.focus();
		document.register.surname.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.surname.style.borderColor = '';
	}

	if (document.register.address.value == '')
	{
		alert("You must supply an address.");
		document.register.address.focus();
		document.register.address.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.address.style.borderColor = '';
	}
if (document.register.town.value == '')
	{
		alert("You must supply a Town/City.");
		document.register.town.focus();
		document.register.town.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.town.style.borderColor = '';
	}
	if (document.register.county.value == '')
	{
		alert("You must supply an address.");
		document.register.county.focus();
		document.register.county.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.county.style.borderColor = '';
	}
	if (document.register.postcode.value == '')
	{
		alert("You must supply a postcode.");
		document.register.postcode.focus();
		document.register.postcode.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.postcode.style.borderColor = '';
	}
	if (document.register.postcode.value == '')
	{
		alert("You must supply a postcode.");
		document.register.postcode.focus();
		document.register.postcode.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.postcode.style.borderColor = '';
	}

	if (document.register.phone.value == '')
	{
		alert("You must supply a phone number.");
		document.register.phone.focus();
		document.register.phone.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.phone.style.borderColor = '';
	}

	if (document.register.email.value == '' || document.register.email.value != document.register.emailConfirm.value)
	{
		alert("Your email addresses do not match or you have not supplied one.");
		document.register.email.focus();
		document.register.email.style.borderColor = 'red';
		document.register.emailConfirm.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.email.style.borderColor = '';
		document.register.emailConfirm.style.borderColor = '';
	}
	//Popup if required check
	agreeTerms 	= document.getElementById('agreeTerms');
	over18 		= document.getElementById('over18');
	
	if (!agreeTerms.checked)
	{
		document.register.agreeTerms.style.borderColor = 'red';
		alert('You must agree to the terms and conditions' );
		return false;
	}
	
	if (!over18.checked)
	{
		document.register.over18.style.borderColor = 'red';
		alert('You must state that you are over 18' );
		return false;
	}
	
	if (document.register.payPal.value != document.register.payPalconfirm.value)
	{
		document.register.payPal.focus();
		document.register.payPal.style.borderColor = 'red';
		document.register.payPalconfirm.style.borderColor = 'red';
		alert('Your paypal email addresses do not match.');
		
		return false;
	}
	
	
	document.register.submit();
}

function checkForm6()
{


if (document.register.referrerID.value == '')
	{
		document.register.referrerID.focus();
		document.register.referrerID.style.borderColor = 'red';
		
		alert('Please tell us where you heard about us.');
		
		return false;
	}
	agreeTerms 	= document.getElementById('agreeTerms');
	over18 		= document.getElementById('over18');
	
	if (!agreeTerms.checked)
	{
		document.register.agreeTerms.style.borderColor = 'red';
		alert('You must agree to the terms and conditions' );
		return false;
	}
	
	if (!over18.checked)
	{
		document.register.over18.style.borderColor = 'red';
		alert('You must state that you are over 18' );
		return false;
	}
document.register.submit();
}


function spare() {
	
	if (document.register.firstname.value == '')
	{
		alert("You must supply a forename.");
		document.register.firstname.focus();
		document.register.firstname.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.firstname.style.borderColor = '';
	}

	if (document.register.surname.value == '')
	{
		alert("You must supply a surname.");
		document.register.surname.focus();
		document.register.surname.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.surname.style.borderColor = '';
	}

	if (document.register.address.value == '')
	{
		alert("You must supply an address.");
		document.register.address.focus();
		document.register.address.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.address.style.borderColor = '';
	}
	if (document.register.town.value == '')
	{
		alert("You must supply a Town/City.");
		document.register.town.focus();
		document.register.town.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.town.style.borderColor = '';
	}
	if (document.register.county.value == '')
	{
		alert("You must supply an address.");
		document.register.county.focus();
		document.register.county.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.county.style.borderColor = '';
	}
	if (document.register.postcode.value == '')
	{
		alert("You must supply a postcode.");
		document.register.postcode.focus();
		document.register.postcode.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.postcode.style.borderColor = '';
	}

	if (document.register.phone.value == '')
	{
		alert("You must supply a phone number.");
		document.register.phone.focus();
		document.register.phone.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.phone.style.borderColor = '';
	}

	if (document.register.email.value == '' || document.register.email.value != document.register.emailConfirm.value)
	{
		alert("Your email addresses do not match or you have not supplied one.");
		document.register.email.focus();
		document.register.email.style.borderColor = 'red';
		document.register.emailConfirm.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.email.style.borderColor = '';
		document.register.emailConfirm.style.borderColor = '';
	}

	if (document.register.referrerDetails.value == '' && document.register.referrerID.selectedIndex == 0)
	{
		alert("Please supply details on how you found this site.");
		document.register.referrerID.focus();
		document.register.referrerID.style.borderColor = 'red';
		document.register.referrerDetails.style.borderColor = 'red';
		return false;
	}
	else
	{
		document.register.referrerID.style.borderColor = 'red';
		document.register.referrerDetails.style.borderColor = '';
	}
	
	if (document.register.country.selectedIndex == 0)
	{
		alert('You must select a country');
		document.register.country.style.borderColor = 'red';
		document.register.country.focus();
		
		return false;
	}
	
}
