/**
 * DHTML phone number validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

// 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 = 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);
}

/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

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){
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
	}



// JavaScript code by Silicon Vine
	function trim(stringToTrim) {
		return stringToTrim.replace(/^\s+|\s+$/g,"");
	}


	function submitformandnavigate(formId, url)
	{
		document.forms[0].submit;
		window.location.href=url;		
	};
	
	function checkresponseform(formid)
	{
		var returnvalue 	= false;
		var form			= document.getElementById(formid);
		if (form==null){
				form = document.forms[0]
		}
	
		var name 			= form.custname;
		var phone 			= form.custphone;
		var email 			= form.custemail;
		var emailconf 		= form.custemailconf;
		var msg				= form.custmsg;
		
		if  ((trim(name.value)==null)||(trim(name.value)=="")) {
			alert("Please complete your name.");
			return false;
		}
		else if ((trim(phone.value)==null)||(trim(phone.value)=="")){
			alert("Please complete a phone number.");
			return false;
		}
		else if (checkInternationalPhone(trim(phone.value))==false){
			alert("Please enter a valid phone number.");
			return false;
		}
		else if ((trim(email.value)==null)||(trim(email.value)=="")){
			alert("Please complete an email address.");
			return false;
		}
		else if (echeck(trim(email.value))==false){
			alert("Please enter a valid email address.");
			return false;
		}
		else if ((trim(email.value))!=(trim(emailconf.value))){
			alert("Email addresses must match.");
			return false;
		}
		else {
			return true;
		}
	
	}
	
//	function checkresponseform(formid)
//	{
//		confirm("checking responseform");
//		var returnvalue 	= true;
//		var form			= document.getElementById(formid);
//		if (form==null){
//				form = document.forms[0]
//		}
//		var errormsg		= document.getElementById("errormessage");
//		
//		var errormsgValue	= "";
//		
//		
//		var name 			= form.custname;
//		document.write(name.value);
//		var phone 			= form.custphone;
//		document.write(phone.value);
//		var email 			= form.custemail;
//		document.write(email.value);
//		var emailconf 		= form.custemailconf;
//		document.write(emailconf.value);
//		var msg				= form.custmsg;
//		document.write(msg.value);
//
//		
//		if ((trim(email.value)==null)||(trim(email.value)=="")){
//			errormsgValue +=  "Please complete an <strong>email address</strong>.<br/>";
//			email.value = "";
//			email.focus();
//			returnvalue = false;
//			document.write("emailblank");
//		}
//		
//		if (echeck(trim(email.value))==false){
//			errormsgValue +=  "Please enter a <strong>valid email address</strong>.<br/>";
//			email.value="";
//			email.focus();
//			returnvalue = false;
//			document.write("emailinvalid");
//		}
//		if ((trim(email.value))!=(trim(emailconf.value))){
//			errormsgValue +=  "Email addresses must match.<br/>";
//			email.value="";
//			emailconf.value="";
//			email.focus();
//			returnvalue = false;
//			document.write("emaildiff");
//			
//			
//		}
//		if ((trim(phone.value)==null)||(trim(phone.value)=="")){
//			errormsgValue +=  "Please complete a <strong>phone number</strong>.<br/>";
//			phone.value = "";
//			phone.focus();
//			returnvalue = false;
//			document.write("phoneblank");
//		}
//		
//		if (checkInternationalPhone(trim(phone.value))==false){
//			errormsgValue +=  "Please enter a <strong>valid phone number</strong>.<br/>";
//			phone.value="";
//			phone.focus();
//			returnvalue = false;
//			document.write("phoneinvalid");
//		}
//		if  ((trim(name.value)==null)||(trim(name.value)=="")) {
//			errormsgValue +=  "Please complete your <strong>name</strong>.<br/>";
//			name.value = "";
//			name.focus();
//			returnvalue = false;
//			document.write("nameblank");
//		}
//		
//
//		
//		
//		errormsg.innerHTML = errormsgValue;
//		return returnvalue;
//		
//		
//	}

	
	



