var origBorder = "1px solid #7F9DB9";
var strErrorBorder = "1px solid red";

// Checks that given string is valid as email address
function checkEmail(email){
  var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
  if (filter.test(email)) return true;
  else return false;
}
	 
// Validate user input
function validateUserInput() {

   var elemName= document.getElementById("txtname");
   var elemEmail = document.getElementById("txtemail");
   var elemTelephone= document.getElementById("txttelephone");
   
   var boolError = false;
   var strError = "";
   
   var vEmail = elemEmail.value;
   var vTelephone = elemTelephone.value;
   var vName = elemName.value;

   elemName.style.border = origBorder;
   elemEmail.style.border = origBorder;
   elemTelephone.style.border = origBorder;
		   
	// Trim white-space
   vName = Trim(vName);
   vEmail = Trim(vEmail);
   vTelephone = Trim(vTelephone);
		   
	// Run validation
   if(vName.length < 3) {
		  
		strError += "Please fill in your name\n";              
		elemName.style.border = strErrorBorder;
		boolError = true;
   }

   if(vEmail.length > 0 && !checkEmail(vEmail)) {
		strError += "Please fill in a VALID email address\n";
		elemEmail.style.border = strErrorBorder;
		boolError = true;
   } 
   
   if(vEmail.length == 0 && vTelephone.length == 0) {
		strError += "Please fill in email or telephone number\n";            
		elemEmail.style.border = strErrorBorder;
		elemTelephone.style.border = strErrorBorder;
		boolError = true;
   }
		   
   if( boolError ) {
	   alert ( strError );
	return ! boolError; 
   } else {
	   document.getElementById("con_form").submit();
   }
			
}

function checkFileExtension(file) {
	var extArr = Array('doc', 'docx', 'pdf', 'rtf', 'wps');
	var fileArr = file.split('.');
	var index = fileArr.length-1;
	var ext = fileArr[index];
	
	var valid = false;
	for(i=0; i<extArr.length; i++) {
		if(extArr[i] == ext) valid = true;
	}
	return valid;
}

function validateUserInput2() {
   var elemName= document.getElementById("regname");
   var elemEmail = document.getElementById("regemail");
   var elemTelephone= document.getElementById("regtelephone");
   var elemCv = document.getElementById("regcv");

   var boolError = false;
   var strError = "";
   
   var vEmail = elemEmail.value;
   var vTelephone = elemTelephone.value;
   var vName = elemName.value;
   var vCv = elemCv.value;

   elemName.style.border = origBorder;
   elemEmail.style.border = origBorder;
   elemTelephone.style.border = origBorder;
   elemCv.style.border = origBorder;
   
	// Trim white-space
   vName = Trim(vName);
   vEmail = Trim(vEmail);
   vTelephone = Trim(vTelephone);
   vCv = Trim(vCv);
   
	// Run validation
   if(vName.length < 3) {
		strError += "Please fill in your name\n";              
		elemName.style.border = strErrorBorder;
		boolError = true;
   }

   if(vEmail.length > 0 && !checkEmail(vEmail)) {
		strError += "Please fill in a VALID email address\n";
		elemEmail.style.border = strErrorBorder;
		boolError = true;
   } 
   
   if(vEmail.length == 0 && vTelephone.length == 0) {
		strError += "Please fill in email or telephone number\n";            
		elemEmail.style.border = strErrorBorder;
		elemTelephone.style.border = strErrorBorder;
		boolError = true;
   }
   
   if(vCv.length == 0) { 
		strError += "You must upload your CV\n";    
		elemCv.style.border = strErrorBorder;
		boolError = true;
   }
   if(!checkFileExtension(vCv)) {
		strError += "Your CV must be of a valid file type\n";    
		elemCv.style.border = strErrorBorder;
		boolError = true;
   }
   
   if( boolError ) {
	   alert ( strError );
	   return false;
   } else {
	   document.getElementById("form1").submit();
	   return false;
   }
}

// Trim functions
function Trim(TRIM_VALUE) {
	if(TRIM_VALUE.length < 1) return "";
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE=="")return "";
	else return TRIM_VALUE;
}

function RTrim(VALUE) {
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	
	if(v_length < 0) return "";
	var iTemp = v_length -1;
 
	while(iTemp > -1) {
		if(!(VALUE.charAt(iTemp) == w_space)) {
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;
	}
	return strTemp;
}
	 
function LTrim(VALUE) {
	var w_space = String.fromCharCode(32);
	if(v_length < 1) return"";
	var v_length = VALUE.length;
	var strTemp = "";
	var iTemp = 0;
 
	while(iTemp < v_length) {
		if(VALUE.charAt(iTemp) == w_space){
		}
		else{
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
		iTemp = iTemp + 1;
	}
	return strTemp;
}