/*					   * AUTHOR    		-   Ravichandran J
  					   * DATE	   		-   12-Jan-2009-2:00 PM
 					   * UPDATED BY 	-	Varadharajan.S
					   * UPDATED DATE	-   21-Jan-2009-10:00 AM
					   * TITLE     		-   Validation file for the contact form
 					   * NAME      		-	
					   * PARAM     		-	
  					   * DESC      		-	  
					   					
*/


/* Validation Function */

function formValidation(Form){

	var fieldArray = new Array("Full Name","Company Name",'', '', '', '', "Telephone No.",'', '', "Nature of Enquiry",'');
	var validationArray = new Array("","",'', '', '', '', "phone",'mobile', 'E-mail Address','');

	var len = document.forms[0].elements.length - 1;
	
		for (i=0; i < len; i++)
   		{
			 if((trim(document.getElementById("field"+i).value) == fieldArray[i] || trim(document.getElementById("field"+i).value) == "") && fieldArray[i] != ""){
				strVal = fieldArray[i];
				alert("Please enter the "+strVal);
				document.getElementById("field"+i).value = fieldArray[i];
				document.getElementById("field"+i).focus();
				return false;
		     	}
			else if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value) )){
				strVal = fieldArray[i];
				if(i == '8')strVal = 'E-mail Address';
				if(i == '7')strVal = 'Mobile No.';
				alert("Please enter the valid "+strVal);
				document.getElementById("field"+i).value = '';
				document.getElementById("field"+i).focus();
				return false;
			}else if(trim(document.getElementById("field"+i).value) == "" && fieldArray[i] == ""){
				document.getElementById("field"+i).value = '';
			}
		}
	return true;
		
}

/* Call Focus Function */

function callFocus(value, i){
	var fieldArray = new Array("Full Name","Company Name","Address", "Town", "Country", "Postal Code", "Telephone No.", "Mobile No.", "E-mail Address", "Nature of Enquiry", "Additional Information");
	if(value == fieldArray[i]){
		document.getElementById('field'+i).value = '';
	}
}

/* On Blur Event Function */

function callBlur(value, i){ 
	var fieldArray = new Array("Full Name","Company Name","Address", "Town", "Country", "Postal Code", "Telephone No.", "Mobile No.", "E-mail Address", "Nature of Enquiry", "Additional Information");
	if(value == ''){
		document.getElementById('field'+i).value = fieldArray[i];
	}
	
}

/* Advance validation Function */

function applyValidation(arr_val, field_val ){ 
			
	if(arr_val == "phone"){ 
			if(field_val != ""){ 
				 if(isPhone(field_val)){	
					return false;
				 }else{
					return true;
				}
			}
		  
	}
	if(arr_val == "mobile"){ 
		if(field_val != "" && field_val != "Mobile No."){ 
			 if(isPhone(field_val)){	
				return false;
			 }else{
				return true;
			}
		}
	  
}
	if(arr_val == "E-mail Address"){ 
		if(field_val != ""){ 
			 if(isEmail(field_val)){	
				return false;
			 }else{
				return true;
			}
		}
	  
}
			
}

/* Trim Function */

function trim(str){
	return str.replace(/^\s+|\s+$/g,'');
}

/* Email validation function */

function isEmail(objField){

	if(objField != 0 && objField != 'E-mail Address'){ 
		if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(objField)){ 
			return true;
		}
	}else{
			return true;
	}
	
}

/* Phone validation function */
/*	
 * AUTHOR    -    Varadharajan S
 * DATE		 -    20-Jan-2009-12:00 PM
 * TITLE     -    Validation for the contact form Phone field
 * NAME      -	
 * PARAM     -	  Phonenumber
 * DESC      -	  
 					
*/
function isPhone(objField){

	if(objField != 0){ 
		//var phone2 = /^(\+\d)*\s*(\(\d{3}\)\s*)*\d{3}(-{0,1}|\s{0,1})\d{2}(-{0,1}|\s{0,1})\d{2}$/; 
		var phone2 = /^[+0-9\(][-0-9 \(\)]{5,18}$/i;
		if (objField.match(phone2)) {
				return true;
			}
		}else{
				return false;
		}
	
	}

/* Location validation function */
function isLoc(objField){

	if(objField != 0){ 
	var phone2 = /^(\+\d)*\s*(\(\d{3}\)\s*)*\d{3}(-{0,1}|\s{0,1})\d{2}(-{0,1}|\s{0,1})\d{2}$/; 
	if (objField.match(phone2)) {

			return true;
		}
	}else{
			return false;
	}
	
}
function textCounter(field,cntfield,maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else
cntfield.value = maxlimit - field.value.length;
}

