/*					   
 	* AUTHOR    -    Varadharajan S
	* DATE	   	-    21st Jan, 2009 10:00 AM
	* TITLE     -    Validation file for the form pages
*/


/* Validation Function */
/*					   
 	* AUTHOR    	-	Varadharajan S
	* DATE	   		-   21st Jan, 2009 10:00 AM
	* TITLE    		-   Validation for the exibitor download form
 	* FUNCTION NAME -	validateExibitor	
	* PARAM     	-	Array
  	* DESC      	-	Get the form field values and check the mandatory fields for null value 
  	* 					and validate data for required fields   
					   					
*/
function validateExibitor(Form){

	var fieldArray = new Array('Title','First Name','Family Name','Job Title','Company','Street 1','Street 2','Post code','City','Country','Country Code','STD Code','Telephone','Country Code','STD Code','Mobile','Country Code','STD Code','Fax','Email','Website','Business Activity','Stand Requirement','Interest');
	var validationArray = new Array('','Name','Name','','','','','','Place','','CPhone','Phone','Phone','CPhone','Phone','Phone','CPhone','Phone','Phone','Email','','','Number','');
	var flag = 0;
	var k = 0;
	var freefieldsarray = [6, 7, 10, 11, 13, 14, 15, 16, 17,20];
	var invalidatearray = [10, 11, 12, 13, 14, 15, 16, 17, 18];
	var selectsarry = [0,9,21];
	var len = document.forms[0].elements.length - 1;
	document.getElementById("err_field15").innerHTML = "";	
		for (i=0; i <= len; i++)
   		{
			if (!in_array(i,freefieldsarray)){
				document.getElementById("err_field"+i).innerHTML ="";
				if(trim(document.getElementById("field"+i).value) == ""){
					strVal = fieldArray[i];
					if (in_array(i,selectsarry)){
						document.getElementById("err_field"+i).innerHTML = "Please select the "+strVal;
					}else{
						document.getElementById("field"+i).value = '';
						document.getElementById("err_field"+i).innerHTML = "Please enter the "+strVal;
					}
					flag = 1;
			     }else if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value))){
					strVal = fieldArray[i];
					document.getElementById("err_field"+i).innerHTML = "Please enter valid "+strVal;
					flag = 1;
				}
			}
		}
		for (i=0; i < len; i++)
   		{
			if (in_array(i,invalidatearray)){
				if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value))){
					if(i == "10" || i == "11" || i == "12"){
						k = "12";
					}else if(i == "16"|| i == "17" || i == "18"){
						k = "18";
					}else{
						k = "15";
					}
					strVal = fieldArray[k];
					document.getElementById("err_field"+k).innerHTML = "Please enter valid "+strVal;
					flag = 1;
				}
			}
   		}
		if(flag == 1)
			return false;
		else
			return true;
	return false;
}

/* Validation Function */
/*					   
 	* AUTHOR    	-	Varadharajan S
	* DATE	   		-   21st Jan, 2009 10:00 AM
	* TITLE    		-   Validation for the exibitor download form
 	* FUNCTION NAME -	validateVisitor	
	* PARAM     	-	Array
  	* DESC      	-	Get the form field values and check the mandatory fields for null value 
  	* 					and validate data for required fields   
					   					
*/
function validateVisitor(Form){

	var fieldArray = new Array('Title','Name','Designation','Company Name','Address','City','Country','Country Code','STD Code','Telephone','Country Code','STD Code','Fax','Email','Website','Business Activity','Other','Status of your Visit','How you know MENOPE', 'Other');
	var validationArray = new Array('','Name','','','','Place','','CPhone','Phone','Phone','CPhone','Phone','Phone','Email','','','','','');
	var flag = 0;
	var k = 0;
	var freefieldsarray = [7, 8, 10, 11, 12, 14, 16, 19];
	var invalidatearray = [7, 8, 9, 10, 11, 12];
	var selectsarry = [0,6,15,17,18];
	var noprefxarry = [18];
	var len = document.forms[0].elements.length - 1;
	document.getElementById("err_field12").innerHTML = "";
	document.getElementById("err_field16").innerHTML = "";
	document.getElementById("err_field19").innerHTML = "";
		for (i=0; i <= len; i++)
   		{
			if (!in_array(i,freefieldsarray)){
				document.getElementById("err_field"+i).innerHTML ="";
				if(trim(document.getElementById("field"+i).value) == ""){
					strVal = fieldArray[i];
					if (in_array(i,selectsarry)){
						document.getElementById("err_field"+i).innerHTML = "Please select the "+strVal;
					}else if(in_array(i,noprefxarry)){
						document.getElementById("field"+i).value = '';
						document.getElementById("err_field"+i).innerHTML = "Please enter the "+strVal;
					}else{
						document.getElementById("field"+i).value = '';
						document.getElementById("err_field"+i).innerHTML = "Please enter the "+strVal;
					}
					flag = 1;
			     }
				
				else if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value))){
					strVal = fieldArray[i];
					document.getElementById("err_field"+i).innerHTML = "Please enter valid "+strVal;
					flag = 1;
				}
			}
		}
		for (i=0; i < len; i++)
   		{
			if (in_array(i,invalidatearray)){
				if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value))){
					if(i == "7" || i == "8" || i == "9"){
						k = "9";
					}else{
						k = "12";
					}
					strVal = fieldArray[k];
					document.getElementById("err_field"+k).innerHTML = "Please enter valid "+strVal;
					flag = 1;
				}
			}
   		}
		if(trim(document.getElementById("field15").value) == "Others" && trim(document.getElementById("field16").value) == ""){
			document.getElementById("field16").value = '';
			document.getElementById("err_field16").innerHTML = "Please enter the Business Activity";
			flag = 1
		}
		if(trim(document.getElementById("field18").value) == "Others" && trim(document.getElementById("field19").value) == ""){
			document.getElementById("field19").value = '';
			document.getElementById("err_field19").innerHTML = "Please enter the How you know MENOPE";
			flag = 1
		}
		if(flag == 1)
			return false;
		else
			return true;
	return false;
}

/* Validation Function */
/*					   
 	* AUTHOR    	-	Varadharajan S
	* DATE	   		-   28th Jan, 2009 11:50 AM
	* TITLE    		-   Validation for the buyer seller programme form
 	* FUNCTION NAME -	validateBuyer	
	* PARAM     	-	Array
  	* DESC      	-	Get the form field values and check the mandatory fields for null value 
  	* 					and validate data for required fields   
					   					
*/
function validateBuyer(Form){

	var fieldArray = new Array('Title','First Name','Middle Name','Last Name','Designation','Company','Address','Address 1','City','State','Postal code','Country','Country Code','','Phone','Country Code','STD Code','Fax','Country Code','STD Code','Cell Phone','Email','Business Activity');
	var validationArray = new Array('','Name','Name','Name','','','','','Place','Place','','','CPhone','','Phone','CPhone','Phone','Phone','CPhone','Phone','Phone','Email','');
	var flag = 0;
	var k = 0;
	var freefieldsarray = [2, 7, 8, 9, 10, 15, 16, 17, 18, 19, 20];
	var invalidatearray = [2,15, 16, 17, 18, 19, 20];
	var invalidatearray = [2, 8, 9, 15, 16, 17, 18, 19, 20];
	var selectsarry = [0, 11, 22];
	var len = document.forms[0].elements.length - 14;
	document.getElementById("err_field2").innerHTML ="";
	document.getElementById("err_field8").innerHTML ="";
	document.getElementById("err_field9").innerHTML ="";
	document.getElementById("err_field14").innerHTML ="";
	document.getElementById("err_field17").innerHTML ="";
	document.getElementById("err_field20").innerHTML ="";
	document.getElementById("err_field23").innerHTML ="";
	document.getElementById("err_field35").innerHTML ="";
		for (i=0; i <= len; i++)
   		{
			if (!in_array(i,freefieldsarray)){
				if(i == '12' || i == '13' || i == '14'){
					k='14';
				}else{
					k = i;
					document.getElementById("err_field"+i).innerHTML ="";
				}	
				if(trim(document.getElementById("field"+i).value) == ""){
					strVal = fieldArray[i];
					
					if (in_array(i,selectsarry)){
						document.getElementById("err_field"+k).innerHTML = "Please select the "+strVal;
					}else{
						document.getElementById("field"+i).value = '';
						document.getElementById("err_field"+k).innerHTML = "Please enter the "+strVal;
					}
					flag = 1;
			     }else if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value))){
					strVal = fieldArray[i];
					document.getElementById("err_field"+k).innerHTML = "Please enter valid "+strVal;
					flag = 1;
				}
			}
		}
		for (i=0; i < len; i++)
   		{
			if (in_array(i,invalidatearray)){
				if(i == "15" || i == "16" || i == "17"){
					k = "17";
				}else if(i == "18"|| i == "19" || i == "20"){
					k = "20";
				}else{
					k = i;
				}
				//document.getElementById("err_field"+k).innerHTML ="";
				if(applyValidation(validationArray[i],trim(document.getElementById("field"+i).value))){
					strVal = fieldArray[k];
					document.getElementById("err_field"+k).innerHTML = "Please enter valid "+strVal;
					flag = 1;
				}
			}
   		}
		if(trim(document.getElementById("field22").value) == "Others" && trim(document.getElementById("field23").value) == ""){
			document.getElementById("field23").value = '';
			document.getElementById("err_field23").innerHTML = "Please enter Business Activity";
			flag = 1;
		}
		
		if(document.getElementById("field34").checked == true && trim(document.getElementById("field35").value) == ""){
			document.getElementById("field35").value = '';
			document.getElementById("err_field35").innerHTML = "Please enter Product Category";
			flag = 1;
		}
		if(flag == 1)
			return false;
		else
			return true;
	return false;
}


/* 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 == "Number" || arr_val == "CPhone"){ 
		if(field_val != ""){ 
			 if(isNaN(field_val)){	
				return true;
			 }else{
				return false;
			}
		}
		  
	}else if(arr_val == "Phone"){ 
		if(field_val != ""){
			 if(isPhone2(field_val)){	
				return false;
			 }else{
				return true;
			}
		}
	  
	}else if(arr_val == "Name"){ 
		if(field_val != ""){
			 if(isName(field_val)){	
				return false;
			 }else{
				return true;
			}
		}
	  
	}else if(arr_val == "Email"){ 
		if(field_val != ""){ 
			 if(isEmail(field_val)){	
				return false;
			 }else{
				return true;
			}
		}
	  
	}else if(arr_val == "Place"){ 
		if(field_val != ""){ 
			 if(isPlace(field_val)){	
				return false;
			 }else{
				return true;
			}
		}
	  
	}else{return false}
			
}

/* Trim Function */

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

/* Email validation function */

function isEmail(objField){

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

/* Phone validation function */
/*	
 * AUTHOR    -    Varadharajan S
 * DATE		 -    21-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;
	}
	
}
/* Name validation function */
function isName(elem){
	//var alphaExp = /^[a-zA-Z][ a-zA-Z]+$/;
	var alphaExp = /^[a-zA-Z][ .a-zA-Z]{0,60}$/i;
	if(elem.match(alphaExp)){
		return true;
	}else{		
		return false;
	}
}

/* Name validation function */
function isPlace(elem){
	var alphaExp = /^[a-zA-Z][ a-zA-Z\-,]+$/;
	if(elem.match(alphaExp)){
		return true;
	}else{		
		return false;
	}
}

function isPhone2(elem){
	//var alphaExp = /^[a-zA-Z][ a-zA-Z]+$/;
	var alphaExp = /^[1-9][0-9]{0,10}$/i;
	if(elem.match(alphaExp)){
		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;
}
/* Check element in an array function*/
function in_array( what, where ){
    var a=false;
    for(var i=0;i<where.length;i++){
    	if(what == where[i]){
    		a=true;
    		break;
    	}
    }
    return a;
}

