//if(!__AJAX_request_counter_set){
	var __AJAX_request_counter = 0;
//	__AJAX_request_counter_set = true;
//}
	var __LookupTimeout;
	var __LookupShown;

function domFilterShow(obj){
	var i = __LookupShown++%2+1;
	obj.className='row'+i;
	obj.style.display='table-row';
}

function domFilterIter(list,iter,count,val){
    clearTimeout(__LookupTimeout);
    var oRow = list.item(iter);
    if(val != ''){
        eval('var p = /'+val+'/i');
        if(!p.test(oRow.id)) oRow.style.display='none';
        else domFilterShow(oRow);//.style.display='inline';
    }else domFilterShow(oRow);//oRow.style.display='inline';

    if(iter<count-1)
        __LookupTimeout = setTimeout(function(){domFilterIter(list,iter+1,count,val)}, 10);
}

function domFilter(filterobj,listtable){
    clearTimeout(__LookupTimeout);
    __LookupShown = 0;
    var oTable = document.getElementById(listtable);
    var oSrc = document.getElementById(filterobj);
    __LookupTimeout = setTimeout(function(){domFilterIter(oTable.rows,0,oTable.rows.length,oSrc.value)}, 10);
}

function ajaxDo(url,targetObj,meth,_append,beSilent){
    var cLocal = 'ajax_req'+(++__AJAX_request_counter);
    var silent = beSilent==true?'true':'false';
    var callBackFunc = "function(){AJAXAlter('"+targetObj+"','"+cLocal+"',"+_append+","+silent+");}";
    if (window.XMLHttpRequest){
    	eval(" "+cLocal+" = new XMLHttpRequest();");
		eval(cLocal + ".onreadystatechange = "+callBackFunc+";");
		eval(cLocal + ".open('"+meth+"', \""+url+"\", true);");
		eval(cLocal +".send(null);");
	}else if (window.ActiveXObject){
		eval("var "+cLocal+" = new ActiveXObject(\"Microsoft.XMLHTTP\");");
		eval("if("+cLocal+"){"+
				cLocal+".onreadystatechange = "+callBackFunc+"; "+
				cLocal+".open('"+meth+"', \""+url+"\", true); "+cLocal+".send(); "+
			"}");
	}
}

function changeVisible(id){
   element = document.getElementById(id);
   if(element.style.display=='')
      element.style.display='none';
   else
      element.style.display='';
}

function GetYof(obj) {
   var y = 0;
   while ( obj.offsetParent != null) {
      y += obj.offsetTop;
      obj = obj.offsetParent;
   }
   y += obj.offsetTop;

   return y;
}

function GetXof(obj) {
   var x = 0;
   while ( obj.offsetParent != null) {
      x += obj.offsetLeft;
      obj = obj.offsetParent;
   }
   x += obj.offsetLeft;

   return x;
}

function AJAXAlter(Atarget,Areq,doAppend,beSilent){
   var appendStr = doAppend!=false?"document.getElementById('"+Atarget+"').innerHTML +":'';
   if(!beSilent)
	eval("document.getElementById('"+Atarget+"').innerHTML = "+appendStr+" statA("+Areq+".readyState);");

    eval("if ("+Areq+".readyState == 4){"+
    		"if ("+Areq+".status == 200){ "+
    			"document.getElementById('"+Atarget+"').innerHTML = "+appendStr+" "+Areq+".responseText; "+
    		"}else{ "+
    			"document.getElementById('"+Atarget+"').innerHTML = "+appendStr+" '<b>Не удалось загрузить текст</b>'; "+
    		"}"+
    	 "}");
}

function AJAXAlterExec(Areq){
    eval("if ("+Areq+".readyState == 4){\n"+
    		"if ("+Areq+".status == 200){ \n"+
    			" eval("+Areq+".responseText); \n"+
    		"}else{ \n"+
    			"alert('Не удалось выполнить запрос'); \n"+
    		"}"+
    	 "}");
}

  function statA(n){
 	switch (n){
 		case 0:return "ОШИБКА: AJAX недоступен. Для работы Вам необходимо включить JavaScript";break;
         case 1:return '<img src="images/progress.gif">';
	    break;
         case 2://return "Загрузка данных: 33%...";
	    return '<img src="images/progress.gif">';
	 break;
         case 3://return "Загрузка данных: 70%...";
	 return '<img src="images/progress.gif">';break;
         case 4://return "Загрузка данных: 100%";
	 return '<img src="images/progress.gif">';break;
         default:return "неизвестное состояние. Обратитесь в службу поддержки";break;
     }
 }

function AJAXAction(url, Ftarget, meth, req){
	loadXMLDocA(req, url,Ftarget,meth);
}

function ajaxDoExec(url,meth){
    var cLocal = 'ajax_req'+(++__AJAX_request_counter);
    var callBackFunc = "function(){AJAXAlterExec('"+cLocal+"');}";
    if (window.XMLHttpRequest){
    	eval(" "+cLocal+" = new XMLHttpRequest();");
		eval(cLocal + ".onreadystatechange = "+callBackFunc+";");
		eval(cLocal + ".open('"+meth+"', \""+url+"\", true);");
		eval(cLocal +".send(null);");
	}else if (window.ActiveXObject){
		eval("var "+cLocal+" = new ActiveXObject(\"Microsoft.XMLHTTP\");");
		eval("if("+cLocal+"){"+
				cLocal+".onreadystatechange = "+callBackFunc+"; "+
				cLocal+".open('"+meth+"', \""+url+"\", true); "+cLocal+".send(); "+
			"}");
	}
}

function AJAXExec(Areq){
    eval("if ("+Areq+".readyState == 4){"+
    		"if ("+Areq+".status == 200){ "+
    			"eval("+Areq+".responseText); "+
    		"}else{ "+
    			"alert('Не удалось выполнить запрос'); "+
    		"}"+
    	 "}");
}