  function validateContactForm(form)
  {
		form.elements.action.value = '';
    
    if (form.elements.name.value == '' || isWhitespace(form.elements.name.value))
    {
      alert('Your Name is required.');
      form.elements.name.focus();
      return false;
    }
    
    if (form.elements.email.value != '' || !isWhitespace(form.elements.email.value))
      if (!validateEmail(form.elements.email.value))
      {
        alert('Email must be valid.');
        form.elements.email.focus();
        return false;
      }
    
    if (form.elements.phone.value == '' || isWhitespace(form.elements.phone.value))
    {
      alert('Phone is required.');
      form.elements.phone.focus();
      return false;
    }
		
		form.elements.action.value = 'process';
    
    var oRPC = new jsRPC(form.action);        
    oRPC.sendForm(form);
    return false;
  }
  
  function handleSubmitContact(success)
  {
    if (success)
    {
      alert('Your contact has been sent.');
      $('contactform').reset();
    }
  }
  
  function validateEmail(str)
  {
    try
    {
      var regex = /^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
      return regex.test(str);
    }
    catch(er)
    {
      return true;
    }
  }
  
  function isWhitespace(str)
  {
    try
    {
      var regex = /^\s+$/;
      return regex.test(str);
    }
    catch(er)
    {
      return true;
    }
    
  }  
