var req;

function change_series_list( is_new, use_id ) {
   
   obj = is_new ? document.new_car : document.used_car;
   obj.series.options[0].selected = true;
   obj.series.disabled = true;
   loadXMLDoc( '/cgi-bin/catalog/get_xml_list.pl?tm_synonym=' + obj.tm.options[obj.tm.selectedIndex].value + '&new=' + is_new, is_new, use_id );
   
}

function loadXMLDoc( url, is_new, use_id ) {
   if( window.XMLHttpRequest ) {
      req = new XMLHttpRequest();
      if( is_new ) {
         
         if( use_id ) {
            req.onreadystatechange = function() { processReqChange( document.new_car.series, 1 ) };
         } else {      
            req.onreadystatechange = function() { processReqChange( document.new_car.series ) };
         } // End if
         
         
      } else {
         req.onreadystatechange = function() { processReqChange( document.used_car.series ) };
      } // End if
      
      req.open( "GET", url, true );
      req.send( null );
   } else if( window.ActiveXObject ) {
      req = new ActiveXObject( "Microsoft.XMLHTTP" );
      if( req ) {
      
      if( is_new ) {
         
         if( use_id ) {
            req.onreadystatechange = function() { processReqChange( document.new_car.series, 1 ) };
         } else {      
            req.onreadystatechange = function() { processReqChange( document.new_car.series ) };
         } // End if
         
         
      } else {
         req.onreadystatechange = function() { processReqChange( document.used_car.series ) };
      } // End if

         req.open( "GET", url, true );
         req.send();
      }
   }
}

function processReqChange( obj, use_id ) {
   if( req.readyState == 4 ) {
      if( req.status == 200 ) {
         
         var response = req.responseXML.documentElement;
         var items = response.getElementsByTagName( "item" );
         while( obj.childNodes.length ) obj.removeChild( obj.childNodes[ 0 ] );
         
         var oOption = document.createElement( "OPTION" );
         obj.options.add( oOption );
         oOption.text = 'выберите модель'; oOption.value = 0;
         
         for( var i = 0; i < items.length; i++ ) {
            var oOption = document.createElement( "OPTION" );
            obj.options.add( oOption );
            oOption.text = items[ i ].getAttribute( 'name' );
            if( use_id ) {
               oOption.value = items[ i ].getAttribute( 'id' );
            } else {
               oOption.value = items[ i ].getAttribute( 'synonym' );
            } // End if
         
         } // End for
         if( items.length == 0 ) {
            obj.disabled = true;
         } else {
            obj.disabled = false;
         } // End if
   
      } else {
         alert("There was a problem retrieving the XML data:\n" + req.statusText);
         
      }
   }
}


function change_url( obj, is_new ) {
   
   tm_obj = obj.tm;
   series_obj = obj.series;
   var new_url = is_new ? '/new_car/' : '/used_car/';
   
   if( tm_obj.selectedIndex > 0 ) new_url += tm_obj.options[tm_obj.selectedIndex].value;
   if( series_obj.selectedIndex > 0 ) new_url += '/' + series_obj.options[series_obj.selectedIndex].value;
   window.location = new_url;
   return false;

} // End sub change_url




