function checkform(f,z) {
  var errMSG = ""; 
  var textMSG = "";
  var predupr = "";
  var preduprmail = "";
  var preduprtel = "";
  var vsego = "";
  var vidov = z;
  // если проверять все поля формы 
   vsego = f.elements.length;  
  // цикл ниже перебирает все элементы в объекте f, 
  // переданном в качестве параметра
  // функции, в данном случае - наша форма.            
  for (var i = 0; i<vsego; i++) {
      // если текущий элемент имеет атрибут required
    // т.е. обязательный для заполнения
    if (null!=f.elements[i].getAttribute("required")){
    predupr=f.elements[i].name+"_stop"; document.getElementById(predupr).innerHTML='';
       // проверяем, заполнен ли он в форме
        if (isEmpty(f.elements[i].value)){ // пустой
        document.getElementById(predupr).innerHTML='<hr class=stop style=width:100%>';
          if(f.elements[i].name=="name")textMSG= "НАЗВАНИЕ ПРЕДПРИЯТИЯ";
          if(f.elements[i].name=="lico")textMSG= "КОНТАКТНОЕ ЛИЦО";
          if(f.elements[i].name=="gorod")textMSG= "ГОРОД";
          if(f.elements[i].name=="tel")textMSG= "ТЕЛЕФОН";
          if(f.elements[i].name=="mail")textMSG= "E-MAIL";
          if(f.elements[i].name=="opisanie")textMSG= "ОПИСАНИЕ";
          if(f.elements[i].name=="loginp")textMSG= "ЛОГИН";
          if(f.elements[i].name=="passp")textMSG= "ПАРОЛЬ";
          if(f.elements[i].name=="passp1")textMSG= "ПОДТВЕРЖДЕНИЕ ПАРОЛЯ";
          if(f.elements[i].name=="kd")textMSG= "ПРОВЕРКА НА СПАМ";
           errMSG += " - " + textMSG;}}

 if (null!=f.elements[i].getAttribute("requiredvid"))if(f.elements[i].checked)vidov=1;


// проверка заполнения мыла
   if(f.elements[i].name=="mail"){
   if(!isEmpty(f.elements[i].value)){
   if(!checkmail(f.elements[i].value))
   {
    preduprmail = "некоректно заполнено поле E-MAIL";
    document.getElementById('mail_stop').innerHTML='<hr class=stop style=width:100%>';
    }}}

// проверка заполнения телефона
    if(f.elements[i].name=="tel") if(!isEmpty(f.elements[i].value))if(istelefon(f.elements[i].value))
    { preduprtel="некоректно заполнен ТЕЛЕФОН"; document.getElementById('tel_stop').innerHTML='<hr class=stop style=width:100%>';}

}// конец цикла
                                                        // формируем сообщение
                                                       // об ошибке, перечисляя 
                                                       // незаполненные поля
        // если сообщение об ошибке не пусто,
        // выводим его, и возвращаем false     
  
      
       if ("" != preduprmail)errMSG += " - " + preduprmail; 
       if ("" != preduprtel)errMSG += " - " + preduprtel; 
       if (vidov== 0)errMSG += " - НЕ ВЫБРАН ВИД ДЕЯТЕЛЬНОСТИ"; 
        if ("" != errMSG) { 
            alert("Не заполнены обязательные поля:" + errMSG);
            return false;
        }
}


function isEmpty(str) {
   for (var i = 0; i < str.length; i++)
      if (" " != str.charAt(i))
          return false;
      return true;
}


function istelefon(str) {
   var simv;
   var simv=0;
   for (var i = 0; i < str.length; i++)
      if (" " != str.charAt(i))simv++;
      if (simv < 5)  return true;
    return false;
}

 
function checkmail(a) 
 { 
 txt=a; 
 
 if (txt.indexOf(".") == -1) { 
 return false; 
 } 
 
 dog = txt.indexOf("@"); 
 if (dog == -1) { 
 return false; 
 } 
 
 if ((dog < 1) || (dog > txt.length - 5)) { 
 return false; 
 } 
 
 if ((txt.charAt(dog - 1) == '.') || (txt.charAt(dog + 1) == '.')) { 
 return false; 
 } 
 return true;
 } 


