function checksendorderform(f) 
{
  var errMSG = "";
  for (var i = 0; i<f.elements.length; i++) 
    // если текущий элемент имеет атрибут required
    // т.е. обязательный для заполнения
    if (null!=f.elements[i].getAttribute("required")) 
        // проверяем, заполнен ли он в форме
        if (isEmpty(f.elements[i].value)) // пустой
        {
            if (f.elements[i].name=="lname") errElement="Фамилия";
            if (f.elements[i].name=="telcode") errElement="Код города";
            if (f.elements[i].name=="tel") errElement="Телефон";
            if (f.elements[i].name=="inDay") errElement="День прибытия";
            if (f.elements[i].name=="inMonth") errElement="Месяц прибытия";
            if (f.elements[i].name=="inYear") errElement="Год прибытия";
            if (f.elements[i].name=="outDay") errElement="День отьезда";
            if (f.elements[i].name=="outMonth") errElement="Месяц отьезда";
            if (f.elements[i].name=="outYear") errElement="Год отьезда";
            if (f.elements[i].name=="email") errElement="E-mail";
            errMSG += "- " + errElement + "\n";  // формируем сообщение
                                                 // об ошибке, перечисляя 
                                                 // незаполненные поля
        }
        // если сообщение об ошибке не пусто,
        // выводим его, и возвращаем false     
        if ("" != errMSG) {
            alert("Незаполненные поля:\n\n" + errMSG);
            return false;
        }

    // Проверка Email
    if (!isValidEmail(f.email.value)) {

        alert("Неверный адрес эл. почты");
        return false;

    }

}

function checksendrequestform(f) 
{
  var errMSG = "";
  for (var i = 0; i<f.elements.length; i++) 
    // если текущий элемент имеет атрибут required
    // т.е. обязательный для заполнения
    if (null!=f.elements[i].getAttribute("required")) 
        // проверяем, заполнен ли он в форме
        if (isEmpty(f.elements[i].value)) // пустой
        {
            if (f.elements[i].name=="name") errElement="фио";
            if (f.elements[i].name=="email") errElement="e-mail";
            if (f.elements[i].name=="tel") errElement="телефон";
            if (f.elements[i].name=="comments") errElement="сроки и пожелания";
            errMSG += "- " + errElement + "\n"; // формируем сообщение
                                                 // об ошибке, перечисляя 
                                                 // незаполненные поля
        }
        // если сообщение об ошибке не пусто,
        // выводим его, и возвращаем false     
        if ("" != errMSG) {
            alert("Неверные поля:\n\n" + errMSG);
            return false;
        }

    // Проверка Email
    if (!isValidEmail(f.email.value)) {

        alert("Неверный адрес эл. почты");
        return false;

    }

}

function isEmpty(str) 
{
   for (var i = 0; i < str.length; i++)
      if (" " != str.charAt(i))
          return false;
      return true;
}

function isValidEmail(email, required) {
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
//    if (! allValidChars(email)) {  // check to make sure all characters are valid
//        return false;
//    }

    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    }
//    } else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
//        return false;
//    } else if (email.indexOf("@") == email.length) {  // @ must not be the last character
//        return false;
//    }
    
    return true;
}

function allValidChars(email) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-";
  for (var i=0; i < email.length; i++) {
    var letter = email.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}

function na_preload_img()
{ 
  var img_list = na_preload_img.arguments;
  if (document.preloadlist == null) 
    document.preloadlist = new Array();
  var top = document.preloadlist.length;
  for (var i=0; i < img_list.length; i++) {
    document.preloadlist[top+i] = new Image;
    document.preloadlist[top+i].src = img_list[i+1];
  } 
}

function na_change_img_src(name, nsdoc, rpath, preload)
{ 
  var img = eval((navigator.appName.indexOf('Netscape', 0) != -1) ? nsdoc+'.'+name : 'document.all.'+name);
  if (name == '')
    return;
  if (img) {
    img.altsrc = img.src;
    img.src    = rpath;
  } 
}

function na_restore_img_src(name, nsdoc)
{
  var img = eval((navigator.appName.indexOf('Netscape', 0) != -1) ? nsdoc+'.'+name : 'document.all.'+name);
  if (name == '')
    return;
  if (img && img.altsrc) {
    img.src    = img.altsrc;
    img.altsrc = null;
  } 
}

