// check the entire form
function validate(theForm) {
   var valid = true;
   if ( !validateEmail(theForm.email.value) ) valid = false;
   if ( !validateName(theForm.name.value) ) valid = false;
   if ( valid ) return true;
   else return false;
}

// test for a valid email entry
function validateEmail(emailString) {
   var valid = true;

   if ( emailString == "" ) {
      feedback('eMess','*',7);
      valid = false;
   } else if ( !validEmailString(emailString) ) {
      feedback('eMess','*',7);
      valid = false;
   } else feedback('eMess','',1);

   if ( valid ) return true;
   else return false;
}

// test for a valid password entry
function validateName(nameString) {
   var valid = true;

   if ( nameString == "" ) {
      feedback('nMess','*',7);
      valid = false;
   } else feedback('nMess','',1);
   if ( valid ) return true;
   else return false;
}

function validEmailString(emailString) {
   // regular expression works for most email strings
   var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
   if (filter.test(emailString)) return true;
   else return false;
}/*function validatePhone(phoneString) {
   var valid = true;

   if ( phoneString == "" ) {
      feedback('pMess','*',7);
      valid = false;
   } else if ( !validNumString(phoneString) ) {
      feedback('pMess','*',7);
      valid = false;
   } else feedback('pMess','',1);
   if ( valid ) return true;
   else return false;
}
function validNumString(s){
  var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}*/
function feedback(item,mess,count) {
   // set the message text
   document.getElementById(item).innerHTML = mess;

   // set it's colour
   if ( count%2 == 1 ) {
      document.getElementById(item).style.color = 'red';
   } else {
      document.getElementById(item).style.color = 'black';
   }

   // set a timer to call this function again in 300ms
   count--;
   var foo = 'feedback(\'' + item + '\',\'' + mess + '\',' + count + ')';
   if ( count > 0 ) setTimeout(foo,300);
}
