// JavaScript Document
var block_ui_content_contact='<div id="processing_request" align="middle"><h1 class="processing_request"><img src="images/busy.gif" align="absmiddle" class="processing_request" /> &nbsp;Processing your request...</h1></div>';

function contactus()
{
	var name		=	document.getElementById('name');	
	var email		=	document.getElementById('email');
	
	var phone1		=	document.getElementById('phone1');
	var phone2		=	document.getElementById('phone2');
	var phone3		=	document.getElementById('phone3');
	
	var flag = true;	
	document.getElementById('firstname_msg').innerHTML='';	
	document.getElementById('email_msg').innerHTML='';
	
	if(!isValidUserName(name.value) || name.value == "")
	{
		document.getElementById('firstname_msg').innerHTML='Please Enter A Valid Name';
		name.focus();
		flag = false;
	}
	else if(!isValidEmail(email.value) || email.value == "")
	{
		document.getElementById('email_msg').innerHTML='Please Enter A Valid Email';
		email.focus();
		flag = false;
	}
	
	if(isValidEmail(email.value) && isValidUserName(name.value))
	{
		$.blockUI(block_ui_content_contact);
		$.post('contactus.php',{name:name.value, email:email.value, phone1:phone1.value, phone2:phone2.value, phone3:phone3.value, address:$("#address").val(), comments:$("#comments").val()},function(data){
		if(data=='success')
			window.location.href='contactusthankyou.html?msg=success';
		if(data=='failure')
			window.location.href='contactusthankyou.html?msg=failure';
		});
	}
	
}
// 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 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 resetContact()
{
	document.getElementById('name').value='';
	document.getElementById('address').value='';
	document.getElementById('phone1').value='';
	document.getElementById('phone2').value='';
	document.getElementById('phone3').value='';
	document.getElementById('email').value='';
	document.getElementById('comments').value='';
	document.getElementById('firstname_msg').innerHTML='';	
	document.getElementById('email_msg').innerHTML='';	
}


function isValidTelephoneNumber(tel){
	validRegExp = /^[0-9 +-]+$/;
    if (tel.match(validRegExp) == null) {
      return false;
    } 
		return true;
}

//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; 
}


function validateContactus(){
	
	document.getElementById("fname_err").innerHTML ='';
	
	document.getElementById("email_err").innerHTML ='';
	
	document.getElementById("subject_err").innerHTML ='';	
	
	document.getElementById("time_err").innerHTML ='';
	
	document.getElementById("phone_err").innerHTML ='';
	
	var phoneno = trim(document.getElementById("phoneno").value);
	
	if(checkValidElement("name","Enter valid Name","name","fname_err") == false)
		return false;
			
	if(checkValidElement("email","Enter valid Email Address","email","email_err") == false)
		return false;
		
	if(phoneno.length > 0){
		if(checkValidElement("phoneno","Enter valid Phone Number","phone","phone_err") == false){
			return false;
		}
	}
		
	if(checkValidElement("contacttime","Select valid Contact Time","text","time_err") == false)
		return false;
			
	if(checkValidElement("regarding","Enter valid Subject","text","subject_err") == false)
		return false;		
				
	return true;	
}

function validationResult(message, elementID, errorDisplayElementId){

	document.getElementById(errorDisplayElementId).innerHTML="<span class='error_val'>&nbsp;&nbsp;"+message+"</span>";
	
	document.getElementById(errorDisplayElementId).style.color='red';
	
	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(isValidTelephoneNumber(document.getElementById(elementID).value) == false)			
				return validationResult(message, elementID,errorDisplayElementId);				
			else			
				return true;
		
		break;
		
		case "name":
		
			if(isValidUserName(document.getElementById(elementID).value) == false)			
				return validationResult(message, elementID,errorDisplayElementId);				
			else			
				return true;
		
		break;
		
	}
	
}
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);
}