// Check for spaces
function checkSpace(str){
	
	if(str.match(" ") == null){
		return true;
	}else{
		return false;
	}
	
}

function checkInvalidChars(str){
	  
	  var iChars = "%^+=[]\\\';/|\":<>?";
	  
	  for (var i = 0; i < str.length; i++) {
		  
			if (iChars.indexOf(str.charAt(i)) != -1) {		
				return false;
			}
		
	  }
	  
	  return true;
	
}

// Validate Registration
function validateRegister(){	
	
	var valid = true;

	var email = document.getElementById("registerEmail");
	var pass = document.getElementById("registerPass");
	var passConfirm = document.getElementById("registerConfirm");
	var salutation = document.getElementById("registerSalutation");
	var name = document.getElementById("registerName");
	var company = document.getElementById("registerCompany");
	var town = document.getElementById("registerTown");
	var country = document.getElementById("registerCountry"); 
	var phone = document.getElementById("registerPhone");
	var otherCheck = document.getElementById("registerOtherCheck");
	var otherText = document.getElementById("registerOtherText");
	
	var validEmailBool = isValidEmail(email.value) && checkSpace(email.value) && checkInvalidChars(email.value);
	var validPassBool = (pass.value.length > 5) && checkInvalidChars(pass.value);
	var validPassMatchBool = (pass.value == passConfirm.value);
	var validSalutationBool = !(salutation.options[salutation.selectedIndex].value == "false");
	var validNameBool = (name.value.length > 0) && checkInvalidChars(name.value);
	var validCompanyBool = checkInvalidChars(company.value);
	var validTownBool = (town.value.length > 0) && checkInvalidChars(town.value);
	var validCountryBool = !(country.options[country.selectedIndex].value == "false");
	var validPhoneBool = checkInvalidChars(phone.value);
	var checkedOtherBool = otherCheck.checked;
	var validOtherTextBool = (otherText.value.length > 0) && checkInvalidChars(otherText.value);	
		
	if(!validEmailBool){
		valid = false;		
		document.getElementById('registerErrorEmail').style.visibility = "visible";				
	}else{				
		document.getElementById('registerErrorEmail').style.visibility = "hidden";			
	}	

	if(!validPassBool){
		valid = false;		
		document.getElementById('registerErrorPass').style.visibility = "visible";
	}else{	
		document.getElementById('registerErrorPass').style.visibility = "hidden";	
	}
	
	if(!validPassMatchBool){
		valid = false;		
		document.getElementById('registerErrorConfirm').style.visibility = "visible";
	}else{	
		document.getElementById('registerErrorConfirm').style.visibility = "hidden";
	}	
	
	if(!validSalutationBool){
		valid = false;		
		document.getElementById('registerErrorSalutation').style.visibility = "visible";
	}else{		
		document.getElementById('registerErrorSalutation').style.visibility = "hidden";
	}	
	
	if(!validNameBool){
		valid = false;		
		document.getElementById('registerErrorName').style.visibility = "visible";
	}else{		
		document.getElementById('registerErrorName').style.visibility = "hidden";
	}
	
	if(!validCompanyBool){
		valid = false;		
		document.getElementById('registerErrorCompany').style.visibility = "visible";
	}else{		
		document.getElementById('registerErrorCompany').style.visibility = "hidden";
	}
	
	if(!validTownBool){
		valid = false;		
		document.getElementById('registerErrorTown').style.visibility = "visible";
	}else{		
		document.getElementById('registerErrorTown').style.visibility = "hidden";
	}
	
	if(!validCountryBool){
		valid = false;		
		document.getElementById('registerErrorCountry').style.visibility = "visible";
	}else{		
		document.getElementById('registerErrorCountry').style.visibility = "hidden";
	}
	
	if(!validPhoneBool){
		valid = false;		
		document.getElementById('registerErrorPhone').style.visibility = "visible";
	}else{		
		document.getElementById('registerErrorPhone').style.visibility = "hidden";
	}
	
	if(checkedOtherBool && !validOtherTextBool){
		valid = false;		
		document.getElementById('registerErrorOther').style.visibility = "visible";
	}else{
		document.getElementById('registerErrorOther').style.visibility = "hidden";
	}		
	
	if(valid){
		document.getElementById("registerForm").submit();
	}	
	
	
}
