// JavaScript Document
var isFormValid = false;
var webForm = '';
function validateReferFriendForm(){

	webForm = $('referFriendForm');
	
	resetFormFields();
	
	// in order
	valCompanyName();
	valUserName();
	valUserEmail();
	
	valFirstName();
	valLastName();
	valFriendEmail();
	
	valCaptcha();
	
	return isFormValid;

}
function validateReferEmployeeForm(){

	webForm = $('referFriendForm');
	
	resetFormFields();
	
	// in order
	valUserName();
	valUserEmail();
	
	valFirstName();
	valLastName();
	valFriendEmail();
	
	valCaptcha();
	
	return isFormValid;

}
function valCompanyName(){
	var fieldVal = $('coname').value;
	if (isEmpty(fieldVal)){
		$('coname-err').set('html','&laquo; Required');
		$('coname').addClass('form-err-field');
		isFormValid = false
	}
}
function valUserName(){
	var fieldVal = $('name').value;
	if (isEmpty(fieldVal)){
		$('name-err').set('html','&laquo; Required');
		$('name').addClass('form-err-field');
		isFormValid = false
	}
}
function valUserEmail(){
	var fieldVal = $('useremail').value;
	if (!isEmailValid(fieldVal)){
		$('useremail-err').set('html','&laquo; Required');
		$('useremail').addClass('form-err-field');
		isFormValid = false
	}
}

function valFirstName(){
	var fieldVal = $('firstname').value;
	if (isEmpty(fieldVal)){
		$('firstname-err').set('html','&laquo; Required');
		$('firstname').addClass('form-err-field');
		isFormValid = false
	}
}
function valLastName(){
	var fieldVal = $('lastname').value;
	if (isEmpty(fieldVal)){
		$('lastname-err').set('html','&laquo; Required');
		$('lastname').addClass('form-err-field');
		isFormValid = false
	}
}
function valFriendEmail(){
	var fieldVal = $('friendemail').value;
	if (!isEmailValid(fieldVal)){
		$('friendemail-err').set('html','&laquo; Required');
		$('friendemail').addClass('form-err-field');
		isFormValid = false
	}
}
function valCaptcha(){
	var fieldVal = $('captcha').value;	
	if (isEmpty(fieldVal)){
		$('captcha-err').set('html','&laquo; Required');
		$('captcha').addClass('form-err-field');
		isFormValid = false
	} else if (fieldVal != 8){
		$('captcha-err').set('html','&laquo; Incorrect Answer');
		$('captcha').addClass('form-err-field');
		isFormValid = false
	}
}


// util
function resetFormFields(){
	webForm.getElements('span[class=formfield-err]').set('html','');
	webForm.getElements('input').removeClass('form-err-field');
	isFormValid = true;
}
function isEmailValid(str){
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		   return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		   return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		   return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		   return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		   return false;
		 }
 		 return true;

}
function isEmpty(str){
		str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
		if (str == "" || str == null ){
			return true;	
		} else {
			return false;	
		}
}

// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;
function isPhoneNumber(str){

	if ((str==null)||(str=="")){return false;}
	if (checkInternationalPhone(str)==false){return false;}
	
	return true
}

// util
function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}