// Declaring required variables For Phone Number
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 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){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function check(validate) {

	var first_name = document.getElementById("first_name").value;
	var last_name = document.getElementById("last_name").value;
	var company = document.getElementById("company").value;
	var phone = document.getElementById("phone").value;
	var email = document.getElementById("email").value;
	var domain = document.getElementById("domain").value;
	var keyword1 = document.getElementById("keyword1").value;
	var keyword2 = document.getElementById("keyword2").value;
	var keyword3 = document.getElementById("keyword3").value;
	var geographic_area = document.getElementById("geographic_area").value;
	var comments = document.getElementById("comments").value;
	var iaccept = document.getElementById("iaccept").checked;
	
	if (first_name == "") {
		alert('Please enter your first name');
		return false;
	} else if (last_name == "") {
		alert('Please enter your last name');
		return false;
	} else if (company == "") {
		alert('Please enter your company name');
		return false;
	} else if ((phone==null)||(phone=="")){
		alert("Please enter your phone number");
		return false;
	} else if (checkInternationalPhone(phone)==false){
		alert("Please enter a valid phone number");
		return false;
	} else if ((email.indexOf("@") == "-1") || (email.indexOf(".") == "-1")) { 
		alert('Please enter a properly formatted email address');
		return false;
	} else if (domain == "") {
		alert('Please enter your website address');
		return false;
	} else if (keyword1 == "") {
		alert('Please enter a first keyword or phrase');
		return false;
	} else if (keyword2 == "") {
		alert('Please enter a second keyword or phrase');
		return false;
	} else if (keyword3 == "") {
		alert('Please enter a third keyword or phrase');
		return false;
	} else if (geographic_area == "") {
		alert('Please enter your geographic area of interest');
		return false;
	} else if (comments == "Please enter your reason for SEO Analysis and any other info.") {
		alert('Please enter your message');
		return false;
	} else if (iaccept == false) {
		alert('Please agree to the terms and conditions');
		return false;
	} else {
		return true;
	}

}