// JavaScript Document

/* TOC
 * Contact Form Validation
 * Focus First Contact Form Field
 * Validate Comment Form
 * Empty Search Form On Enter
*/

// Begin Contact Form Validation By JK
	
// Validate the sender name
function validate_sender_name() {
var validSN = true;
var Numbers= /\d/ ; 
var illegalChars= /[\(\)\<\>\,\;\:\\\[\]\{\}|!\@\#\$\%\^\&\*\+\=]/ ;
  // Check if the sender_name field is empty
  if (document.contact_form.sender_name.value == "") {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "<br />Please enter your name.";
	validSN = false;
    }
  // Confirm no numbers in the Name Field
  else if (Numbers.test(document.contact_form.sender_name.value)) {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "<br />Names do not contain numbers.";
    }	
  // Confirm no symbols characters in name field
  else if (illegalChars.test(document.contact_form.sender_name.value)) {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "<br />Names can not contain symbols.";
	validSN = false;
    }
  // else statements need to set the error message to nothing in order to remove error messages after they are corrected.
  else  {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "";
	validSN =true;
  }
  return validSN;
}
// Validate sender email
function validate_sender_email() {
var validEMAIL = true;
var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
  // Check a value has been entered
  if (document.contact_form.sender_email.value == "") {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "<br />Please enter your e-mail.";
	validEMAIL = false;
	}
  // valid email address format?
  else if (!emailFilter.test(document.contact_form.sender_email.value)) {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "<br />Please confirm your e-mail address is correct.";
	validEMAIL = false;
    }
  // Illegal Characters?
  else if (illegalChars.test(document.contact_form.sender_email.value)) {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "<br />Your e-mail address contains invalid characters.";
	validEMAIL = false;
    }
  else {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "";
	validEMAIL = true;
	}
return validEMAIL;  
}

// Validate Subject, there must be a subject and it must be at least 2 characters long
function validate_sender_subject() {
var validSUBJ = true;
  // Check if the sender_sunject field is empty
  if (document.contact_form.sender_subject.value == "" || document.contact_form.sender_subject.value.length < 2) {
	var subj_error = document.getElementById("subj_error");
	subj_error.innerHTML = "<br />Please enter a subject.";
	validSUBJ = false;
    }
  else  {
	var subj_error = document.getElementById("subj_error");
	subj_error.innerHTML = "";
	validSUBJ =true;
  }
  return validSUBJ;
}

// Validate Sender Messaage, Same rules apply as for subject
function validate_sender_message() {
var validMSG = true;
  // Check if the sender_subject field is empty
  if (document.contact_form.sender_message.value == "" || document.contact_form.sender_message.value.length < 2) {
	var msg_error = document.getElementById("msg_error");
	msg_error.innerHTML = "<br />Please enter your message.";
	validMSG = false;
    }
  else {
	var msg_error = document.getElementById("msg_error");
	msg_error.innerHTML = "";
	validMSG = true;
    }
  return validMSG;
}
// function validate_jkcf()
// To do
// I want to re-validate on submit in case a field was skipped, possibly should use php for this.  
// End Contact Form Validation


// Focus First Contact Form Field
function focusIt() {
  var mytext = document.getElementById("sender_name");
  mytext.focus();
}
onload = focusIt;
// End Focus First Contact Form Field


// Validate Comment Form
function validate_author() {
var validSN = true;
var Numbers= /\d/ ; 
var illegalChars= /[\(\)\<\>\,\;\:\\\[\]\{\}|!\@\#\$\%\^\&\*\+\=]/ ;
  // Check if the sender_name field is empty
  if (document.comment_form.author.value == "") {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "<br />Please enter your name.";
	validSN = false;
    }
  // Confirm no numbers in the Name Field
  else if (Numbers.test(document.comment_form.author.value)) {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "<br />Names do not contain numbers.";
    }	
  // Confirm no symbols characters in name field
  else if (illegalChars.test(document.comment_form.author.value)) {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "<br />Names can not contain symbols.";
	validSN = false;
    }
  // else statements need to set the error message to nothing in order to remove error messages after they are corrected.
  else  {
	var name_error = document.getElementById("name_error");
	name_error.innerHTML = "";
	validSN =true;
  }
  return validSN;
}

// Validate sender email
function validate_email() {
var validEMAIL = true;
var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
  // Check a value has been entered
  if (document.comment_form.email.value == "") {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "<br />Please enter your e-mail.";
	validEMAIL = false;
	}
  // valid email address format?
  else if (!emailFilter.test(document.comment_form.email.value)) {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "<br />Please confirm your e-mail address is correct.";
	validEMAIL = false;
    }
  // Illegal Characters?
  else if (illegalChars.test(document.comment_form.email.value)) {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "<br />Your e-mail address contains invalid characters.";
	validEMAIL = false;
    }
  else {
	var email_error = document.getElementById("email_error");
	email_error.innerHTML = "";
	validEMAIL = true;
	}
return validEMAIL;  
}
// validate comment
function validate_comment() {
var validMSG = true;
  // Check if the sender_subject field is empty
  if (document.comment_form.comment.value == "" || document.contact_form.sender_message.value.length < 2) {
	var msg_error = document.getElementById("msg_error");
	msg_error.innerHTML = "<br />Please enter your message.";
	validMSG = false;
    }
  else {
	var msg_error = document.getElementById("msg_error");
	msg_error.innerHTML = "";
	validMSG = true;
    }
  return validMSG;
}
// End Validate Comment Form


// Empty Search Form
function emptyIt() {
  var searchvalue = document.getElementById("searchform_field");
  searchvalue.value = "";
}
// End Empty Search Form