function validatePhone(elem, inf_elem_id){
	var numericExpression = /^\+?[0-9 ()-]+[0-9]$/ ;
	inf_elem = document.getElementById(inf_elem_id);
	if(elem.value.match(numericExpression)){
	    inf_elem.style.visibility = 'hidden'; 
		return true;
	}else{
	    inf_elem.style.visibility = 'visible'; 
		elem.focus();
		return false;
	}
}

function validateText(elem, inf_elem_id){
	inf_elem = document.getElementById(inf_elem_id);
	if(elem.value.length > 0){
		inf_elem.style.visibility = 'hidden'; 
		return true;
	}else{
	    inf_elem.style.visibility = 'visible';  
		elem.focus();
		return false;
	}
}

function validateEmail(elem, inf_elem_id){
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
    inf_elem = document.getElementById(inf_elem_id);
	if(elem.value.match(emailExp)){
		inf_elem.style.visibility = 'hidden'; 
		return true;
	}else{
	    inf_elem.style.visibility = 'visible'; 
		elem.focus();
		return false;
	}
}


// Only script specific to this form goes here.
// General-purpose routines are in a separate file.
  function validateOnSubmit() {
    var errs=0;
    // execute all element validations in reverse order, so focus gets
    // set to the first one in error.
        
    if (!validateText  (document.forms.contactForm.visitor_query, 'inf_query')) errs += 1; 
    if (!validateEmail  (document.forms.contactForm.visitor_email, 'inf_email')) errs += 1; 
    if (!validatePhone    (document.forms.contactForm.visitor_phone,   'inf_phone')) errs += 1; 
    if (!validateText  (document.forms.contactForm.visitor_name, 'inf_name')) errs += 1; 

    if (errs>1)  alert('There are fields which need correction before sending');
    if (errs==1) alert('There is a field which needs correction before sending');

    return (errs==0);
  };


