// JavaScript Document
function open_menu(id){
	i = document.getElementById(id).style.display
	if(i == "none"){
		document.getElementById(id).style.display = "";		
	} else {
		document.getElementById(id).style.display = "none";		
	}
}

function send_mail(){
	
	document.getElementById("name_error").style.display = "none";
	document.getElementById("position_error").style.display = "none";
	document.getElementById("company_error").style.display = "none";
	document.getElementById("email_error").style.display = "none";
	document.getElementById("tel_error").style.display = "none";
	
	var err = true;
	var n = document.contact.name.value;
	var p = document.contact.position.value;
	var c = document.contact.company.value;
	var e = document.contact.email.value;
	var t = document.contact.tel.value;
	
	if(n == ""){
		document.getElementById("name_error").style.display = "";
		err = false;
	}
	if(p == ""){
		document.getElementById("position_error").style.display = "";
		err = false;
	}
	if(c == ""){
		document.getElementById("company_error").style.display = "";
		err = false;
	}
	if(e == ""){
		document.getElementById("email_error").style.display = "";
		err = false;
	}
	if(e.indexOf('@')>0 && e.indexOf('.')>0 && e.lastIndexOf('.')<(e.length-2) && e.indexOf('@')==e.lastIndexOf('@') && e.indexOf('@')<e.lastIndexOf('.') && e.indexOf('..')==-1 && e.indexOf('.@')==-1 && e.indexOf('@.')==-1){
		document.getElementById('email_error').style.display = "none";
	} else {
		document.getElementById('email_error').style.display = "";	
		err = false;
	}
	if(t != ""){
		if (checkInternationalPhone(t)==false){
			document.getElementById('tel_error').style.display = "";
			err = false;
		}
	}
	if(err == true){
		document.contact.submit();	
	}
	
}

/**********************************************************
Phone Number Check
***********************************************************/

// 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 = 11;

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

