AjXml = function(XMLname, XSLname, idResDiv, arrData) {
	var s ='';
	for (var n in arrData) {
		if (typeof arrData[n] == 'string' || typeof arrData[n] == 'number') {
			s += n + '=' + arrData[n] + "&";
		}
	}

     var req = new Ajax.Request(
         XMLname,
         {
			parameters: s,
            method: 'post',
            onSuccess:
			//Start

function(resp) {
      if(XsltClient.isGecko()) {
                try {
                       var node = XsltClient.transformDOM(resp, XSLname).documentElement.cloneNode(true);
						$(idResDiv).parentNode.replaceChild(node, $(idResDiv));
                }
                catch(e) {
                        alert(e);
                }
				// scroll patching :
				$('ajax_in').style.top = (parseInt(window.scrollY) + 320) + 'px';
        } else {
     	 		$(idResDiv).innerHTML = XsltClient.transformText(resp, XSLname);
				$('ajax_in').style.top = (parseInt(document.documentElement.scrollTop) + 320) + 'px';
				$(idResDiv).style.display = 'block';
        }
}
//End
         }

     );
}

AjXmlMail = function(XMLname, XSLname, idResDiv, repId) {
	var s ='';
	var s = 'mail='+ repId;

     var req = new Ajax.Request(
         XMLname,
         {
			parameters: s,
            method: 'post',
            onSuccess:
			//Start

function(resp) {
      if(XsltClient.isGecko()) {
                try {
                       var node = XsltClient.transformDOM(resp, XSLname).documentElement.cloneNode(true);
//		                $(idResDiv).innerHTML = node.innerHTML;
						$(idResDiv).parentNode.replaceChild(node, $(idResDiv));
                }
                catch(e) {
                        alert(e);
                }
        } else {
     	 		$(idResDiv).innerHTML = XsltClient.transformText(resp, XSLname);
//                $(idResDiv).parentNode.innerHTML = XsltClient.transformDOM(resp, XSLname);


        }
}
//End
         }

     );
}

AjXmlSimple = function(XMLname,idResDiv) {
	var req = new Ajax.Request(
		XMLname, {
			method: 'get',
			onSuccess:
			function(resp) {
				var response = resp.responseText || "no response text";
				$(idResDiv).parentNode.innerHTML = response;
			}
		}
	);
}


AjXml2Link = function(XMLname, XSLname, idResDiv, f_name) {
	var req = new Ajax.Request(
		XMLname,
		{
			method: 'post',
			onSuccess:
			//Start
			function(resp)
			{
				if(XsltClient.isGecko()) {
					try {
						var node = XsltClient.transformDOM(resp, XSLname).documentElement.cloneNode(true);
						$(idResDiv).parentNode.replaceChild(node, $(idResDiv));
					} catch(e) {
						alert(e);
					}
					// scroll patching :
					$('ajax_in').style.top = (parseInt(window.scrollY) + 320) + 'px';
				} else {
					$(idResDiv).innerHTML = XsltClient.transformText(resp, XSLname);
					$('ajax_in').style.top = (parseInt(document.documentElement.scrollTop) + 320) + 'px';
					$(idResDiv).style.display = 'block';
				}
				$('uAuth')['f_name'].value = f_name;
			}
			//End
		}
	);
}


AjLogin = function(f) {
	if (checkForm(f)) {
		ShowDiv('ajax', 'none');
		AjaxLogin(f['u-login'].value, f['u-password'].value, f['u-login-store'].checked, f['f_name'].value);
	}
	return false;
}

AjaxLogin = function(login, password, store, f_name) {
	var s = 'u-login=' + login + '&u-password=' + password;
	if (store) {
		s += '&u-login-store=' + store;
	}

	var req = new Ajax.Request(
		'/udata://users/ajaxLogin/',
		{
			parameters: s,
			method: 'post',
			onSuccess:
				function(resp)
				{
					if (resp.responseText != '0') {
						eval(f_name + '();');
					} else {
						alert('Неправильная пара логин-пароль! Авторизоваться не удалось.');
					}
				}
		}
	);
}

var is_auth = 0;
AjaxIsLogin = function() {
	if (is_auth == 0) {
		var req = new Ajax.Request(
			'/udata://users/is_login/?' + new Date().getTime(),
			{
				method: 'post',
				onSuccess:
					function(resp)
					{
						if (resp.responseText == '1') {
							is_auth = 1;
							return true;
						} else {
							is_auth = -1;
							return false;
						}
					}
			}
		);
	} else {
		return (is_auth < 0) ? false : true;
	}
}

openGame = function() {
	is_auth = 1;
	window.open('/interactive/game/', '', 'width=535,height=610, toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no');
}

OnlyAuth = function(f_name) {
	var x = AjaxIsLogin();
	if (x) {
		OnlyAuthDo(f_name);
	} else {
		setTimeout("OnlyAuthDo('"+f_name+"')", 1000);
	}
}
OnlyAuthDo = function(f_name) {
	if (AjaxIsLogin()) {
		is_auth = 1;
		eval(f_name + '();');
	} else {
		AjXml2Link('/udata://users/auth/', '/xsltTpls/ajax/ajax_enter_fon.xsl', 'ajax', f_name);
	}
}