/*Added by Niranjan on 14 OCtober*/
//-----function to trim the entered values

function Trim(sString)
{
	return leftTrim(rightTrim(sString));
}
function leftTrim(sString)
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);
	}
	return sString;
}

function rightTrim(sString)
{
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

/*Added by Niranjan on 14 OCtober*/
//-----------function for null validation----------
function validRequired(formField,fieldLabel) 
{
	var result = true;
	if (Trim(formField.value) == "")
	{
		alert('Please Enter ' + fieldLabel +' ');
		formField.focus();
		result = false;
	}
	return result;
}
/*Added by Niranjan on 14 OCtober*/
//function to validate null and min and max characters
function minMaxValidRequired(formField,fieldLabel) 
{
	var result = true;
	var trimmedValue = Trim(formField.value);
	if(trimmedValue == "")
	{
		alert('Please Enter ' + fieldLabel +' ');
		formField.focus();
		result = false;
	}	
	else if(trimmedValue.length < 4 )
	{
		alert(' '+fieldLabel+' should be minimum of 4 characters');
		formField.focus();
		result = false; 
	}	
	else if(trimmedValue.length > 20)
	{
		alert(' '+fieldLabel+' should not be above of 20 characters');
		formField.focus();
		result = false;
	}
	return result;

}

/*Added by Niranjan on 14 october*/

//----Integer Validation--------
function validInt(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var num = parseInt(formField.value,10);
 		if (isNaN(num))
 		{
 			alert('Please enter Numbers for the ' + fieldLabel +' field.');
			formField.focus();		
			result = false;
		}
	} 
	
	return result;
}
//Added by niranjan on 14 th october
//function to validate email
function validEmail(str,formField) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if(str=="")
		{
			alert('Please enter Email Address');
			formField.focus();
			return false;
		}	
		if (str.indexOf(at)==-1){
		   alert("Please enter a valid Email Address");
		   formField.focus();
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Please enter a valid Email Address")
			formField.focus();
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Please enter a valid Email Address")
				formField.focus();
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Please enter a valid Email Address")
				formField.focus();
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Please enter a valid Email Address")
				formField.focus();
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Please enter a valid Email Address")
				formField.focus();
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Please enter a valid Email Address")
				formField.focus();
		    return false
		 }

 		 return true					
	}
// JavaScript Form Validation
function form_check(frm)
{
	if(!minMaxValidRequired(frm.txtName,"Name"))
		return false;
	if(!minMaxValidRequired(frm.txtPhone,"Phone Number"))
		return false;
	if(frm.txtPhone.value!="")
	{
		var phone = frm.txtPhone.value;
		var phonevalue = checkPhone(phone);
		if(phonevalue == false)
		{
			alert('Please Enter Valid Phone');
			frm.txtPhone.focus();
			return false;
		}
	}
	if (!validEmail(frm.txtEmail.value,frm.txtEmail))
	{
		frm.txtEmail.focus();
		return false;
	}
//	if(frm.txtWeb.value != "")
//	{
//		var url = frm.txtWeb.value;
//		var urlvalue = checkUrl(url);
//		if(urlvalue==false)
//		{
//			alert('Please enter Valid URL');
//			frm.txtWeb.focus();
//			return false;
//		}		
//	}
	if(frm.txtZip.value!="")
	{
		if(!validInt(frm.txtZip,"Zip",true))	
			return false;
	}
	if(frm.txtCity.value!="")
	{
		var city = frm.txtCity.value;
		var cityvalue = checkAlpha(city);
		if(cityvalue == false)
		{
			alert('Please Enter Valid City');
			frm.txtCity.focus();
			return false;
		}
	}
	if(frm.txtState.value!="")
	{
		var state = frm.txtState.value;
		var statevalue = checkAlpha(state);
		if(statevalue == false)
		{
			alert('Please Enter Valid State');
			frm.txtState.focus();
			return false;
		}
	}
	if(frm.txtCountry.value!="")
	{
		var country = frm.txtCountry.value;
		var countryvalue = checkAlpha(country);
		if(countryvalue == false)
		{
			alert('Please Enter Valid country');
			frm.txtCountry.focus();
			return false;
		}
	}	
}


// Functions for Fields Validations
function checkName(name)
{
  var nameexp =/^[a-zA-Z]+(\.|\s)*[a-zA-Z]+$/;// /^[a-zA-Z]+$/;
  //var nameexp = /^[a-zA-Z]+(\.|\s)*[a-zA-Z]+$/;
  var nameres = nameexp.test(name);
   return nameres;
}

function checkPhone(phone)
{
  var phoneexp = /^\+?[0-9]{0,4}(-|\s)?(\(0\))?[0-9]*(-|\s)?[0-9]+(-|\s)?[0-9]+$/;
  //var phoneexp =  /^\d(\d|-){4,10}/;
  var phoneres = phoneexp.test(phone);
  return phoneres;
}

function checkEmail(email)
{
  //var emailexp = /^[a-zA-Z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/;
  var emailexp = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/;
  var emailres = emailexp.test(email);
  return emailres;
}

//function checkUrl(url)
//{
//	var urlexp = /^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}([\w]+)(.[\w]+){1,2}$/;
//	var urlres = urlexp.test(url);
//	return urlres;
//}

function checkZip(zip)
{
	var zipexp =  /(^\d{5}$)|(^\d{5}-\d{4}$)/ ;
	var zipres = zipexp.test(zip);
	return zipres;
}

function checkAlpha(str)
{
	var alpexp =  /^[a-zA-Z]+(\.|\s)*[a-zA-Z]+$/;///^[a-zA-Z]*$/;
	var alpres = alpexp.test(str);
	return alpres;
}

/*function clear()
{
   document.frmContact.txtComments.value="";
}*/