	var qn='';
	var nqry='';
	var nres='';
	var obj=null;
	var obj2=null;
	var tsfrom='';
	var tsto='';
	var tsdate='';
	var ShowReq=true;
	var sarray=new Array('111');
	var oldquerya='';
	var oldqueryb='';
	
	var cost=0;
	
	var lasttime = '';
	var fullanswere = true;
	
	var clickedMesto = '';
	
	var vagon = '';
	var smesta = '';
	var mestcnt = 0;
	var selectedMestaArr	= new Array();
	
	// посылаем на сервер запрос по выбору станций
    function doLoad() {
    	
    	nqry='query'+qn;
		nres='result'+qn;
        
        // выбираем что на данный момент введено в поле ввода, по которому запрашивается информация
        var squery = '' + document.getElementById(nqry).value; //+nqry
        
        var req = new Subsys_JsHttpRequest_Js();
        
        // описываем обработчик события
        req.onreadystatechange = function() {
        	if (req.readyState == 4) {
                if (req.responseJS) {
                    document.getElementById(nres).innerHTML = req.responseJS.selesr;//+req.responseJS.selname //+nqry
                    sarray= req.responseJS.selotpr;
                    if (nqry=='queryb') {
                     	obj2.actb_keywords = sarray;
                    	obj2.actb_isfresh=1;
                    } else {
                    	obj.actb_keywords = sarray;
                    	obj.actb_isfresh=1;
                    } 
                    if ((document.getElementById('resulta').innerHTML=='_______') || (document.getElementById('resultb').innerHTML=='_______')) {
                    	document.getElementById('but60').disabled=true;document.getElementById('but3').disabled=true;
                    } else { 
                    	document.getElementById('but60').disabled=false;
                    	document.getElementById('but3').disabled=false; 
                    }
               	}
               	
               	if (ShowReq){
               		// Отладочная информация.
                	document.getElementById('debug').innerHTML = req.responseText;
                }
            }
        }
        //req.caching = true;
        req.caching = false;
        req.open('POST', '../_q/load_stant.php', true);
        req.send({ stotpr: squery, kstotpr: ''});
	}
	var timeout = null;

	// Вызывается при отпускании клавиши в поле ввода станции отправления/назначения
	// qnum может принимать значения 'a' или 'b' в зависимости от станции назначения/отправления	
	function doLoadUp(qnum) {
    
    	var tmpoldquery = '';
    	
    	tmpoldquery = (qnum=='b')?oldqueryb:oldquerya;
    	
	   	qn=qnum;
    	
    	// если скорость ввода больше чем 1симв/600мс, то сбрасываем таймер ожидания запроса
    	//if (timeout) clearTimeout(timeout);
	    
	    // Поле ввода может быть либо querya либо queryb 
	    nqry='query'+qnum;
        
        // Берем содержимое поля ввода
        var squery = '' + document.getElementById(nqry).value;
        
        // Производим задержку после отпускания клавиши перед посылкой запроса в систему
        // Инициируем посылку запроса только если введено более 2 символов, причем новый контент
        // отличается от старого 
//       	if ( squery.length>2 && squery!=tmpoldquery) timeout = setTimeout('doLoad()', 600);
       	if ( squery.length>2 && squery!=tmpoldquery) doLoad();
       	
       	if (qnum == 'b'){
       		oldqueryb = squery;
       	} else {
       		oldquerya = squery;
       	}
        
	}
 	
 	wait_timeout=null;
 	wtime=0;

	// Функция, реализующая отсчет времени выполнения запроса при ожидании ответа сервера 
	function doWaitTimer() {
        if (wait_timeout) clearTimeout(wait_timeout);
        wait_timeout = setTimeout('doWaitTimer()', 1000);
        document.getElementById('timerdiv').innerHTML='<img align=absmiddle src=_q/loading.gif> '+((lid==1)?'Время запроса':'Час запиту')+' <b>'+wtime+'</b> сек.';
        wtime++;
	}
	

	function doLoadReq(reqtype, add) {
 		//      var sstan1query = '' + document.getElementById('querya').value;
 		//      var sstan2query = '' + document.getElementById('queryb').value;
    	var sstan1query = '' + document.getElementById('resulta').innerHTML;
    	var sstan2query = '' + document.getElementById('resultb').innerHTML;
    	var datequery = '' + document.getElementById('sdate').innerHTML;
    	var askreq = new Subsys_JsHttpRequest_Js();
    	var fullanswere = true;
        
        askreq.onreadystatechange = function() {
            if (askreq.readyState == 4) {
                if (askreq.responseJS) {
           			document.getElementById('otvet').style.display='';
           			document.getElementById('progress').style.display='none';
                   	if (wait_timeout) clearTimeout(wait_timeout);
                   	if (add){
                   		document.getElementById('subotvet').innerHTML += askreq.responseJS.answer;
                   	} else {
                   		document.getElementById('subotvet').innerHTML = askreq.responseJS.answer;
                   	}
                   	fullanswere = askreq.responseJS.fullanswere;
                   	// если ответ недополучен, то пробуем дапросить его еще раз с признаком добавления "true" и последим временем отправления
                   	if (!fullanswere){
                   		lasttime = askreq.responseJS.lasttime;
                   		doLoadReq(reqtype, true);
                   	} else {
                   		lasttime = '';
                   	}
                }
                if (ShowReq){
               		// Отладочная информация.
                	document.getElementById('debug').innerHTML = askreq.responseText;
                }
            }
        }
        
        askreq.caching = false;
        askreq.open('POST', '../_q/load_req_'+reqtype+'.php', true);
        askreq.send({ kstotpr: sstan1query, kstprib: sstan2query, sdate:datequery, time_from: lasttime});
    }


	function createlists(){
		obj = new actb( document.getElementById('querya') ,sarray);
		obj.actb_timeOut = 5000;
		obj.actb_lim = 15;
		obj.actb_firstText = true;
		obj.actb_startcheck = 2;
		
		obj2 = new actb( document.getElementById('queryb') ,sarray);
		obj2.actb_timeOut = 5000;
		obj2.actb_lim = 15;
		obj2.actb_firstText = true;
		obj2.actb_startcheck = 2;
	}

	function chdate(str){
		//window.f1.but1.focus();
		//window.f1.sdate.value=str;
		document.getElementById('sdate').innerHTML=str;
		}

	function EscFunc(){
		document.getElementById('InfoDiv').style.display='';
		document.getElementById('zapros').style.display='';
		document.getElementById('otvet').style.display='none';
		document.getElementById('progress').style.display='none';

		document.getElementById('querya').value=tsfrom;
		document.getElementById('queryb').value=tsto;
		document.getElementById('sdate').innerHTML=tsdate;

		createlists();
	}

	var ReqFormHTML='';

	function f1submit(reqtype) {
		//obj		=null;
		//obj2	=null;
		document.getElementById('zapros').style.display = 'none';
		document.getElementById('progress').style.display = '';
		tsfrom 	= document.getElementById('querya').value;
		tsto 	= document.getElementById('queryb').value;
		tsdate	=document.getElementById('sdate').innerHTML;
		doLoadReq(reqtype, false);
		document.getElementById('InfoDiv').style['display']="none";
//		ReqFormHTML=document.getElementById('otvet').innerHTML;
//		document.getElementById('otvet').innerHTML=document.getElementById('progress').innerHTML;
		wtime	=0;
		wait_timeout = setTimeout('doWaitTimer()', 10);
		return false;
	}
	
	function G81S(train,stotpr,stprib,sdate,typevag) {
		//obj		=null;
		//obj2	=null;
		document.getElementById('zapros').style.display = 'none';
		document.getElementById('otvet').style.display = 'none';
		document.getElementById('progress').style.display = '';
		G81Load(train,stotpr,stprib,sdate,typevag);
		document.getElementById('InfoDiv').style['display']="none";
		wtime	=0;
		wait_timeout = setTimeout('doWaitTimer()', 10);
		return false;
	}
 
 	function WaitPrice(dvname){
		document.getElementById('W'+dvname).innerHTML='<center><img align=absmiddle src=_q/loading.gif> Запрос стоимости проезда 0 сек.</center>';
 		//alert(dvname);
		setTimeout('incCount(\'W'+dvname+'\',1);', 1000);
	}

	function incCount(idivname,inccounter){
 		var icounter=inccounter;
  		var divname=''+idivname;
  		var tdivname='T'+idivname;
 		//alert(divname);
 		var dst=document.getElementById(divname);
		//if (dst.indexOf('nbsp')==-1) {
		if (dst.style["display"]!="none") {
 			document.getElementById(divname).innerHTML='<center><img align=absmiddle src=_q/loading.gif> Запрос стоимости проезда '+icounter+' сек. </center>';
 			icounter++;
 			setTimeout('incCount(\''+divname+'\','+icounter+');', 1000);
 		} else {document.getElementById(divname).innerHTML=document.getElementById(tdivname).innerHTML; dst.style["display"]="";}
	}


	function GetPrice(div_id,train,stotpr,stprib,sdate) {
		
		var sstan1query = '' + stotpr;
      	var sstan2query = '' + stprib;
      	var datequery = '' + sdate;
      	var strain= ''+ train;
      	var askreq = new Subsys_JsHttpRequest_Js();
      	var did= ''+ div_id;
      	document.getElementById(did).style["display"]="none";
      	var wdid= 'W'+ div_id;
      	var tdid= 'TW'+ div_id;
      	document.getElementById(tdid).style["display"]="none"
      	document.getElementById(tdid).innerHTML=document.getElementById(wdid).innerHTML;
      	WaitPrice(did);
        
        askreq.onreadystatechange = function() {

            if (askreq.readyState == 4) {
                if (askreq.responseJS) {
 //                   document.getElementById(wdid).innerHTML=document.getElementById(did).innerHTML;
                   	document.getElementById(did).innerHTML=askreq.responseJS.answer;
                   	document.getElementById(wdid).style["display"]="none";
                   	document.getElementById(did).style["display"]="";
                 }
                document.getElementById('debug').innerHTML = askreq.responseText;
            }
        }
        
        askreq.caching = false;
        askreq.open('POST', '../_q/load_req_g30.php', true);
        askreq.send({ kstotpr: sstan1query, kstprib: sstan2query, sdate:datequery, ntrain:strain});
       // alert(div_id);
	}


	function G81Load(train,stotpr,stprib,sdate,typevag) {
		
		var sstan1query = '' + stotpr;
      	var sstan2query = '' + stprib;
      	var datequery = '' + sdate;
      	var strain= ''+ train;

      	var askreq = new Subsys_JsHttpRequest_Js();

        askreq.onreadystatechange = function() {

            if (askreq.readyState == 4) {
                if (askreq.responseJS) {
           			document.getElementById('otvet').style.display='';
           			document.getElementById('progress').style.display='none';
                   	if (wait_timeout) clearTimeout(wait_timeout);
                   	document.getElementById('subotvet').innerHTML=askreq.responseJS.answer;
                 }
            }
        }
        
        askreq.caching = false;
        askreq.open('POST', '../_q/load_req_g81.php', true);
        askreq.send({ kstotpr: sstan1query, kstprib: sstan2query, sdate:datequery, ntrain:strain, typevag:typevag});
       // alert(div_id);
	}

	function RezLoad(stotpr, stprib, sdate, train, vagtype) {
		
      	var askreq = new Subsys_JsHttpRequest_Js();

        askreq.onreadystatechange = function() {

            if (askreq.readyState == 4) {
                if (askreq.responseJS) {
           			document.getElementById('otvet').style.display='';
           			document.getElementById('progress').style.display='none';
                   	document.getElementById('subotvet').innerHTML=askreq.responseJS.answer;
                   	if (askreq.responseJS.submit){
                   		var str = 'http://www.pz.gov.ua/_q/checkout.php?zakaz_id='+askreq.responseJS.zakaz_id;
                   		window.location.href = str;
                   	} else {
                   		var hjk=1;
                   	}
                 }
            }
        }
        
        askreq.caching = false;
        askreq.open('POST', '../_q/load_req_p05.php', true);
        askreq.send({ kstotpr: stotpr, kstprib: stprib, sdate: sdate, ntrain:train, typevag: vagtype, vagnom: vagon, smesta: smesta, mestcount: mestcnt});
       // alert(div_id);
	}

	function p05Submit(stan1, stan2, sdate, train, vagtype){
		document.getElementById('zapros').style.display='none';
		document.getElementById('InfoDiv').style.display='none';
		document.getElementById('otvet').style.display='none';
		document.getElementById('progress').style.display='';
		RezLoad(stan1, stan2, sdate, train, vagtype);
		wtime	=0;
		wait_timeout = setTimeout('doWaitTimer()', 10);
		return false;
	}

	
	function overMesta(obj, col){
		//alert(col);
		obj.style.backgroundColor=col;
	}
	
	// В 81-й
	function bulkVagon(strElem){

		var vagelem = document.getElementsByTagName('DIV');
		
		var re = /^vag.*/;
		
		for (var i=0; i<vagelem.length; i++){

			elem = vagelem[i];

			if (elem.id.match(re)){

				if (elem.id == strElem){
					elem.style.display = (elem.style.display=='')?'none':'';
				} else {
					elem.style.display = 'none';
				}				

			}			
		}
	}
	
	function getCheckCount(strElem){
		
		var cnt = 0;
		
		var vagelems = document.getElementById(strElem);
		
		var mestaelem = vagelems.getElementsByTagName('INPUT');
		
		for (var i=0; i<mestaelem.length; i++){
			if (mestaelem[i].checked){
				cnt++;
			}
		}
		
		return cnt;
		
	}
	
	// 81
	function checkClick (strElem){
		clickedMesto = strElem;
		reDraw();
	}

	function getPotrebnost(){
		var potrebnost = 1;
		var epotrebnost = document.getElementsByName('mcnt');
		for (var i=0; i<epotrebnost.length; i++){
			if (epotrebnost[i].checked){
				potrebnost=epotrebnost[i].value;
			}
		}
		return potrebnost;
	}
	
	function setPotrebnost(cnt){
		var epotrebnost = document.getElementsByName('mcnt');
		for (var i=0; i<epotrebnost.length; i++){
			if (epotrebnost[i].value == cnt){
				potrebnost=epotrebnost[i].checked=true;
			}
//			reDwaw();
		}
	}

	// в 81-й
	function reDraw(){
		
		var re = /^vag.*/;
		
		var vagelem = document.getElementsByTagName('DIV');
		var mestoelem = document.getElementById(clickedMesto);
		var potrebnost = getPotrebnost();
		mestcnt = potrebnost;

//		var otmecheno = getCheckCount(strElem);
		var epotrebnost = document.getElementsByName('mcnt');
		for (var i=0; i<epotrebnost.length; i++){if (epotrebnost[i].checked){potrebnost=epotrebnost[i].value;}}
		
		var isMesto = false;
		var cnt = 0;
		
		var selectedMesta = '';
		
		selectedMestaArr = [];
		
		var vagnum = '';
		var tmpmesto = '';
		smesta = '';
		
		for (var i=0; i<vagelem.length; i++){
			
			if (vagelem[i].id.match(re)){
				
				vagnum = vagelem[i].id.replace(/^vag/, '');
				
				var mestoelems = vagelem[i].getElementsByTagName('INPUT');
		
				for (var j=0; j<mestoelems.length; j++){
					if (mestoelems[j]==mestoelem){
						document.getElementById('inputRezerv').disabled = false;
						document.getElementById('uvaga').style.display = '';
						document.getElementById('truvaga').style.display = '';
						vagon = vagnum;
						selectedMesta += 'ВАГОН <font color=red><b>'+vagnum+'</b></font> '+((lid==1)?('(мест'+((potrebnost==1)?'o':'а')+': '):('(міс'+((potrebnost==1)?'тo':'ця'))+': ');
						if (potrebnost>mestoelems.length){
							setPotrebnost(mestoelems.length);
							clickedMesto = mestoelems[0].id;
							reDraw();
							return false; 
						} else if ((mestoelems.length-j)<potrebnost) {
							clickedMesto = mestoelems[mestoelems.length-potrebnost].id;
							reDraw();
							return false;
						} 
						isMesto=true;
					}
					if (isMesto){
						if (vagelem[i].style.display=='none'){vagelem[i].style.display='';}
						mestoelems[j].checked=true;
						selectedMesta += ((cnt==0)?'':', ')+'<font color=blue>'+mestoelems[j].value+'</font>';
						smesta += (cnt==0)?mestoelems[j].value:'';
						tmpmesto = (cnt==0)?'':('-'+mestoelems[j].value);
						selectedMestaArr[selectedMestaArr.length] = mestoelems[j].value;
						cnt++;
						cost = cnt * 10;
					} else {
						mestoelems[j].checked=false;
					}
					if (cnt >= potrebnost){
						isMesto=false;
					}
				}
								
			}
		}
		smesta += tmpmesto;
		document.getElementById('rezerv').innerHTML = (selectedMesta=='')?((lid==1)?'МЕСТА НЕ ВЫБРАНЫ':'МІСЦЬ НЕ ВИБРАНО'):(selectedMesta+')');
		document.getElementById('cost').innerHTML = cost;
	}