// JavaScript Document

function chkphone(phoneno)
{
	if(phoneno.length > 0 )
	{
		if(isValidTelephone(phoneno))
		{
			document.getElementById('phoneno_msg').innerHTML='';
			return true;
		}
		else
		{
			document.getElementById('phoneno').focus();
			document.getElementById('phoneno_msg').innerHTML='Invalid Phone No.';
			return false;
		}
	}
	else
		return true;
}



function isValidTelephoneNumber(tel){
	/*validRegExp = /^[0-9 +-]+$/;
    if (tel.match(validRegExp) == null) {
      return false;
    } 
		return true;*/
	validRegExpPhone = /^\d{3}-\d{3}-\d{4}$/;	
	strPhone = trim(tel);
	if(strPhone) {
	if (strPhone.search(validRegExpPhone) == -1)
	{
			//document.getElementById('errordetails').innerHTML="Invalid Phone Number! Provide XXX-XXX-XXXX format.";
			//document.getElementById('contactno').focus();
			return false;
		//}
		//else
		//	return true;
	}
	return true;
	}
}

function validateContactus(){
	
	var phoneno = trim(document.getElementById("txtPhone").value);
	
	if(checkValidElement("txtFirstName","Enter valid Name","name","") == false)
		return false;
			
	if(checkValidElement("txtJobTitle","Enter valid Job Title","name","") == false)
		return false;
		
	if(checkValidElement("txteMail","Enter valid Email Address","email","") == false)
			return false;	
		
	/*if(checkValidElement("txtPhone","Enter valid Phone Number(Valid format is XXX-XXX-XXXX)","phone","") == false)
		return false;*/
		
	if(checkValidElement("txtPhone","Enter valid Contact Number","text","") == false)
		return false;	

	if(checkValidElement("lstCountry","Select valid Country","select","") == false)
		return false;
		
	if(checkValidElement("txtState","Enter valid State","text","") == false)
		return false;
		
	if(checkValidElement("txtArea","Enter valid Area","text","") == false)
		return false;

	if(checkValidElement("txtZip","Enter valid Zip/Pin Code","text","") == false)
		return false;
		
	if(checkValidElement("txtCompany","Select valid Company / Organization","text","") == false)
		return false;
		
	if(checkValidElement("lstYrEstb","Enter valid Year of establishment","select","") == false)
		return false;
		
	if(checkValidElement("lstIndTech","Enter valid Industry / Technology","select","") == false)
		return false;	
		
	return true;	
}

function validationResult(message, elementID, errorDisplayElementId){

	if(errorDisplayElementId != ""){
	
		document.getElementById(errorDisplayElementId).innerHTML="&nbsp;&nbsp;"+message+"";
		
		document.getElementById(errorDisplayElementId).style.color='red';
		
	}else{
	
		alert(message);
	
	}
	
	document.getElementById(elementID).focus();
				
	document.getElementById(elementID).select;
			
	return false;

}

function checkValidElement(elementID, message, type, errorDisplayElementId){

	switch(type){
	
		case "text":
		
			if(trim(document.getElementById(elementID).value) == "")			
				return validationResult(message, elementID,errorDisplayElementId);				
			else			
				return true;
				
		break;
		
		case "email":
		
			if(isValidEmailId(document.getElementById(elementID).value) == false)			
				return validationResult(message, elementID,errorDisplayElementId);
			else			
				return true;
		
		break;
		
		case "phone":
		
			if(document.getElementById(elementID).value.length >= 10){
				if(isValidTelephoneNumber(document.getElementById(elementID).value) == false)			
					return validationResult('Provide XXX-XXX-XXXX format', elementID,errorDisplayElementId);				
				else			
					return true;
			}else
				return validationResult(message, elementID,errorDisplayElementId);
			
		
		break;
		
		case "name":
		
			if(isValidUserName(document.getElementById(elementID).value) == false)			
				return validationResult(message, elementID,errorDisplayElementId);				
			else			
				return true;
		
		break;
		
		case "select":
		
			if(trim(document.getElementById(elementID).value) == "" ||  trim(document.getElementById(elementID).value) == 0)			
				return validationResult(message, elementID,errorDisplayElementId);				
			else			
				return true;
		
		break;
		
	}
	
}

// Removes leading whitespaces
function LTrim( value ) 
{
	var re = /\s*((\S+\s*)*)/;
	return value.replace(re, "$1");
}

// Removes ending whitespaces
function RTrim( value ) 
{
	var re = /((\s*\S+)*)\s*/;
	return value.replace(re, "$1");
}
// Removes leading and ending whitespaces
function trim( value ) 
{
	return LTrim(RTrim(value));
}
//email validation
function isValidEmail(strEmail)
{
	if(strEmail.length<5)
	{
		return false;
	}
  validRegExp = /^[\w\.-]+@[a-z,A-Z,0-9-]+[\.]{1}[a-zA-Z]{2,}[[\.]?[a-zA-Z]{0,2}$/i;
   // search email text for regular exp matches
   strEmail = trim(strEmail);
    if (strEmail.search(validRegExp) == -1) 
	{
      return false;
    } 
    return true; 
}
//validatating user name
function isValidUserName(val) {
	 validRegExp = /^[a-zA-Z. ]+$/i;
   // search email text for regular exp matches
   val = trim(val);
    if (val.search(validRegExp) == -1) {
      return false;
    } 
    return true; 	
}
function isValidTelephone(tel){
	validRegExp = /^[0-9 +-]+$/;
    if (tel.match(validRegExp) == null) {
      return false;
    } 
		return true;
}

function blockNonCharacters(obj, e, allowDecimal, allowNegative)
{
	var key;
	var isCtrl = false;
	var keychar;
	var reg;
		
	if(window.event) {
		key = e.keyCode;
		isCtrl = window.event.ctrlKey
	}
	else if(e.which) {
		key = e.which;
		isCtrl = e.ctrlKey;
	}
	
	if (isNaN(key)) return true;
	
	keychar = String.fromCharCode(key);
	
	// check for backspace or delete, or if Ctrl was pressed
	if (key == 8 || isCtrl)
	{
		return true;
	}

	reg = /^[a-zA-Z. \s]*$/;
	var isFirstN = allowNegative ? keychar == '-' && obj.value.indexOf('-') == -1 : false;
	var isFirstD = allowDecimal ? keychar == '.' && obj.value.indexOf('.') == -1 : false;
	
	return isFirstN || isFirstD || reg.test(keychar);
}

//email validation
function isValidEmailId(strEmail)
{
	if(strEmail.length<5)
	{
		return false;
	}
  validRegExp = /^[\w\.-]+@[a-z,A-Z,0-9-]+[\.]{1}[a-zA-Z]{2,}[[\.]?[a-zA-Z]{0,2}$/i;
   // search email text for regular exp matches
   strEmail = trim(strEmail);
    if (strEmail.search(validRegExp) == -1) 
	{
      return false;
    } 
    return true; 
}
