
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 = 10;

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);
}

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

 		// return true					
	}
	
function hideStatus()
{
	document.getElementById('errormsg').style.display='none';
}
   var http_request = false;
   function makePOSTRequest(url, parameters) {
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      http_request.onreadystatechange = alertContents;
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
      http_request.send(parameters);
   }

   function alertContents() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            result = http_request.responseText;
            document.getElementById('errormsg').innerHTML = result;
			//setTimeout('hideStatus()',2000); 
			document.feedback.reset();
			//window.setTimeout("location.href='http://localhost/mahesh/jts/#/comments'",5000)           
         } else {
            alert('There was a problem with the request.');
         }
      }
   }
   
   function get() {
   //alert("here");
  /* var address = 0;
   for( i = 0; i < document.feedback.address.length; i++ )
	{
	if( document.feedback.address[i].checked == true )
	address = document.feedback.address[i].value;
	}*/
	var vehicle = 'no comments';
   for( i = 0; i < document.feedback.vehicle.length; i++ )
	{
	if( document.feedback.vehicle[i].checked == true )
	vehicle = document.feedback.vehicle[i].value;
	}
	var prompt_service = 'no comments';
   for( i = 0; i < document.feedback.prompt_service.length; i++ )
	{
	if( document.feedback.prompt_service[i].checked == true )
	prompt_service = document.feedback.prompt_service[i].value;
	}
	var warranty = 'no comments';
   for( i = 0; i < document.feedback.warranty.length; i++ )
	{
	if( document.feedback.warranty[i].checked == true )
	warranty = document.feedback.warranty[i].value;
	}
	var time = 'no comments';
   for( i = 0; i < document.feedback.time.length; i++ )
	{
	if( document.feedback.time[i].checked == true )
	time = document.feedback.time[i].value;
	}
	var jts_return = 'no comments';
   for( i = 0; i < document.feedback.jts_return.length; i++ )
	{
	if( document.feedback.jts_return[i].checked == true )
	jts_return = document.feedback.jts_return[i].value;
	}
	var contact_you = 'no comments';
   for( i = 0; i < document.feedback.contact_you.length; i++ )
	{
	if( document.feedback.contact_you[i].checked == true )
	contact_you = document.feedback.contact_you[i].value;
	}
	var pro_lube = 'no comments';
   for( i = 0; i < document.feedback.pro_lube.length; i++ )
	{
	if( document.feedback.pro_lube[i].checked == true )
	pro_lube = document.feedback.pro_lube[i].value;
	}
	
	var pro_wash = 'no comments';
   for( i = 0; i < document.feedback.pro_wash.length; i++ )
	{
	if( document.feedback.pro_wash[i].checked == true )
	pro_wash = document.feedback.pro_wash[i].value;
	}
	/*var polite = 0;
   for( i = 0; i < document.feedback.polite.length; i++ )
	{
	if( document.feedback.polite[i].checked == true )
	polite = document.feedback.polite[i].value;
	}
	var store = 0;
   for( i = 0; i < document.feedback.store.length; i++ )
	{
	if( document.feedback.store[i].checked == true )
	store = document.feedback.store[i].value;
	}
	var professional = 0;
   for( i = 0; i < document.feedback.professional.length; i++ )
	{
	if( document.feedback.professional[i].checked == true )
	professional = document.feedback.professional[i].value;
	}*/
	var address= document.getElementById("address").value;
	var polite= document.getElementById("polite").value;
	var store= document.getElementById("store").value;
	var professional= document.getElementById("professional").value;
	var email=document.getElementById("email").value;
	var name= document.getElementById("custname").value;
	var license= document.getElementById("license").value;
	var addr_one= document.getElementById("addr_one").value;
	var addr_two= document.getElementById("addr_two").value;
	var state= document.getElementById("state").value;
	var city= document.getElementById("city").value;
	var start_day= document.getElementById("start_day").value;
	var start_month= document.getElementById("start_month").value;
	var start_year= document.getElementById("start_year").value;
	var zipcode=document.getElementById("zipcode").value;
	if(name=="")
	{
		alert("Please enter the customer name");
		return false;
	}
	else if(!isNaN(name))
	{
		alert("Please enter only alphabets for customer name");
		return false;
	}
	else
	{
		var custname=name;
	}
	


if(license !="")
{
var numaric = license;
	for(var j=0; j<numaric.length; j++)
		{
		  var alphaa = numaric.charAt(j);
		  var hh = alphaa.charCodeAt(0);
		  if((hh > 47 && hh<58) || (hh > 64 && hh<91) || (hh > 96 && hh<123))
		  {
		  }
		else	{
                         alert("Please enter valid licence plate number");
			 return false;
		  }
 		}
}
 //alert("Your Alpha Numeric Test Passed");
 //return true;





	
	if((addr_one=="") && (addr_two==""))
	{
	   alert("Please enter your address details");
	   return false;
	}
	
	var Phone=document.getElementById("phone");
	if ((Phone.value==null)||(Phone.value=="")){
		alert("Please Enter your Phone Number");
		//Phone.focus();
		return false;
	}
	else
	{
		var custphone= document.getElementById("phone").value;
	}
	if (checkInternationalPhone(Phone.value)==false){
		alert("Please Enter a Valid Phone Number");
		Phone.value="";
		//Phone.focus();
		return false;
	}
	else
	{
		var custphone= document.getElementById("phone").value;
	}
	
	var emailID=document.getElementById("email");
	if ((emailID.value==null)||(emailID.value=="")){
		alert("Please Enter your Email ID")
		emailID.focus()
		return false;
	}
	if (echeck(emailID.value)==false){
		emailID.value=""
		emailID.focus()
		return false;
	}
	else
	{
	   var custemail=email;
	}
	
	if(city !="")
	{
	   if(!isNaN(city))
	   {
	      alert("Please enter only alphabets for city");
		  return false;
	   }
	}
	
	/*var field=document.getElementById("zipcode");
	var valid = "0123456789-";
	var hyphencount = 0;
	if(field.value != "")
	{
	if (field.length!=5 && field.length!=10) 
	{
		alert("Please enter your 5 digit or 5 digit+4 zip code.");
		return false;
	}
	for (var i=0; i < field.length; i++) 
	{
		temp = "" + field.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1") 
		{
			alert("Invalid characters in your zip code.  Please try again.");
			return false;
		}
		
		if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-")) 
		{
			alert("The hyphen character should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
			return false;
		 }
	}
	}
	else
	{
	var zipcode=document.getElementById("zipcode").value;
	}*/
	
	
	//alert(pro_wash);
	if(document.getElementById("bestvalue").checked== true)
	{	bestvalue='yes';}else{ bestvalue='no';}
	if(document.getElementById("quality").checked== true)
	{	quality='yes';}else{ quality='no';}
	if(document.getElementById("recommend").checked== true)
	{	recommend='yes';}else{ recommend='no';}
	if(document.getElementById("brand").checked== true)
	{	brand='yes';}else{ brand='no';}
	if(document.getElementById("location_new").checked== true)
	{	location_new='yes';}else{ location_new='no';}
	if(document.getElementById("previous").checked== true)
	{	previous='yes';}else{ previous='no';}
	if(document.getElementById("warranties").checked== true)
	{	warranties='yes';}else{ warranties='no';}
	
      var poststr = "address=" + address +
	  "&vehicle=" + vehicle +
	  "&prompt=" + prompt_service+
	  "&warranty=" + warranty +
	  "&bestvalue=" + bestvalue+
	  "&time_specify=" +time+	 
	 "&quality=" + quality+
	 "&jts_return=" + jts_return+
	 "&recommend=" +recommend+
	 "&contact_you=" +contact_you+
	 "&brand=" +brand+
	 "&pro_lube=" +pro_lube+
	 "&location_new=" +location_new+
	 "&pro_wash=" +pro_wash+
	 "&previous=" +previous+
	 "&polite=" +polite+
	 "&warranties=" +warranties+
	 "&store=" +store+
	 "&comments=" +document.getElementById("comments").value+
	 "&professional=" +professional+
	 "&custname=" +custname+
	 "&custemail=" +custemail+
	 "&custphone=" +custphone+
	 "&zipcode=" +zipcode+
	 "&license=" +license+
	 "&addr_one=" +addr_one+
	 "&addr_two=" +addr_two+
	 "&state=" +state+
	 "&city=" +city+
	 "&day_select=" +start_day+
	 "&month_select=" +start_month+
	 "&year_select=" +start_year;
	 //alert(poststr);
      makePOSTRequest('thanks.php', poststr);
   }

