//  onsubmit="return checkForm(this);"

var err;

function checkForm(formid)
{
  err = true;

  if (formid.name == 'feedback')
  {
    if (formid.comment.value.length < 1)
    {
      error('You haven\'t made any comment.');
      formid.comment.focus();
      formid.comment.select();
    }
    else if (formid.contact_name.value.length < 1)
    {
      error('You haven\'t provided a contact name.');
      formid.contact_name.focus();
      formid.contact_name.select();
    }
    else if ((formid.email_address.value.length < 1) && (formid.phone_number.value.length < 1))
    {
      error('You haven\'t provided any contact details.');
      formid.email_address.focus();
      formid.email_address.select();
    }

    if (err && (formid.email_address.value.length > 0))
    {
      if (formid.email_address.value.length < 5)
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if ((formid.email_address.value.indexOf('@') == -1) || (formid.email_address.value.indexOf('.') == -1))
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if (stringcontains(formid.email_address.value,'()[]<>;:," ') == true)
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
    }
  }
  else if (formid.name == 'contact')
  {
    if (formid.comments.value.length < 1)
    {
      error('You haven\'t made any comment.');
      formid.comments.focus();
      formid.comments.select();
    }
    else if (formid.contact_name.value.length < 1)
    {
      error('You haven\'t provided a contact name.');
      formid.contact_name.focus();
      formid.contact_name.select();
    }
    else if (formid.email_address.value.length < 1)
    {
      error('You haven\'t provided any email address.');
      formid.email_address.focus();
      formid.email_address.select();
    }

    if (err && (formid.email_address.value.length > 0))
    {
      if (formid.email_address.value.length < 5)
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if ((formid.email_address.value.indexOf('@') == -1) || (formid.email_address.value.indexOf('.') == -1))
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if (stringcontains(formid.email_address.value,'()[]<>;:," ') == true)
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
    }
  }
  else if (formid.name == 'subscribe')
  {
    if (formid.email_address.value.length < 1)
    {
      error('You haven\'t provided an email address.');
      formid.email_address.focus();
      formid.email_address.select();
    }

    if (err && (formid.email_address.value.length > 0))
    {
      if (formid.email_address.value.length < 5)
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if ((formid.email_address.value.indexOf('@') == -1) || (formid.email_address.value.indexOf('.') == -1))
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if (formid.email_address.value.indexOf('@') > formid.email_address.value.lastIndexOf('.'))
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
      else if (stringcontains(formid.email_address.value,'()[]<>;:," ') == true)
      {
        error('The email address you have entered is not a valid email address.');
        formid.email_address.focus();
        formid.email_address.select();
      }
    }
  }

  if (err)
  {
    err = window.confirm('Are you sure you have entered everything correctly?');
  }

  return err;
}

function stringcontains(haystack,needles)
{
  var result;
  result = false;

  for (i=0;i<needles.length;i++)
  {
    if (haystack.indexOf(needles.charAt(i))>0)
    {
      result = true;
    }
  }

  return result;
}

function error(txt)
{
  err = false;
  window.alert(txt);
}
