function checkform(f) {
  var errMSG = ""; 
  // цикл ниже перебирает все элементы в объекте f, 
  // переданном в качестве параметра
  // функции, в данном случае - наша форма.  
    var mail;  
	for (var i = 0; i<f.elements.length; i++){
	    if (null!=f.elements[i].getAttribute("email")) mail = f.elements[i];
	    // если текущий элемент имеет атрибут required
	    // т.е. обязательный для заполнени
		if (null!=f.elements[i].getAttribute("required")){ 
		   // проверяем, заполнен ли он в форме
			if (isEmpty(f.elements[i].value)) // пустой
				errMSG += "  " + f.elements[i].name + "\n"; // формируем сообщение
														   // об ошибке, перечисляя 
														   // незаполненные поля
		}
	}
    // если сообщение об ошибке не пусто,
	// выводим его, и возвращаем false
	if ("" != errMSG) {
		alert("Не заполнены обязательные поля:\n" + errMSG);
		return false;
	}
	
    if(checkmail(mail.value) == false){
		alert("Недопустимый E-mail : " + mail.value);
		return false;	
	}
}

function isEmpty(str) {
   for (var i = 0; i < str.length; i++)
      if (" " != str.charAt(i))
          return false;
      return true;
}

function ShowInfo(){
  var elm = document.getElementById("show");
  if(elm){
    elm.style.display = (elm.style.display == "none") ? "block" : "none";
  }
}

function ShowID(id){
  var elm = document.getElementById(id);
  if(elm){
    elm.style.display = (elm.style.display == "none") ? "block" : "none";
  }
}

function checkmail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   return reg.test(email);
}
