// Web Rodeo
// 8/2009 : 8/2011
// Javascript for validating contact form

//////////////////////////////////////////////////////////////////////
// contact_form

var MAX_ADDRESS_LEN = 40;
var MAX_MESSAGE_LEN = 512;

function validateContactName() {
  if( document.contactForm.elements["name"] ) {
    if( document.contactForm.elements["name"].value.length < 1 ) {
      alert( "You must enter a Name" );
      document.forms.contactForm.elements["name"].focus();
      return false;
    }//end if
  }//end if

  return( true );
}//end validateContactName

function validateContactMessage() {
  var illegal_chars = /[\<\>\[\]\{\}]/;
  var injects = /multipart\/mixed|(content\-transfer\-encoding|content\-type|mime\-version|bcc|cc|to):/;  

  if( document.contactForm.elements["mess"] ) {
    var mess_el = document.contactForm.elements["mess"];
    var message = mess_el.value;
    var mess_len = message.length;

    if( mess_len < 1 ) {
      alert( "You must enter a Message" );
      mess_el.focus();
      return false;
    }
    else if( mess_len > MAX_MESSAGE_LEN ) {
      alert( "You must enter a shorter Message" );
      mess_el.focus();
      return false;
    }//end if

    if( message.match(illegal_chars) ) {
      alert( "Your Message contains invalid characters." );
      mess_el.focus();
      return( false );
    }//end if

    if( injects.test(message) ) {
      alert( "Your Message contains tokens that are not allowed." );
      mess_el.focus();
      return( false );
    }//end if

    return( true );
  }//end if
  else {
    alert( "You must enter a Message" );
    return( false );
  }//end if-else
}//end validateContactMessage

function validateContactEmail() {
  var email_el = document.contactForm.elements["email_addr"];
  
  if( email_el ) {
    var emailFilter = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
    var email = email_el.value;
    
    if( !(emailFilter.test(email)) ) {
      alert( "You have entered an invalid email address." );
      email_el.focus();
      return( false );
    }//end if

    if( email.length > MAX_ADDRESS_LEN ) {
      alert( "Email Address cannot be more than " + MAX_ADDRESS_LEN + " characters" );
      email_el.focus();
      return( false );
    }//end if

    return( true );
  }
  else {
    alert( "Email Address missing" );
    return( false );
  }//end if-else
}//end validateContactEmail

function validateContactForm() {
  return( validateContactEmail() && validateContactMessage() );
}//end validateContactForm

// end contact_form

