//var xmlHttp;
var veryfied=null;
var tryReload=false;
setTimeout("tryReload=true", 1320000);
function GetXmlHttpObject(){
	var xmlHttp=null;
	try{// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e){// Internet Explorer
		try{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

function execRequest(url, formation, obj){ 
	if(url==''){
		alert("No URL");
		return;
	}
	var xmlHttp=new GetXmlHttpObject();
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	xmlHttp.onreadystatechange=function(){ stateChangedXML(xmlHttp,formation, obj);};
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function execPost(url, post, formation, obj){
	if(url==''){
		alert("No URL");
		return;
	}
	var xmlHttp=new GetXmlHttpObject();
	if (xmlHttp==null){
		alert ("Your browser does not support AJAX!");
		return;
	}
	var poststring=post.join('&');
	
	xmlHttp.onreadystatechange=function(){ stateChangedXML(xmlHttp,formation, obj);};
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); 
	xmlHttp.send(poststring);
}

function stateChangedXML(xmlHttp, formation, obj){
	if (xmlHttp.readyState==4){
		try{
			veryfied=xmlHttp.getResponseHeader('AJAX');
		}
		catch(err){//vadinas paklydom
			veryfied=null;
		}
		if(veryfied==1){
			tryReload=true;
			if(typeof(window[formation]) == 'function'){
				window[formation](xmlHttp, obj);//.documentElement);
			}
			else{
				alert("No function for formating response");
			}
		}
		else{
			if(tryReload){
				if(window.top){
					window.top.location.reload();
				}
				else{
					location.reload();
				}
			}
			else{
				var hcode=200;
				try{
					hcode=xmlHttp.getResponseHeader('Status');
				}
				catch(err){//vadinas paklydom
					hcode=-1;
				}
				if(hcode > 400){
					//alert(hcode+" Access forbiden!");
					if(typeof(window[formation]) == 'function'){
						var res=new Object();
						res.responseText='<div id="error_blok"><p class="tit">'+hcode+" Access forbiden!</p></div>";
						window[formation](res, obj);
					}
				}
			}
		}
	}
}
