function isBlank(s) 
{
 var len=s.length
 var i
 for(i=0;i<len;++i) 
 {
  if(s.charAt(i)!=" ") return false
 }
 return true
}


function validate(fieldName,fieldValue) 
{
 if(isBlank(fieldValue)) 
 {
  alert(fieldName+" cannot be left blank.")
  return false
 }
 return true
}

function validateForm() 
{
 		
	if(!validate("The Message field",document.feedback.comments.value))
  	{
  		document.feedback.comments.focus()
  		return false
  	}	
	
	else if(!validate("The Name field",document.feedback.name.value))
 	{
		document.feedback.name.focus()
		return false
	}

	
	if(!validate("The E-Mail field",document.feedback.email.value))
  	{
  		document.feedback.email.focus()
  		return false
  	}	
	
	else if(validate("The E-Mail field",document.feedback.email.value))
  	{
	if (EmailValid(document.feedback.email.value)==false)
	{
		document.feedback.email.focus();
		return false;
	}
  	}	
  	
	if(!validate("The Phone field",document.feedback.phone.value))
	{
  		document.feedback.phone.focus()
		return false;
		
	}
	else if(isNaN(document.feedback.phone.value)) 
   	{ 
     	alert("Invalid data format.\n\n Only numbers are allowed."); 
     	document.feedback.phone.focus(); 
    	return (false); 
   	}
	
}


function EmailValid(checkThisEmail)
{
var myEMailIsValid = true;
var myAtSymbolAt = checkThisEmail.indexOf('@');
var myLastDotAt = checkThisEmail.lastIndexOf('.');
var mySpaceAt = checkThisEmail.indexOf(' ');
var myLength = checkThisEmail.length;


// at least one @ must be present and not before position 2
// @yellow.com : NOT valid
// x@yellow.com : VALID

if (myAtSymbolAt < 1 ) 
 {myEMailIsValid = false}


// at least one . (dot) afer the @ is required
// x@yellow : NOT valid
// x.y@yellow : NOT valid
// x@yellow.org : VALID

if (myLastDotAt < myAtSymbolAt) 
 {myEMailIsValid = false}

// at least two characters [com, uk, fr, ...] must occur after the last . (dot)
// x.y@yellow. : NOT valid
// x.y@yellow.a : NOT valid
// x.y@yellow.ca : VALID

if (myLength - myLastDotAt <= 2) 
 {myEMailIsValid = false}


// no empty space " " is permitted (one may trim the email)
// x.y@yell ow.com : NOT valid

if (mySpaceAt != -1) 
 {myEMailIsValid = false}


if (myEMailIsValid == true)
 {
  		document.feedback.phone.focus()
 }
else
 {alert("email is NOT valid!")}


return myEMailIsValid
}

