  function checkForm( oForm ){
  // Описание:           Проверка правильности заполнения формы.
  //	Проверяется заполненость обязательных полей.
  // Дата создания:      04.09.2002 Третьяков М.Ю.
  // Дата корректировки: 
    var bSuccess, strRequireFields, objElement, bFind;
    bSuccess = true;
    strRequireFields = "";
    objElement = null;
    strNameElement = ""
    bFind = false;
    try{
      // 04.10.2002 TMY: Ввели служебное поле, которое содержит
      //   список обязательных полей
      objElement = oForm.elements.item( "RequireFields" );
      if( objElement!=null ){
        strRequireFields = ";" + objElement.value + ";";
      }
      //alert( "List of required fields:" + strRequireFields);
      for (var i = 0; i < oForm.elements.length; i++ ){
        objElement = oForm.elements.item( i )
        bFind = (strRequireFields.search(";" + objElement.name + ";") > -1);
        if( (strRequireFields == "") || bFind ){
          //alert( "Find required field:" + objElement.name + " Value = " + objElement.type);
          if (objElement.type=="radio"){
            bSuccess = CheckRadio(oForm, objElement.name);
          }
          else
          {
          	if (objElement.type=="select-one"){
	            bSuccess = CheckSelect(oForm, objElement.name);
          	}
          	else
          	{
            	bSuccess = objElement.value.length > 0;
            }	
          }
        }
        if( !bSuccess ){
          objElement.focus();
          objElement.select();
          alert( "This field must be filled." );
          break;
        }
      }
    }
    catch( err ){
      alert( "Data checking error:\n" + err.description );
      bSuccess = false;
    }
    return ( bSuccess );
  }

  function CheckRadio(oForm, RadioName){
    var Element = null;
    for (var i = 0; i < oForm.elements.length; ++i){
      Element = oForm.elements.item( i );
      if ((Element.name == RadioName) && (Element.type == "radio")){
        //alert(RadioName + " radio checked = " + Element.checked);
        if (Element.checked){
          return true;
        }
      }
    }
    return false;
  }

  function CheckSelect(oForm, SelectName){
    var Element = null;
    for (var i = 0; i < oForm.elements.length; ++i){
      Element = oForm.elements.item( i );
      if ((Element.name == SelectName) && (Element.type == "select-one")){
        alert(SelectName + " index = " + Element.options[Element.selectedIndex]);
        if ((Element.selectedIndex != 0)){
        	//if (Element.options[Element.selectedIndex].value != ""){
        	  return true;
        	//}
        }
      }
    }
    return false;
  }

  function checkEmailForm( oForm ){
  	var objElement, bNotSuccess;
  	bNotSuccess = false;
    objElement = oForm.elements.item( "email" );
    if (objElement!=null){
    	bNotSuccess = (objElement.value.length == 0) || (objElement.value == "Enter email") || (objElement.value == "address@domain.com") || (objElement.value.search("@") == -1);
      if (bNotSuccess){
        objElement.focus();
        objElement.select();
        alert( "Please enter your email here. Example: address@domain.com" );        
      }
      return !bNotSuccess;
    }
    return checkForm(oForm);
  }
