function CheckForm(RegForm)
{ 
  var err = false;
  
  //required fields
  err = CheckRequiredField(RegForm.sFname, err);
  err = CheckRequiredField(RegForm.sName, err);
  err = CheckRequiredField(RegForm.sCompany, err);
  err = CheckRequiredField(RegForm.sCountry, err);
  err = CheckRequiredField(RegForm.sPhone, err);
  err = ValidateEmailField(RegForm.sE_mail, "Invalid format ..", err);
  
  if (!err)
  {
      RegForm.sE_mail.value  = EmailFormat(RegForm.sE_mail);
      RegForm.sNewLine.value = '\n';
      RegForm.submit();
  }
  else return;
}


function CheckBugForm(BugForm)
{   
  var err = false;
  
  //required fields
  err = CheckRequiredField(BugForm.sName, err);
  err = CheckRequiredField(BugForm.sPhone, err);
  err = ValidateEmailField(BugForm.sE_mail, "Invalid format ..", err);
  err = CheckRequiredField(BugForm.sMessage, err);
  
  if (!err)
  {
      BugForm.sE_mail.value  = EmailFormat(BugForm.sE_mail);
      BugForm.sNewLine.value = '\n';
      BugForm.submit();
  }
  else return;

}

function CheckRequiredField(field, error)
{
  if (!error)
  {
    if (field)
    {
       if (field.value == "")
       {
          alert("Required field !");
	  field.focus();
	  error = true;
       }
       else {
          error = false;
       }
    }
  }
  return error;
}


function ValidateEmailField(field, mess, error)
{			        
	if (!error) 
	{
	   if ((field != null) && (!field.disabled)) {
					
		var  pos1 = field.value.indexOf("@");
	       	var  pos2 = field.value.lastIndexOf(".");
		var  len = field.value.length; 
		
		if (pos1 == - 1 || pos2 == -1 || pos1 > pos2 || ((len - pos2) < 3)) {
			alert(mess);
			field.focus();
			error = true;
		}
	   }
	}
   return error;                   
}

function EmailFormat(field)
{
   //replace @ in email
   var pos = field.value.indexOf("@");
   var len = field.value.length;
   var formated_email = field.value.substring(0, pos) + "*" + field.value.substring(pos + 1, len);

   return formated_email;
}
