function formCheck()
{
	var firstname = trim( document.getElementById( "firstname" ).value );
	var secondname = trim( document.getElementById( "secondname" ).value );
	var email = trim( document.getElementById( "email" ).value );
	var message = trim( document.getElementById( "message" ).value );
	var phone = trim( document.getElementById( "phone" ).value );
	
	hideAllErrors();
	
	if( !firstname )
	{
		document.getElementById("firstnameError").style.display = "inline";
		document.getElementById("firstname").select();
		document.getElementById("firstname").focus();
	  	return false;
	}
	if( !secondname )
	{
		document.getElementById("secondnameError").style.display = "inline";
		document.getElementById("secondname").select();
		document.getElementById("secondname").focus();
	  	return false;
	}
	if( !email || !TestEmail( email ) )
	{
		document.getElementById("emailError").style.display = "inline";
		document.getElementById("email").select();
		document.getElementById("email").focus();
	  	return false;
	}
	if( phone != "" && !validatePhone( phone ) )
	{
		document.getElementById("phoneError").style.display = "inline";
		document.getElementById("phone").select();
		document.getElementById("phone").focus();
	  	return false;
	}
	if( !message )
	{
		document.getElementById("messageError").style.display = "inline";
		document.getElementById("message").select();
		document.getElementById("message").focus();
	  	return false;
	}
	return true;
}

function hideAllErrors() {
	document.getElementById("firstnameError").style.display = "none";
	document.getElementById("secondnameError").style.display = "none";
	document.getElementById("emailError").style.display = "none";
	document.getElementById("messageError").style.display = "none";
	document.getElementById("phoneError").style.display = "none";
}
function trim( myString )
{
	return myString.replace(/^\s+/g,'').replace(/\s+$/g,'')
}

function validatePhone( phone )
{
	if( !TestInputType( phone, "[^0-9]" ) )
	{   
		return false;
	}
	return true;
}

function TestInputType( objValue, strRegExp )
{
    var charpos = objValue.search( strRegExp );
    if( objValue.length < 9 ||  charpos > -1 ) 
      return false; 
	return true;
}
function TestEmail( objValue )
{
	if( objValue.length > 0 && !validateEmail( objValue ) ) 
		return false; 
	return true;
}
function validateEmail( email )
{
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
	return false;
}
