var temp="";
var timeOnDiv;
var tmpid;
var tmpurl;

function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}

function check(id,url)
{
//alert("Очистка");
if (id.checked) id.checked=false;
else id.checked=true;
doLoad(url+doCl());
}

function doLoad(url) { 
//alert(url);
temp=url;
if (window.XMLHttpRequest) {   
request = new XMLHttpRequest();   
request.onreadystatechange = processRequestChange;   
request.open("GET", url, true);   
request.send(null);   
} else if (window.ActiveXObject) {   
request = new ActiveXObject("Microsoft.XMLHTTP");   
if (request) {   
request.onreadystatechange = processRequestChange;   
request.open("GET", url, true);   
request.send();   
}   
}   
}

function getRequestStateText(code) {   
switch (code) {   
case 0: return "Выполняется расчет..."; break;   
case 1: return "Выполняется расчет..."; break;   
case 2: return "Выполняется расчет..."; break;   
case 3: return "Выполняется расчет..."; break;   
case 4: return "Расчет окончен!"; break;   
}   
} 

function operation(this_s,value,count)
{
if (this_s.checked)
   {
      count='*'+count;
	  document.getElementById("responseHTML").innerHTML=eval(document.getElementById("responseHTML").innerHTML+value+count); 
   }
}

function doCl() {
var a='';
var res='';
frm=document.forms[0];
for (i=0; i<frm.length; i++)
	if (frm[i].checked) {
	  res=''; 
      if (frm[i].getAttribute('many')=='many') 
	   {
	   res=document.getElementById(frm[i].getAttribute('links')).value;
	   if (res=='') {res=0;}
	   //valueK=frm[i].value;
	   //valueL=document.getElementById(frm[i].links).value;
	   //alert(valueK.substr(1,valueK.lenght)*valueL);
	   //op=valueK.substr(1,valueK.lenght)*valueL;
	   //res+=valueK.substr(0,1)+op;
	   }
    else res=1; //res+=frm[i].value;
	a+=frm[i].getAttribute('realname')+'^'+res+':';
   }
//alert(a);
return a;
}
  
  
/**  
* Event on request change  
* Собственно, обработчик события onreadystatechange.  
* Здесь мы, в зависимости от состояния запроса,  
* будем скрывать / показывать слои "Загрузка данных",  
* само поле данных и т.д.  
*/  
function processRequestChange() {   
//alert(request.readyState);
//alert(request.status);
//document.getElementById("resultdiv").style.display = 'none';   
document.getElementById("state").innerHTML = getRequestStateText(request.readyState);   
abortRequest = window.setTimeout("request.abort();", 10000);   
// если выполнен   
if (request.readyState == 4) {   
clearTimeout(abortRequest);   
//document.getElementById("statuscode").value = request.status;   
//document.getElementById("statustext").value = request.statusText;   
// если успешно   
if (request.status == 200) { 
//alert(request.responseText);  
//document.getElementById("resultdiv").style.display = 'block';   
document.getElementById("responseHTML").innerHTML = request.responseText; 
//for (i=3;i<10;i++)
//{
//document.getElementById('koeff'+i).checked=false;  
//}  
} else {   
//alert("Не удалось получить данные:n" + request.statusText);
//alert(temp);
doLoad(temp);   
}   
//document.getElementById("loading").style.display = 'none';   
}   
// иначе, если идет загрузка или в процессе - показываем слой "Загружаются данные"   
else if (request.readyState == 3 || request.readyState == 1) {   
//document.getElementById("loading").style.display = 'block';   
}
}   

