function TrySend(f) {
  var errMSG = "";
  var errMail = "";
 // цикл ниже перебирает все элементы в объекте f,
 // переданном в качестве параметра
 // функции, в данном случае - наша форма.            
 for (var i = 0; i<f.elements.length; i++)
   // если текущий элемент имеет атрибут required
   // т.е. обязательный для заполнения
   if (null!=f.elements[i].getAttribute("required")){
      // проверяем, заполнен ли он в форме
       if (isEmpty(f.elements[i].value)) // пустой
           errMSG += "  " + f.elements[i].name + "\n"; // формируем сообщение
                                                      // об ошибке, перечисляя
                                                      // незаполненные поля
		if(f.elements[i].name=='EMAIL' && checkmail1(f.elements[i].value)==1) errMail=" Не верно заполнено поле E-mail!";
       // если сообщение об ошибке не пусто,
       // выводим его, и возвращаем false    
	}
	
       if (""!= errMSG) {
           //alert("Не заполнены обязательные поля\n" + errMSG);
           alert("Не заполнены обязательные поля!");
           return false;
       }else if(errMail!=""){
		alert("Не верно заполнено поле E-mail!");
           return false;
	   }
}

function isEmpty(str) {
  for (var i = 0; i < str.length; i++)
     if (" " != str.charAt(i))
         return false;
     return true;
}

function checkmail1(mailString)
{
	// Возвращает 0 - если пустое, 1 - если неправильно заполнено, 2 - если правильно
	if(mailString!="")
	{		
		re=/(\.@)|(^[\.\-]{1})|(\.\-\.+)|(@\.\-)|(@.*_)/;
		result = re.test(mailString);
		if(!result)		
		{
			re=/^[(\w)\.\-]+[@]{1}[(\w)\.\-]+[\.\-]{1}[^(\W|_|\.\-)]{2,3}$/;
			result = re.test(mailString);
			if(!result)
				return  1;
			return 2;	
		}
		return 1;
	}
	
	return 0;
}
