// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 9;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
function trim(s)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not a whitespace, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (c != " ") returnString += c;
    }
    return returnString;
}
function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}	


function checkInternationalPhone(strPhone){
var bracket=3
strPhone=trim(strPhone)
if(strPhone.indexOf("+")>1) return false
if(strPhone.indexOf("-")!=-1)bracket=bracket+1
if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false
var brchr=strPhone.indexOf("(")
if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false
if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i

	function chkForm()
	{
		var txtName=document.getElementById("txtName");
		var txtEmail=document.getElementById("txtEmail");
		var txtPhone=document.getElementById("txtPhone");
		var Yes=document.getElementById("Yes");
		var No=document.getElementById("No");
		var Email=document.getElementById("Email");
		var Phone=document.getElementById("Phone"); 
		var pcontact=document.getElementById("pcontact");
		var comment = document.getElementById("txtcomment");
		if (txtName.value=="")
		{
			alert("Please Enter Your Name");
			txtName.focus();
			return false;
		}
		if (txtEmail.value=="")
		{
			alert("Please Enter Your Email");
			txtEmail.focus();
			return false;
		}
		if (txtEmail.value!="")
		{
			if (emailfilter.test(txtEmail.value)==false)
			{
				alert ("Please Enter a Valid E-mail Address.");
				txtEmail.select();		
				return false;
			}
		}
		if (txtPhone.value=="")
		{
			alert("Please Enter Your Phone");
			txtPhone.focus();
			return false;
		}
		if (txtPhone.value!="")
		{
			if (checkInternationalPhone(txtPhone.value)==false)
			{
				alert("Please Enter a Valid Phone Number");
				txtPhone.select();
				return false;
			}
		}
		if (Yes.checked==false && No.checked==false)
		{
			alert("Please Choose One Option, Yes or No");
			return false;
		}
		if (Email.checked==false && Phone.checked==false)
		{
			alert("Please Choose One Option, Email or Phone");
			return false;
		}
		if (comment.value=="")
		{
			alert ("Please enter comment.");
			comment.focus();
			return false;
		}
		SendMail();
	}
	
	function SendMail()
	{
		 var url = "../mail/sendmail.php";		
		 var excust = "";
		 var contactby = "";
		 if ($("#Yes").attr('checked'))
		 {
			 excust="Yes";
		 }
		 else
		 {
			 excust="No";
		 }
		 if ($("#Email").attr('checked'))
		 {
			 contactby="Email";
		 }
		 else
		 {
			 contactby="Phone";
		 }
                var respText = $.ajax({
                    url: url,
                    dataType: "html",
					async: false,
                    type: 'POST',
                    data: {						
						txtName:$("#txtName").val(),
						txtEmail:$("#txtEmail").val(),
						txtPhone:$("#txtPhone").val(),
						excust:excust,
						contactby:contactby,
						txtcomment:$("#txtcomment").val(),
                        d: Date()//use for clear catch
                    }
                }).responseText;
				alert (respText);
				document.frmFeedback.reset();
	}
