selectedOption=null;
afterSelectedOption=null;
onSelectOption = function(o){
 hideSelectedOption();
 showSelectedOption(o);
}


trim = function(strText) {
   if ( strText ) {
       while (strText.substring(0,1) == ' ')
          strText = strText.substring(1, strText.length);
       while (strText.substring(strText.length-1,strText.length) == ' ')
          strText = strText.substring(0, strText.length-1);
   } else {
       strText = '';
   }
   return strText;
}


function XHTTP_Request(){ this.status=null }
XHTTP_Request.prototype.getTransport = function() {
  var transport = false;
  try {
     transport = new XMLHttpRequest();
  } catch(e) {
     try {
        transport = new ActiveXObject('Msxml2.XMLHTTP');
     } catch(e) {
        try {
           transport = new ActiveXObject('Microsoft.XMLHTTP');
        } catch(e) {}
     }

  }
  return transport;
}
XHTTP_Request.prototype.Request = function( mode, uri, params ) {
  var request = this.getTransport();
  if ( params ) {
      uri += '?' + params;
  }
  var d = new Date();
  uri += '&un=' + d.getTime();
  document.body.style.cursor = 'wait';
  request.open('GET', uri, false);
  request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  request.setRequestHeader("Accept-Charset", "utf-8");
  request.send(null);
  this.status = request.status;
  document.body.style.cursor = 'default';
  var result = null;
  if ( request.readyState == 4 ) {
      if ( mode.toLowerCase() == 'text' ) {
          result = request.responseText;
      } else {
          result = request.responseXML;
      }
  }
  return result;
}


trim = function(strText) {
   if ( strText ) {
       while (strText.substring(0,1) == ' ')
          strText = strText.substring(1, strText.length);
       while (strText.substring(strText.length-1,strText.length) == ' ')
          strText = strText.substring(0, strText.length-1);
   } else {
       strText = '';
   }
   return strText;
}


function XHTTP_Request(){ this.status=null }
XHTTP_Request.prototype.getTransport = function() {
  var transport = false;
  try {
     transport = new XMLHttpRequest();
  } catch(e) {
     try {
        transport = new ActiveXObject('Msxml2.XMLHTTP');
     } catch(e) {
        try {
           transport = new ActiveXObject('Microsoft.XMLHTTP');
        } catch(e) {}
     }

  }
  return transport;
}
XHTTP_Request.prototype.Request = function( mode, uri, params ) {
  var request = this.getTransport();
  if ( params ) {
      uri += '?' + params;
  }
  var d = new Date();
  uri += '&un=' + d.getTime();
  document.body.style.cursor = 'wait';
  request.open('GET', uri, false);
  request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  request.setRequestHeader("Accept-Charset", "utf-8");
  request.send(null);
  this.status = request.status;
  document.body.style.cursor = 'default';
  var result = null;
  if ( request.readyState == 4 ) {
      if ( mode.toLowerCase() == 'text' ) {
          result = request.responseText;
      } else {
          result = request.responseXML;
      }
  }
  return result;
}


onSendMessage = function( content ) {


  // create transport
  var transport = false;
  try {
     transport = new XMLHttpRequest();
  } catch(e) {
     try {
        transport = new ActiveXObject('Msxml2.XMLHTTP');
     } catch(e) {
        try {
           transport = new ActiveXObject('Microsoft.XMLHTTP');
        } catch(e) {}
     }
  }
//  transport.status = null;


  var params = "cmd=sendmail";
  for(i in content) {
    params += "&" + i + "=" + encodeURIComponent(content[i]);
  }

  transport.open('POST', "incs/sendmail.php", false );
  transport.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  transport.setRequestHeader("Accept-Charset", "utf-8");
  transport.setRequestHeader("Content-length", params.length);
  transport.setRequestHeader("Connection", "close");
  transport.send(params);
  var result = null;
  if ( transport.readyState == 4 ) {
      result = transport.responseXML;
  }

  if ( result ) {
      result = result.documentElement;
      if ( result.getAttribute("result") == 'true' ) {
          alert( "E-mail successfully sent" );
	  clearForm();
          return;
      }
  }
  alert( "Server error: Unable to send mail" );
}


clearForm = function() {
  var fields = document.getElementById("sendform").getElementsByTagName("input");
  for ( var i = 0;  i < fields.length;  ++ i ) {
     if( fields[i].type.toLowerCase() == "text" ) 
     { 
         fields[i].value = '';
     } 
  }

  fields = document.getElementById("sendform").getElementsByTagName("textarea");
  for ( i = 0;  i < fields.length;  ++ i ) {
      fields[i].value = '';
  }

  fields = document.getElementById("sendform").getElementsByTagName("select");
  for ( i = 0;  i < fields.length;  ++ i ) {
       //fields[i].value = "";
       fields[i].selectedIndex = 0;
  }

}



sendForm = function( from ) {
  var tbl = document.getElementById("forsendform");
  var msg = "<table>";
  var header = "Please, fill out following fields:\n";
  var err = "";
  var raw = new Array();

  if(tbl) {
     for ( var i=0;  i < tbl.rows.length;  ++ i ) {
         var name = tbl.rows[i].cells[0].innerHTML;
         msg += "<tr><td>" + name + ': </td><td>';
         var tmp = tbl.rows[i].cells[1].getElementsByTagName("input");
         if ( /*tmp.type.toLowerCase() == "text" &&*/ tmp && tmp.length ) {
             if ( trim(tmp[0].value) ) {
                 msg += tmp[0].value+"</td></tr>";
                 raw[name] = tmp[0].value;
             } else {
                 var fName = trim(name);
                 alert(fName);
                 if(fName && fName.lastIndexOf("*") == fName.length -1) 
                 {
                      if(!err) err = header;
                      err += "    \n" + fName;
                 } else {
                   msg += "&nbsp;</td></tr>";
                 } 
             }
         } else {
             tmp = tbl.rows[i].cells[1].getElementsByTagName("textarea");
             if ( tmp.length ) {
                 if ( trim(tmp[0].value) ) {
                     msg += tmp[0].value+"</td></tr>";
                     raw[name] = tmp[0].value;
                 } else {
                     if(!err) err = header;
                     err += "    \n"+tbl.rows[i].cells[0].innerHTML;
                 }
    
             } else {
                 tmp = tbl.rows[i].cells[1].getElementsByTagName("select");
                 if ( tmp.length ) {
                     msg += tmp[0].options[tmp[0].selectedIndex].value+"</td></tr>";
                     raw[name] = tmp[0].options[tmp[0].selectedIndex].value;
                 }
             }
         }
     }
  } else {
       var fields = document.getElementById("sendform").getElementsByTagName("input");
       for ( var i = 0;  i < fields.length;  ++ i ) {
//          if( fields[i].type.toLowerCase() == "text" ) 
          { 
//              fields[i].value = '';
              if(fields[i].value) {
                  msg += "<tr><td>" + fields[i].name + ': </td><td>' + fields[i].value + '</td></tr>';
                  raw[fields[i].name] = fields[i].value;
              } else {
                 err = "Please, fill out ALL fields.";
                 break;
              }

          } 
       }
       if(!err) {
          fields = document.getElementById("sendform").getElementsByTagName("textarea");
          for ( i = 0;  i < fields.length;  ++ i ) {
              if(fields[i].value) {
                  msg += "<tr><td>" + fields[i].name + ': </td><td>' + fields[i].value + '</td></tr>';
                  raw[fields[i].name] = fields[i].value;
              } else {
                 err = "Please, fill out ALL fields.";
                 break;
              }
          }
       }
       if(!err) {
          fields = document.getElementById("sendform").getElementsByTagName("select");
          for ( i = 0;  i < fields.length;  ++ i ) {
              if(fields[i].value && fields[i].value.indexOf("--")!=0 ) {
                  msg += "<tr><td>" + fields[i].name + ': </td><td>' + fields[i].value + '</td></tr>';
                  raw[fields[i].name] = fields[i].value;
              } else {
                 err = "Please, fill out ALL fields.";
                 break;
              }
          }
       }
      
  }
  if ( !err ) {
       raw[' __email_content'] = msg+"</table>";
       return onSendMessage( raw );
  } else {
      alert( err );
      return false;
  }
}

/*
onSendMessage = function( uname, content ) {

//  var uname = trim( document.getElementById("senderName").value );
//  var umail = trim( document.getElementById("sendTo").value );
//  var content = trim( document.getElementById("msg").value );

  // create transport
  var transport = false;
  try {
     transport = new XMLHttpRequest();
  } catch(e) {
     try {
        transport = new ActiveXObject('Msxml2.XMLHTTP');
     } catch(e) {
        try {
           transport = new ActiveXObject('Microsoft.XMLHTTP');
        } catch(e) {}
     }
  }
//  transport.status = null;
  var params = "cmd=sendmail&content="+encodeURIComponent("From: "+uname+"\n\n"+content);
  transport.open('POST', "incs/sendmail.php", false );
  transport.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  transport.setRequestHeader("Accept-Charset", "utf-8");
  transport.setRequestHeader("Content-length", params.length);
  transport.setRequestHeader("Connection", "close");
  transport.send(params);
  var result = null;
  if ( transport.readyState == 4 ) {
      result = transport.responseXML;
  }

  if ( result ) {
      result = result.documentElement;
      if ( result.getAttribute("result") == 'true' ) {
          alert( "Отправка прошла успешно" );
          return;
      }
  }
  alert( "Ошибка при отправке" );
}


clearForm = function() {
  var fields = document.forms[0].getElementsByTagName("input");
  for ( var i = 0;  i < fields.length;  ++ i ) {
      fields[i].value = '';
  }

  fields = document.forms[0].getElementsByTagName("textarea");
  for ( i = 0;  i < fields.length;  ++ i ) {
      fields[i].value = '';
  }

}

sendForm = function( from ) {
  var tbl = document.getElementById("forsendform");
  var msg = "";
  for ( var i=0;  i < tbl.rows.length;  ++ i ) {
      msg += "\n" + tbl.rows[i].cells[0].innerHTML + ':  ';
      var tmp = tbl.rows[i].cells[1].getElementsByTagName("input");
      if ( tmp.length ) {
          msg += tmp[0].value;
      } else {
          tmp = tbl.rows[i].cells[1].getElementsByTagName("textarea");
          if ( tmp.length ) {
              msg += tmp[0].value;
          } else {
              tmp = tbl.rows[i].cells[1].getElementsByTagName("select");
              if ( tmp.length ) {
                  msg += tmp[0].options[tmp[0].selectedIndex].value;
              }
          }
      }
  }
//  alert( msg );
  onSendMessage( from, msg );

}
*/
setDaysSelect = function( tomorrow ) {
  var y = new Date();
  if ( tomorrow ) {
      y = new Date( y.getTime()+1000*60*60*24*30 );
      document.getElementById("f_month").selectedIndex = y.getMonth()-1;
      document.getElementById("f_day").selectedIndex = y.getDate()-1;
  }


  y = y.getFullYear();

  var m = document.getElementById("f_month").selectedIndex;
  if ( m==0 || m==2 || m==4 || m==6 || m==7 || m==9 || m==11 ) {
      m = 31;
  } else if ( m!=1 ) {
      m = 30;
  } else {
      m = 28;
      if ( !(y%4) ) {
          m = 29;
      }
  }

  var d = document.getElementById("f_day");
  for ( var i=d.length-1; i >= m; --i ) {
       d.removeChild(d[i]);
  }
  for ( var i=d.length; i < m; ++i ) {
       var o = document.createElement("OPTION");
       o.innerHTML = 1+i;
       d.appendChild(o);
  }
}

SetModelLine = function( sid ) {
  var msel = document.getElementById("selModel");
  for ( var i=msel.options.length-1; i > 0;  -- i ) {
      msel.removeChild(msel.options[i]);
  }

  var req = new XHTTP_Request();
  var xml = req.Request( 'xml', 'incs/xhtml.php?cmd=getmodels&pid='+sid, '' );
  if ( xml ) {
      xml = xml.documentElement;
      if ( xml && xml.getAttribute("result") == 'true' ) {
          var els = xml.getElementsByTagName("model");
          for ( var i = 0;  i < els.length;  ++ i ) {
              var o = document.createElement("OPTION");
              o.value = els[i].getAttribute("id");
              o.setAttribute("targetpage", els[i].getAttribute("target") );
              o.innerHTML = els[i].getAttribute("name");
              msel.appendChild(o);
          }
      }
  }
}


gotoModel = function() {
  var sel = document.getElementById("selChass");
  if ( sel.selectedIndex < 0 ) {
      alert( "Выберите шасси" ); return;
  }
  sel = document.getElementById("selModel");
  if ( sel.selectedIndex < 0 || sel.options[sel.selectedIndex].getAttribute("targetpage") < 1 ) {
      alert( "Выберите модель" ); return;
  }
  location.href = "http://"+location.host+location.pathname+"?pid="+sel.options[sel.selectedIndex].getAttribute("targetpage");
}


searchResource = function( pg ) {
  var str = trim( document.getElementById("searchField").value );
  var req = new XHTTP_Request();
  var xml = req.Request( 'xml', 'incs/xhtml.php?cmd=search&pagenum='+pg+'&str='+encodeURIComponent(str), '' );
  if ( xml ) {
      xml = xml.documentElement;
      if ( xml && xml.getAttribute("result") == 'true' ) {
          // clear pagebody area
          var div = document.getElementById("pageBodyArea");
          var els = xml.getElementsByTagName("find");
          var str = "<table width='100%' height='100%' class='paging'><tbody><tr><td><h1 class='pagehdr'>Результаты поиска (" + xml.getAttribute("total") + ")</h1><br></td></tr>";
          for ( var i = 0;  i < els.length;  ++ i ) {
              str += "<tr><td><h3>" + els[i].getAttribute("header")+"</h3>"
                  + els[i].childNodes[0].nodeValue
                  + "<div style='text-align:right;margin:10px;margin-bottom:20px;'><a class='goto' href='index.php?pid="+els[i].getAttribute("id")+"'>подробнее</a></div></td></tr>";
          }
          str += "<tr><td height='100%'>";
          for ( i = 1;  i <= xml.getAttribute("pagesnum"); ++ i ) {
              if ( i == pg ) {
                  str += "<a href='javascript:void(0)' class='pagingsel'>"+i+"</a>&nbsp;&nbsp;&nbsp;";
              } else {
                  str += "<a href='javascript:searchResource("+i+")' class='paging'>"+i+"</a>&nbsp;&nbsp;&nbsp;";
              }
          }
          div.innerHTML = str + "</td></tr></tbody></table>";
      }

  }
}

gotoPage = function(pid) {
  location.href = "http://"+location.host+location.pathname+"?pid="+pid;
}