//-------------------------------------------------------------------------------------------------------------//
//alert('!!!!!!!!!!!');
var xmlHttp = createXMLHttpRequestObject();
function createXMLHttpRequestObject(){
 // для хранения  
 var xmlHttp;
 if (window.ActiveXObject){
     try{
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");     
     } catch (e) {
        xmlHttp = false;     
     }
 
 }else{
    try{
       xmlHttp = new XMLHttpRequest();
    } catch (e){
       xmlHttp = false;
    }
 }
 
 
 if (!xmlHttp)
    alert ("Ошибка создания объекта XMLHttpRequest");  
 else
    return xmlHttp;
   //alert (xmlHttp);
}

// Выполнение асинхронного зароса при помощи соответсвующего объекта
function GetItems2(a){
 waitList('doc_id');

 //alert (a);
 if (xmlHttp.readyState==4 || xmlHttp.readyState==0 ){
    // получам идентификатор раздела выбранного пользователем
    if(a.options[a.selectedIndex].value!='#')
       top_id=a.options[a.selectedIndex].value;
    //alert (top_id);
    // вызываем внешний сценарий
    xmlHttp.open("GET","/getItems.php?top_id="+top_id,true);//http://metris.dextra.ru
   // alert ("http://sim74/getItems.php?top_id="+top_id);
    // определяем  метод, который будет обрабатывать ответы сервера
    xmlHttp.onreadystatechange = handleServerResponse;
    // посылаем асинхронный запрос серверу
    xmlHttp.send(null);
    } else {
      //setTimeout ('GetItems('+a+')',1000);
    } 
 }

// Выполнение асинхронного зароса при помощи соответсвующего объекта это унас для остатков
function GetItems3(a){
 waitList('top_id');

 //alert (a);
 if (xmlHttp.readyState==4 || xmlHttp.readyState==0 ){
    // получам идентификатор раздела выбранного пользователем
    if(a.options[a.selectedIndex].value!='#')
       top_id=a.options[a.selectedIndex].value;
    //alert (top_id);
    // вызываем внешний сценарий
    xmlHttp.open("GET","/getItems2.php?top_id="+top_id,true); //http://metris.dextra.ru
   // alert ("http://sim74/getItems.php?top_id="+top_id);
    // определяем  метод, который будет обрабатывать ответы сервера
    xmlHttp.onreadystatechange = handleServerResponse2;
    // посылаем асинхронный запрос серверу
    xmlHttp.send(null);
    } else {
      //setTimeout ('GetItems('+a+')',1000);
    } 
 }

function waitList(listname){
    //alert("waitList");.regform
    var select_obj= document.getElementById(listname);
    //eval("var select_obj= document.frm."+listname);
    /*
    if(select_obj == null)
        alert("select_obj == null");
    else
        alert("select_obj != null");
    */   
    while(select_obj.length > 0)    //// удаление всех элементов
        select_obj.remove(0);   //удаление элементов списка     
    select_obj.options[select_obj.options.length]
        = new Option('Подождите...', 0, false, false);
}

function handleServerResponse(){
   // завершена ли транзакция с сервера
   if (xmlHttp.readyState==4){
      // код ответа все ли нормалек?
      //alert ("!!!!!111");
      if (xmlHttp.status == 200){
         // извлечь XML полученный от сервера         
         //xmlResponse = xmlHttp.responseText;
         xmlResponse = xmlHttp.responseXML;          
         //alert (xmlResponse);
         // обработка ответа и заполнение списка другого
          xmlDocumentElement  = xmlResponse.documentElement;
         //alert (xmlDocumentElement);
          items = xmlDocumentElement.getElementsByTagName("item");
          var select_obj  = document.getElementById('doc_id');
          select_obj.remove(0);   //удаление элементов списка     
          //alert (select_obj);
          select_obj.options[select_obj.options.length]= new Option('Выбрать...', '#', false, false);
          for (var i=0;i<items.length;i++){
            attributes=items[i].attributes;
            select_obj.options[select_obj.options.length]= new Option(attributes[1].value, attributes[0].value, false, false);
            //alert (attributes[0].name+" = "+attributes[0].value );          
          }
         //конец обработки
         //setTimeout('GetItems('+a+')',1000);      
      }else{
         alert("При обращению к серверу возникли проблемы"+xmlHttp.statusText);
      }                              
   }
}

// остатки
function handleServerResponse2(){
   // завершена ли транзакция с сервера
   if (xmlHttp.readyState==4){
      // код ответа все ли нормалек?
      //alert ("!!!!!111");
      if (xmlHttp.status == 200){
         // извлечь XML полученный от сервера         
         //xmlResponse = xmlHttp.responseText;
         xmlResponse = xmlHttp.responseXML;          
         //alert (xmlResponse);
         // обработка ответа и заполнение списка другого
          xmlDocumentElement  = xmlResponse.documentElement;
         //alert (xmlDocumentElement);
          items = xmlDocumentElement.getElementsByTagName("item");
          var select_obj  = document.getElementById('top_id');
          select_obj.remove(0);   //удаление элементов списка     
          //alert (select_obj);
          select_obj.options[select_obj.options.length]= new Option('Выбрать...', '#', false, false);
          for (var i=0;i<items.length;i++){
            attributes=items[i].attributes;
            select_obj.options[select_obj.options.length]= new Option(attributes[1].value, attributes[0].value, false, false);
            //alert (attributes[0].name+" = "+attributes[0].value );          
          }
         //конец обработки
         //setTimeout('GetItems('+a+')',1000);      
      }else{
         alert("При обращению к серверу возникли проблемы"+xmlHttp.statusText);
      }                              
   }
}


