var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i

function checkmail(){
  var form = document.getElementById('myform');
  
  email = form.EmailFrom;
  note = email.nextSibling;
  
  note.style.visibility = 'visible';
  
  if (!(emailfilter.test(email.value))){
    setWarning(note, 'Invalid Email Address');
    return false;
  } else {
    setOK(note);
    return true;
  }
  
}

function setWarning(el, msg){
    el.className = 'warning';
    el.innerHTML = msg;
}

function setOK(el){
  el.className = 'ok';
  el.innerHTML = 'Ok.';
}

function checkmail2(){
  var form = document.getElementById('myform');
  
  email = form.EmailFrom;
  email2 = form.EmailValidate;
  
  note = email2.nextSibling;
  
  note.style.visibility = 'visible';
  
  if (email.value != email2.value || email.value == undefined || email.value == 'undefined' || email.length == 0){
    setWarning(note, 'Email and Confirmation doesn\'t match.');
    return false;
  } else {
    setOK(note);
    return true;
  }
  

}

function checkname(){
  var form = document.getElementById('myform');
  
  target = form.Name;
  note = target.nextSibling; 
  note.style.visibility = 'visible';
  
  if (target.value == '' || target.value == undefined || target.value == 'undefined'){
    setWarning(note, 'Please enter your name.');
    return false;
  } else {
    setOK(note);
    return true;
  }
  
}

function checksubject(){
  var form = document.getElementById('myform');
  
  subject = form.Subject;
  note = subject.nextSibling; 
  note.style.visibility = 'visible';
  
  if (subject.value == '' || subject.value == undefined || subject.value == 'undefined'){
    setWarning(note, 'Please enter a subject.');
    return false;
  } else {
    setOK(note);
    return true;
  }
  
}

function checkmessage(){
  var form = document.getElementById('myform');
  
  target = form.Message;
  note = target.nextSibling; 
  note.style.visibility = 'visible';
  
  if (target.value == '' || target.value == undefined || target.value == 'undefined'){
    setWarning(note, 'Please enter your message.');
    return false;
  } else {
    setOK(note);
    return true;
  }
  
}

function validateForm(){
  if (checkmail() && checkmail2() && checkname() && checksubject() && checkmessage()){
    document.getElementById('myform').submit();
  } else {
    alert('Oops, there seems to be invalid entries in your form. Please make all the neccessary changes.');
    return false;
  }
}

function clearNote(el){
  el.nextSibling.style.visibility = 'hidden';
}
