function loadStop ()
{
	var obj = document.getElementById('loader');
    if (obj != null) obj.style.display = 'none';
}
function loadStart()
{
	var obj = document.getElementById('loader');
	if (obj != null)
	{
		obj.style.display = 'block';
		obj.style.top = document.body.clientHeight/2 - ( obj.offsetHeight )/2 + document.body.scrollTop;
		obj.style.left = (document.body.clientWidth -  obj.offsetWidth)/2   
	}
}
function newAJAX(){
	var request = false;
	try {
	  request = new XMLHttpRequest();
	} catch (trymicrosoft) {
	  try {
	    request = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (othermicrosoft) {
	    try {
	      request = new ActiveXObject("Microsoft.XMLHTTP");
	    } catch (failed) {
	      request = false;
	    }
	  }
	}
	if (!request){
	  alert("Error initializing XMLHttpRequest!");
	}
	return(request);
}

var httpAJAX=newAJAX();
var resAJAX='';

function getAJAX(ajax,ur){
//	alert(ur);
	ajax.open("GET", ur, true);
	ajax.onreadystatechange = updatePage;
	ajax.send(null);
	return ajax;
}

function getAJAX_with_prefix(ajax,ur,str){
//	alert(ur);
	ajax.open("GET", ur, true);
	eval('ajax.onreadystatechange = updatePage'+str);
	ajax.send(null);
	return ajax;
}


function updatePage(){
	if (httpAJAX.readyState == 4) {
		if (httpAJAX.status == 404) alert("AJAX: Request URL does not exist");
		if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
	    var response = httpAJAX.responseText;
		resAJAX=response;
 	}
	return resAJAX;
}

function updatePage_eval(){
	if (httpAJAX.readyState == 4) {
		if (httpAJAX.status == 404) alert("AJAX: Request URL does not exist");
		if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
	    var response = httpAJAX.responseText;
		resAJAX=response;
		//alert(resAJAX);
		eval(resAJAX);
		wait('off');
 	}
	
}

function getPageContent(ajax)
{
//	alert(ajax.readyState);
//	alert(ajax.readyState);
	if (ajax.readyState == 4)
	{
		if (ajax.status == 404) alert("AJAX: Request URL does not exist");
		if (ajax.status != 200) alert("AJAX: status code is " + ajax.status);
	    return ajax.responseText;
	}
	else return null
}

function updatePage_run()
{ 
	if (httpAJAX.readyState == 4)
	{
		if (httpAJAX.status == 404) alert("AJAX: Request URL does not exist");
		if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
		var response = httpAJAX.responseText;
		loadStop();
		eval(response);
		wait('off');
	}
}
								
function AJAX_run(ur)
{
	loadStart();
	ajax = httpAJAX;
	httpAJAX.open("GET", ur+"&random="+Math.random(), true);
	eval('httpAJAX.onreadystatechange = updatePage_run');
	httpAJAX.send(null);
	return httpAJAX;
}
function updatePage_universal()
{ 
	if (httpAJAX.readyState == 4)
	{
		if (httpAJAX.status == 404) alert("AJAX: Request URL does not exist");
		else if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
		else{
			loadStop();
			var resAJAX = httpAJAX.responseText; //alert(resAJAX);
			var arrayJavaScript = new Array();
			var a = 0;
			while (resAJAX.indexOf('{JavaScript}') > 0 & a < 10)
			{
				var indexStart = resAJAX.indexOf('{JavaScript}') + 12; 
				var indexEnd = resAJAX.indexOf('{/JavaScript}');
				arrayJavaScript[a] = resAJAX.substr(indexStart, indexEnd - indexStart);
				a++;
				resAJAX = resAJAX.substr(0, indexStart - 12) + resAJAX.substr(indexEnd + 13, resAJAX.length);
			}
			for (a = 0; a < arrayJavaScript.length; a++) eval (arrayJavaScript[a]);
		}
	}
}
								
function AJAX_universal(ur)
{
	loadStart();
	httpAJAX.open("GET", ur, true);
	eval('httpAJAX.onreadystatechange = updatePage_universal');
	httpAJAX.send(null);
	return httpAJAX;
}

function updatePage_form()
{ 
	if (httpAJAX.readyState == 4)
	{
		if (httpAJAX.status == 404) alert("Информация устарела. Уже не сущетвует данного запроса/сообщения.");
		else if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
		else{
			loadStop();
			var resAJAX = httpAJAX.responseText; //alert(resAJAX);
			var arrayJavaScript = new Array();
			var a = 0;
			while (resAJAX.indexOf('{JavaScript}') > 0 & a < 10)
			{
				var indexStart = resAJAX.indexOf('{JavaScript}') + 12; 
				var indexEnd = resAJAX.indexOf('{/JavaScript}');
				arrayJavaScript[a] = resAJAX.substr(indexStart, indexEnd - indexStart);
				a++;
				resAJAX = resAJAX.substr(0, indexStart - 12) + resAJAX.substr(indexEnd + 13, resAJAX.length);
			}
			popUpHandlerNew.popHide();
			popUpHandlerNew.view(resAJAX);
			for (a = 0; a < arrayJavaScript.length; a++) eval (arrayJavaScript[a]);
			
		}
	}
}
								
function AJAX_FORM(ur, formName, formWidth, formHeight)
{
	loadStart();
	if (formWidth == null) formWidth = 100;
	if (formHeight == null) formHeight = 100;
	popUpHandlerNew.createHelpTip(formName, formWidth, formHeight);
	httpAJAX.open("GET", ur+"&random="+Math.random(), true);
	eval('httpAJAX.onreadystatechange = updatePage_form');
	httpAJAX.send(null);
	return httpAJAX;
}




function updatePage_getText()
{ 
	if (httpAJAX.readyState == 4)
	{
		if (httpAJAX.status == 404) alert("AJAX: Request URL does not exist");
		if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
		var response = httpAJAX.responseText; //	alert(response);
		if (resAJAX.indexOf('{script}') > 0)
		{
			JavaScript = resAJAX.substr(resAJAX.indexOf('{script}'), resAJAX.indexOf('{/script}'));
			resAJAX = resAJAX.replace(JavaScript, "");
			JavaScript = JavaScript.replace('{script}', '');
			JavaScript = JavaScript.replace('{/script}', '');
			
		}
	}
}

function AJAX_getText(ur)
{
	ajax = httpAJAX;
	httpAJAX.open("GET", ur, true);
	eval('httpAJAX.onreadystatechange = updatePage_getText');
	httpAJAX.send(null);
	return httpAJAX;
}


function updatePage_get(add)
{ 
	if (httpAJAX.readyState == 4)
	{
		if (httpAJAX.status == 404) alert("AJAX: Request URL does not exist");
		if (httpAJAX.status != 200) alert("AJAX: status code is " + httpAJAX.status);
		var response = httpAJAX.responseText;
		return response;
	}
}
								
function AJAX_get(ur, add)
{
	ajax = httpAJAX;
	httpAJAX.open("GET", ur, true);
	eval('httpAJAX.onreadystatechange = updatePage_get_'+add);
	httpAJAX.send(null);
	return httpAJAX;
}
document.write('<div style="display:none;position:absolute; z-index:2;" id="wait_img"><img src="/images/indicator_remembermilk_orange.gif"></div>');
//document.write('<div style="visibility:hidden;position:absolute; z-index:2;" id="wait_img"><b><img src="/images/indicator_remembermilk_orange.gif"></b></div>');

//определяем браузер 
isOpera=isOpera5=window.opera&&isDOM; //Opera 5+ 
isMSIE=document.all&&document.all.item&&!isOpera; //MSIE 4+ 
isMozilla=navigator.appName=="Netscape"; //Mozilla 

function wait (status)
{
if (isMSIE || isOpera)
{ 
	if (status=='on') {
		document.getElementById("wait_img").style.left=event.clientX + document.body.scrollLeft;
		document.getElementById("wait_img").style.top=event.clientY + document.body.scrollTop;
		document.getElementById("wait_img").style.display = 'block';
		}
	else if (status=='off')
	{
		document.getElementById("wait_img").style.display = 'none';
	}
} 
//находим координаты мышки в Мозилле 
else if (isMozilla){
	document.onmousemove=function(e)
	{ 
	if (status=='on') {
		document.getElementById("wait_img").style.left=e.pageX;
		document.getElementById("wait_img").style.top=e.pageY;
		document.getElementById("wait_img").style.display = 'block';
		}
	else if (status=='off') {
		document.getElementById("wait_img").style.display = 'none';
		}

	}
	}
}

//	собирает все параметры формы в строку
function getParams(formID)
{
	var formObj = document.getElementById(formID);
	if (formObj == null) return '';
	else
	{
		var str = '';
		for(var i = 0; i < formObj.length; i++)
		{
			obj = formObj.elements[i];
			str = str + obj.name + '=' + obj.value.replace('\n', '<br>') + '&';
		}
		return str;
	}
}

