function zoom(el, grow, k)
{
	if (typeof(el) == 'string') el = document.getElementById(el);
	if (grow == undefined)
		grow = ('grow' in el ? (el.grow == '+' ? '-' : '+')
			: (el.offsetHeight > 0 ? '-' : '+'));
	el.grow = grow;
	el.zoomStep = k || 2;
	el.style.overflow = 'hidden';
	if (grow == '+')
	{
		if (!('zoomCurValue' in el) || el.zoomCurValue == 0) el.zoomCurValue = 1;
		el.style.display = '';
		if ('zoomMaxHeight' in el) el.zoomNewValue = el.zoomMaxHeight;
		else
		{
			el.style.height = '';
			el.zoomNewValue = el.offsetHeight;
		}
	}else
	{
		if (!('zoomCurValue' in el)) el.zoomCurValue = el.offsetHeight;
		if (!('zoomMaxHeight' in el)) el.zoomMaxHeight = el.offsetHeight;
		el.zoomNewValue = 0;
	}
	el.style.height = el.zoomCurValue+'px';
	if (!el.zoomIntervalId) el.zoomIntervalId = setInterval('stepZooming("'+el.id+'")', 35);
}

function cacheHack(){
			return "?t=" +new Date().getTime();
}
	
function stepZooming(id)
{
	var el = document.getElementById(id);
	var d = (el.grow == '+' ? el.zoomCurValue * el.zoomStep : el.zoomCurValue / el.zoomStep);
	var finished = false;
	if (el.grow == '+' && d > el.zoomNewValue)
	{
		d = el.zoomNewValue;
		finished = true;
	}
	else
	if (el.grow != '+' && d < 1)
	{
		d = 0;
		finished = true;
	}
	el.zoomCurValue = d;
	el.style.height = d+'px';
	if (finished)
	{
		clearInterval(el.zoomIntervalId);
		el.zoomIntervalId = null;
		if (d == 0) el.style.display = 'none';
		else
		{
			el.style.overflow = '';
			el.style.height = '';
		}
		if (el.afterZoom) el.afterZoom();
	}
	return false;
}

function trim(str)
{
	s = str.replace(/^(\s)*/, '');
	s = s.replace(/(\s)*$/, '');
	return s;
}

function Enable_Eros(a)
{
	if(a==1) xajax_Enable_Eros(a);
	return false;
}

function photoPopup(Path,Width,Height)
{
	window.open('/photo.php?photo='+Path,'Image','scrollbars=no,toolbar=no,width='+Width+',height='+Height+' location=no,status=no,resizable=yes,screenX=120,screenY=100');
	return false;
}

function check_email(email,emess)
{
	email.value = trim(email.value);
	var template = /^[a-z0-9_\+-]+(\.[a-z0-9_\+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,4})$/;
	if (template.test(email.value))
	{ document.getElementById(emess).innerHTML=""; return true;	}
	else
	{ document.getElementById(emess).innerHTML="Неверный адрес"; return false; }
}

function ban_spaces(elm)
{
	elm.value = trim(elm.value);
}

/**********************Регистрация пользователя********************************/
/*function checkUserName(obj,emess)
{
	obj.value = trim(obj.value);
	var UserName=obj.value;
	if(UserName.length<3) { document.getElementById(emess).innerHTML="Мало символов"; return; }
	if(UserName.length>20) { document.getElementById(emess).innerHTML="Много символов"; return; }

	var template = /^[vV]{1}(([0-9]+)*)$/;
	if (template.test(UserName)) { document.getElementById(emess).innerHTML="Вид 'v123456' недопустим"; return; }

	var template = /^[\-]?[a-z0-9](([\-]?[a-z0-9]+)*)[\-]?$/;
	if (template.test(UserName)) document.getElementById(emess).innerHTML="";
	else document.getElementById(emess).innerHTML="Только: 'a..z,0..9,-(не --)'";
}*/

//function checkEmail()
//{
//	var Email=RegisterForm.email_.value;
//	if(Email.length>3)
//	{
//		xajax_checkEmail(Email);
//	}
//}

function recordUser()	// OK!
{
		var email=document.getElementById('email_').value;
		var pwd1=document.getElementById('pwd1').value;
		var pwd2=document.getElementById('pwd2').value;
		var Name=document.getElementById('Name_').value;
		var SName=document.getElementById('SName_').value;
		var ICQ=document.getElementById('ICQ_').value;
		var phones=document.getElementById('phones_').value;
		var town=-1;

		var emailErr=document.getElementById('emailError').innerHTML;

		if(emailErr.length>0) { alert("Пожалуйста, устраните ошибки (выделены красным цветом)"); return; }
		error='';
		if(email.length<3)  error=error + "Не заполено поле 'E-mail'\n";
		if(pwd1.length<6 || pwd1.length>20)  error=error + "Неправильно заполено поле 'Пароль', нужно от 6 до 20 символов\n";
		if(pwd2.length<6 || pwd2.length>20)  error=error + "Неправильно заполено поле 'Пароль еще раз', нужно от 6 до 20 символов\n";
		if(pwd1 != pwd2)  error=error + "Не совпадают введенные вами пароли";
		if(Name.length<2)  error=error + "Не заполено поле 'Имя'\n";
		if(SName.length<2)  error=error + "Не заполено поле 'Фамилия'\n";
		if(error.length>0) { alert(error); return false; }

		subscribe=1;
		xajax_recordUser(email,Name,SName,pwd1,pwd2,subscribe,ICQ,phones,town);
		return false;
}
/********************** Конец Регистрации пользователей ********************************/


/************ Функция входа пользователей в систему ***************/
function userEnter(num_p,root_cat,g_id)	// OK!
{
	var user=document.getElementById('login').value;
	var pwd=document.getElementById('pwd').value;
	remember=1;
	document.getElementById("threelines").style.display = 'none';
	xajax_userEnter(user,pwd,remember,num_p,root_cat,g_id);
	return false;
}

	// Установка режима особенного каталога для пункта меню "Тайм карты и валюты"
function factorTC(p)
{
	xajax_factorTC(p);
	return true;
}

/************ Функция входа пользователей в систему ***************/
function userEnterW(num_p,root_cat,g_id)	// OK!
{
	var user=document.getElementById('loginW').value;
	var pwd=document.getElementById('pwdW').value;
	remember=1;
	
	$('#preloader').show();
	
	xajax_userEnter(user,pwd,remember,num_p,root_cat,g_id);
	return false;
}

function userEnterW1(num_p,root_cat,g_id)	// OK!
{
	var user=document.getElementById('loginW1').value;
	var pwd=document.getElementById('pwdW1').value;
	remember=1;

	xajax_userEnter(user,pwd,remember,num_p,root_cat,g_id);
	return false;
}

/************ Функция входа при быстрой покупке пользователей в систему ***************/
function userEnterFastBuy(user,pwd,num_p,root_cat,g_id)	// OK!
{
	remember=1;

	xajax_userEnter(user,pwd,remember,num_p,root_cat,g_id);
	return false;
}

/************ Функция входа неавторизированных пользователей в систему ***************/
function userEnterNA(num_p,root_cat,g_id)	// OK!
{
	var user=document.getElementById('loginNA').value;
	var userrepeat=document.getElementById('loginrepeatNA').value;
	var username=document.getElementById('NameNA').value;
	var phone=document.getElementById('PhoneNA').value;
	remember=1;

	xajax_userEnterNA(user,userrepeat,username,phone,remember,num_p,root_cat,g_id);
	return false;
}
/************ Изменение данных пользователя ***************/
function userChange()	// OK!
{
		var email	=document.getElementById('email_').value;
		var name	=document.getElementById('name_').value;
		var surname	=document.getElementById('surname_').value;
		var icq		=document.getElementById('ICQ_').value;
		var phones	=document.getElementById('phones_').value;
		var town	=-1;

		var oldpwd	=document.getElementById('oldpwd_').value;
		var newpwd_1=document.getElementById('newpwd_1').value;
		var newpwd_2=document.getElementById('newpwd_2').value;

		xajax_userChange(email,name,surname,icq,phones,town,oldpwd,newpwd_1,newpwd_2);
		return false;
}

function editNA(podpstr)
{
	//var email	=document.getElementById('email_').value;
	var name	=document.getElementById('name_').value;
	var email	=document.getElementById('email_').value;
	var surname	=document.getElementById('surname_').value;
	var icq		=document.getElementById('icq_').value;
	var phones	=document.getElementById('phones_').value;

	var newpwd_1=document.getElementById('newpwd_1').value;
	var newpwd_2=document.getElementById('newpwd_2').value;

	xajax_editNA(email,name,surname,icq,phones,newpwd_1,newpwd_2);
	return false;
}


function put2cart(ID)
{
	xajax_put2cart(ID);
	return false;
}

	// Смена телефона тех. поддержки
function tex_tel()
{
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
		// НИЧЕГО
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
}

	// Взять значение Куки по имени переменной
function getCookie(name) {
	var prefix = name + "="
	var cookieStartIndex = document.cookie.indexOf(prefix)
	if (cookieStartIndex == -1)
		return null
	var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
	if (cookieEndIndex == -1)
		cookieEndIndex = document.cookie.length
	return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
}

	// Функциональность "Забыли пароль?" - Вызов формы отсылки пароля
function fgtpss1(num_p,root_cat,g_id,flag)
{
	//xajax_fgtpss1(num_p,root_cat,g_id,flag);
	//return false;
}

	// Функциональность "Забыли пароль?" - Проверка кода с картинки, е-мэйла и отсылка пароля
function getPwd(num_p,root_cat,g_id)
{
	var login	=trim(document.getElementById('login').value);
	var code	=trim(document.getElementById('pwd').value);
	err=0;
	if(login.length<6) { alert('E-mail неправильный.'); err=1; }
	else
	if(code.length!=5) { alert('Код введен неправильно.'); err=1; }
	else
	{
		var template = /^[a-z0-9_\+-]+(\.[a-z0-9_\+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,4})$/;
		if (template.test(login))
		{ ; }
		else
		{ alert('E-mail неправильный.'); err=1; }
	}
	xajax_getPwd(num_p,root_cat,g_id,login,code,err);
	return false;
}

/********************* Работы с корзиной ********************************/
function deleteCartItem(ID)
{
	xajax_deleteCartItem(ID);
	return false;
}

function removeCartItem(ID,Type)
{
	xajax_removeCartItem(ID,Type);
	return false;
}

function shots(FileName,prefix)
{
	xajax_shots(FileName,prefix);
	return false;
}

/*************УЗнать высоту содержимого********************/
function getPageSize()
{
	var xScroll, yScroll;

	if (window.innerHeight && window.scrollMaxY)
	{
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	}
	else
	if (document.body.scrollHeight > document.body.offsetHeight)
	{ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	}
	else
	{ // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}

	var windowWidth, windowHeight;
	if (self.innerHeight)
	{        // all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	}
	else
	if (document.documentElement && document.documentElement.clientHeight)
	{ // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	}
	else
	if (document.body)
	{ // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}

		// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight)
	{
		pageHeight = windowHeight;
	}
	else
	{
		pageHeight = yScroll;
	}

		// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth)
	{
		pageWidth = windowWidth;
	}
	else
	{
		pageWidth = xScroll;
	}
	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight)
	return arrayPageSize;
}

function getClientHeight()
{
	return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight;
}
function getBodyScrollTop()
{
	return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}
function getBodyScrollLeft()
{
	return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

function getHeight()
{
	var result=window.innerHeight;
	if (window.innerHeight)
	{
		result = self.innerHeight;
		// IE 6 Strict Mode
	}
	else
	if (document.documentElement && document.documentElement.clientHeight)
	{
		result = document.documentElement.clientHeight;
		// Остальные версии IE
	}
	else
	if (document.body)
	{
		result = document.body.clientHeight;
	}
	if (!result) {}
	else
	{
		//var paddingTop=parseInt(getClientHeight()/2)+parseInt(getBodyScrollTop()/2);
		var a=getBodyScrollTop();
		document.getElementById('photoShot').style.height=result;
	}
	document.getElementById('photoShot').style.padding=a +'px 0px 300px 0px';
	return false;
}

/*
function getHeight2()
{
	var result=getPageSize();
	var paddingTop=parseInt(getClientHeight()/2)+parseInt(getBodyScrollTop()/2);
	var a=getBodyScrollTop();
	var b=document.height-a;
	document.getElementById('photoShot2').style.top=getClientHeight()/2;
	return false;
}
*/

function mousePageXY()
{
	var x = 0, y = 0;
	e = window.event;
	if (e.pageX || e.pageY)
	{
		x = e.pageX;
		y = e.pageY;
	}
	else if (e.clientX || e.clientY)
	{
		x = e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
		y = e.clientY + (document.documentElement.scrollTop || document.body.scrollTop) - document.documentElement.clientTop;
	}
	return {"x":x, "y":y};
}

function closePSC()
{
	document.getElementById('photoShot').style.display='none';
	return false;
}

/*
function closePSC2()
{
	document.getElementById('photoShot2').style.display='none';
	return false;
}
*/

function giveAVoice(value,ID)
{
	xajax_giveAVoice(value,ID);
	return false;
}

	// Функции по работе с комментариями
function CommentsFuncs(chat_is,func,id,gameid)
{
	if(func=='edit')		// Подготовить область для редактирования сообщения
	{
		xajax_CommentFuncs(chat_is,func,id,gameid);
	}else
	if(func=='crepup')		// Прикрепить сообщение в область приоритетных
	{
		xajax_CommentFuncs(chat_is,func,id,gameid);
	}else
	if(func=='delete')		// Подготовить область для Удалить/Отмена
	{
		if(confirm('Удалить сообщение ?'))
			xajax_CommentFuncs(chat_is,func,id,gameid);
	}

	return false;
}

function showComments(gameID)
{
	zoom('setComment');
	document.getElementById('commentContent').innerHTML="...загрузка комментариев...";
	xajax_showValue('commentContent','3','showComments',gameID,1);
	return false;
}

	// Показать обыяные комменты для Карточки игры
function showCommentsPage(gameID,cPage)
{
	document.getElementById('commentContent').innerHTML="...загрузка комментариев...<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>";
	xajax_showValuePage('commentContent','3','showComments',gameID,cPage);
	return false;
}

	// Показать сообщения Чата на странице Чата
function showCommentsPageChat(gameID,cPage)
{
	//document.getElementById('commentContentChat').innerHTML="...загрузка комментариев...";
	xajax_showValuePageChat('commentContentChat','3','showCommentsChat',gameID,cPage);
	return false;
}

	// Запись сообщения обычных комментов
function recordMessage(ID,typecom,id_)
{
	var msg=document.getElementById('msg').value;

	if(msg.length>3){
		xajax_recordMessage(ID,msg,typecom,id_);	// Если id_>0 , то изменяется соответствующее сообщение, иначе - вносится новое
	}
	else
	{
		show_div_local('DIVmessa','Ваш комментарий пуст.<br/>Вы не можете добавить пустой комментарий!');
		setTimeout("noshow_div('DIVmessa');",3000);
	}
	return false;
}

	// Запись сообщения на правой полосе
function recordMessageR()
{
	var msg=document.getElementById('msgR').value;

	if(msg.length>3){
		xajax_recordMessageR(msg);
	}
	else
	{
		show_div_local('DIVmessa','Ваш комментарий пуст.<br/>Вы не можете добавить пустой комментарий!');
		setTimeout("noshow_div('DIVmessa');",3000);
	}
	return false;
}

	// Запись сообщения Чата на странице Чата
function recordMessageChat(id)
{
	var msg=document.getElementById('msgR').value;

	if(msg.length>3){
		xajax_recordMessageChat(msg,id);	// Если id>0 , то изменяется соответствующее сообщение, иначе - вносится новое
	}
	else
	{
		show_div_local('DIVmessa','Ваш комментарий пуст.<br/>Вы не можете добавить пустой комментарий!');
		setTimeout("noshow_div('DIVmessa');",4000);
	}
	return false;
}

	// Отправка сведений "Обратная связь"
function buckNetSubmit()
{
	var msg=document.getElementById('msgR').value;

	if(msg.length>3){
		xajax_buckNetSubmit(msg);
	}
	else
	{
		show_div_local('DIVmessa','Ваше сообщение пустое.<br/>Пожалуйста, отнеситесь к этому внимательно!');
		setTimeout("noshow_div('DIVmessa');",4000);
	}
	return false;
}

/***********Пользователь решил выйти. Просто удалился гандон************/
function userExit(num_p,root_cat,g_id)	// OK!
{
	xajax_userExit(num_p,root_cat,g_id);
	return false;
}

function searchByLetter(Letter)
{
	xajax_searchByLetter(Letter);
	return false;
}

	// Отображение/скрытие списка Ключей в карточке игры
function getKeys4Game(ID,IDind)
{
	if(getCookie('DEBUG')=='1' || true)
	{
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
		// НИЧЕГО
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
		return false;
	}else
	{
		var ddiv = 'KeysBuyDiv';
		if(IDind>=0) ddiv = ddiv + '__'+IDind;
		if(document.getElementById(ddiv).style.visibility == 'visible')
		{
			xajax_getKeys4Game(ID,0,ddiv);
			document.getElementById(ddiv).style.visibility = 'hidden';
			document.getElementById(ddiv).style.display = 'none';
		}else
		{
			xajax_getKeys4Game(ID,1,ddiv);
			document.getElementById(ddiv).style.visibility = 'visible';
			document.getElementById(ddiv).style.display = '';
		}
		return false;
	}
}

	// Отображение/скрытие списка Тайм-Карт в карточке игры
function getCards4Game(ID,IDind)
{
	if(getCookie('DEBUG')=='1' || true)
	{
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
		// НИЧЕГО
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
	}else
	{
		var ddiv = 'CardsBuyDiv';
		if(IDind>=0) ddiv = ddiv + '__'+IDind;

		if(document.getElementById(ddiv).style.visibility == 'visible')
		{
			xajax_getCards4Game(ID,0,ddiv);
			document.getElementById(ddiv).style.visibility = 'hidden';
			document.getElementById(ddiv).style.display = 'none';
		}else
		{
			xajax_getCards4Game(ID,1,ddiv);
			document.getElementById(ddiv).style.visibility = 'visible';
			document.getElementById(ddiv).style.display = '';
		}
		return false;
	}
}

	// Отображение/скрытие списка файлов для загрузки в карточке игры для Глобальных со списком дистрибутивов
function getDownloads4Game(ID)
{
	if(getCookie('DEBUG')=='1' || true)
	{
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
		// НИЧЕГО
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
	}else
	{
		var ddiv = 'DownloadDiv';
		if(ID>=0) ddiv = ddiv + '__'+ID;

		if(document.getElementById(ddiv).style.visibility == 'visible')
		{
			document.getElementById(ddiv).style.visibility = 'hidden';
			document.getElementById(ddiv).style.display = 'none';
		}else
		{
			document.getElementById(ddiv).style.visibility = 'visible';
			document.getElementById(ddiv).style.display = '';
		}
		return false;
	}
}


function setScrollY(ID)
{
	if( typeof( window.pageYOffset ) == 'number' ) {
		window.pageYOffset = ID;
	} else
	if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		document.documentElement.scrollTop = ID;
	} else
	if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		document.body.scrollTop = ID;
	}

	return false;
}

	// Отображение/скрытие списка файлов для загрузки в карточке игры для Глобальных со списком дистрибутивов
function getScreenshots4Game(ID)
{
	var ddiv = 'ScreenshotsHideDiv';
	if(ID>=0) ddiv = ddiv + '__'+ID;

	if(document.getElementById(ddiv).style.visibility == 'visible')
	{
		document.getElementById(ddiv).style.visibility = 'hidden';
		document.getElementById(ddiv).style.display = 'none';
		setScrollY(1000);
	}else
	{
		document.getElementById(ddiv).style.visibility = 'visible';
		document.getElementById(ddiv).style.display = '';
	}
	return false;
}

function getScreenshots4GameText(ID)
{
	var ddiv = 'ScreenshotsHideDiv';
	var ddivText = 'ScreenshotsHideDivText';
	if(ID>=0){ ddiv = ddiv + '__'+ID; ddivText = ddivText + '__'+ID; }

	if(document.getElementById(ddiv).style.visibility == 'visible')
	{
		document.getElementById(ddivText).innerHTML = '<p style="margin-top:10px; padding-top:0px;"><strong><a href="" onClick="getScreenshots4Game(\'ID\'); getScreenshots4GameText(\'ID\'); return false;"  class="red">Свернуть</a></strong></p>';
	}else
	{
		document.getElementById(ddivText).innerHTML = '<p style="margin-top:0px; padding-top:0px;"><strong><a href="" onClick="getScreenshots4Game(\'ID\'); getScreenshots4GameText(\'ID\'); return false;"  class="red">Показать все ролики</a></strong></p>';
	}
	return false;
}

	// При проверке на незавершенные операции покупки: формируется и выводится таблица по товарным позициям (Ключи, Тайм-Карты).
function checkBuyOperations()
{
	xajax_checkBuyOperations();
	return false;
}

/* Передает данные для синтеза формы запроса 2пэй-номера и прочих данных */
function buy2Pay2(GameID,Type,p_valuta,p_href,p_v0,p_v1,p_v2,p_v3,p_img,p_min,p_max,toPayNum)
{
	Item=document.getElementById('buy2pay');
	{
		xajax_buy2Pay2(GameID,Type,p_valuta,p_href,p_v0,p_v1,p_v2,p_v3,p_img,p_min,p_max,toPayNum);
	}
	return false;
}

function buyNormal()
{
	xajax_buyNormal();
	return false;
}

/* Передает данные для синтеза формы запроса 2пэй-номера и прочих данных */
/*
function buy2Pay2TC(GameID,Type,p_img)
{
	if(GameID>0 && Type==1)
	{
		xajax_buy2Pay2TC(GameID,Type,p_img);
	}

	return false;
}
*/

// 2Pay-форма - проверка данных и отправка на биллинг !!!
function get2p()
{
	document.getElementById('dva').innerHTML = "...загрузка...";
	xajax_get2p(document.getElementById('tovar').value, document.getElementById('v1').value, document.getElementById('v2').value, document.getElementById('v3').value,
				document.getElementById('summinn').value, document.getElementById('summout').value, document.getElementById('ToPayNumber').value
				);

	return false;
}

// Переключение видимости элементов формы 2Pay
function toggle2p(vl)
{
	if (vl == 0) {
		document.getElementById('inn').style.visibility = 'hidden';
		document.getElementById('out').style.visibility = 'hidden';
		document.getElementById('inn2').innerHTML = "";
		document.getElementById('out2').innerHTML = "";
		document.getElementById('dva').innerHTML = "";
		document.getElementById('inn').value='0';
		document.getElementById('out').value='0';
	} else {
		document.getElementById('out').style.visibility = 'visible';
		var minmin1=document.getElementById('minmin').value;
		var maxmax1=document.getElementById('maxmax').value;
		if(minmin1=='0' && maxmax1=='0')
		{	document.getElementById('out2').innerHTML = 'Введите кол-во монет в игре:'; }
		else
		{	document.getElementById('out2').innerHTML = 'Введите кол-во монет в игре:<br/>('+minmin1+'<= кол-во <='+maxmax1+')'; }
	}
}

	// Пересчет сумм для 2pay - с запросами.
function calc(strDir, sum)	// 'out',сумма - вызов только так
{
	vdengi=document.getElementById('dengi').value;
    xajax_calc2pay(document.getElementById('tovar').value, document.getElementById('dengi').value, strDir, sum,
    				document.getElementById('v1').value, document.getElementById('v2').value, document.getElementById('v3').value,
    				document.getElementById('minmin').value, document.getElementById('maxmax').value);

	return false;
}

function c_isNumeric(vTestValue)
{
	// put the TEST value into a string object variable
	var sField = new String(trim(vTestValue));
	var bottom=0;
	var vRet='';
	var commaFlag=false;
	var afterPointCount=0;

	for(var x=bottom; x < sField.length; x++)
	{
		if (sField.charAt(x) >= '0' && sField.charAt(x) <= '9')
		{
			if (commaFlag) afterPointCount++;
			if (afterPointCount>2) break;
			vRet+=sField.charAt(x);
		}
		else
		if ((sField.charAt(x)==',' || sField.charAt(x)=='.') && !commaFlag)
		{ vRet+='.'; commaFlag=true; }
	}
	return vRet;
}

	// Проверяет введенные суммы и отправляет на пересчет
function c_check(el_id)
{
	vcheck=document.getElementById(el_id).value;

	iGame='inn', iReal='out';
	if (vcheck.length==0)
	{
		if (el_id==iGame)
			document.getElementById(iReal).value='';
		else
			document.getElementById(iGame).value='';
	}
	else
	{
		vchecked=c_isNumeric(vcheck);
		if (el_id==iGame)
		{
			document.getElementById(iGame).value=vchecked;
			calc(iGame,vchecked);
		}
		else
		{
			document.getElementById(iReal).value=vchecked;
			calc(iReal,vchecked);
		}
	}
}


function numOnly(evt)
{
	evt = (evt) ? evt : event;
	var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
	if (charCode != 35 && charCode != 46 && charCode != 36 && charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 39 && charCode != 37 && charCode != 8)
		return false;
	return true;
}
/*
function BuyPay()
{
	Type = document.getElementById('Type').value;
	ToPayNumber=0;
	v1=0;
	v2=0;
	v3=0;
	HowMuch=0;
	email='';
	price=0;
	price_sell=0;
	gameID=document.getElementById('gameID').value;
	if(document.getElementById('ToPayNumber')) ToPayNumber = document.getElementById('ToPayNumber').value;
	if(document.getElementById('v1')) v1 = document.getElementById('v1').value;
	if(document.getElementById('v2')) v2 = document.getElementById('v2').value;
	if(document.getElementById('v3'))  v3 = document.getElementById('v3').value;
	if(document.getElementById('HowMuch'))  HowMuch = document.getElementById('HowMuch').value;
	if(document.getElementById('email'))  email = document.getElementById('email').value;
	if(document.getElementById('price')) price = document.getElementById('price').value;
	if(document.getElementById('price_sell')) price_sell = document.getElementById('price_sell').value;

	xajax_BuyPay(Type,ToPayNumber,v1,v2,v3,gameID,HowMuch,email,price,price_sell);

	return false;
}

function count2paySumma(price)
{
	HowMuch = document.getElementById('HowMuch').value;
	Summa = HowMuch * price;
	document.getElementById('fullSumma').innerHTML = 'Цена: '+Summa+' руб.';
	return false;
}
*/
function close2pauLayer()
{
	Item=document.getElementById('buy2pay');
	Item.parentNode.removeChild(Item);
}

function scrollit()
{
	for (i=8; i>=4; i--)
		self.scroll(1000, i)
}

function makeNoActive(ID)
{
	DOC=document.getElementById(ID);
	if(DOC) DOC.disabled=1;
}

function makeActive(ID)
{
	DOC=document.getElementById(ID);
	if(DOC) DOC.disabled=0;
}

function showClip(ID,IDall)
{
	if(getCookie('DEBUG')=='1' || true)
	{
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
		// НИЧЕГО
		/* *****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG*****DEBUG***** */
	}else
	{
		xajax_showMovie(ID,IDall);
		document.body.scrollTop=200;
		return false;
	}
}

	// Отсылка ключа из истории корзины
function sendKey2Mail(CartID)
{
	xajax_sendKey2Mail(CartID);
	return false;
}

	// Проверка на ...ый IE
function isBrowserUeban()
{
	if (navigator.userAgent.match(/MSIE 6/i) != null) return 1;
	else if (navigator.userAgent.match(/MSIE 7/i) != null) return 2;
	else return 0;
}

	// Для видеоплейера - установить класс активности у конкретного номера клипа
function showMovie_setA(kol,ID)
{
	for(var i=1;i<=kol;i++)
	{
		$('#megaVideoA_'+i).removeClass('active');
	}
	$('#megaVideoA_'+ID).addClass('active');

	var bie = isBrowserUeban();

	var clt = $('#megaVideo_tx'+ID).attr('value');
	$('#megaVideoT_').html(clt);

		// ВЛЕВО
	if(ID==1)
	{
		$('#megaVideo_left').attr('onClick','return false;');

		if (bie!=0)
		{	document.getElementById('megaVideo_left').onclick = (function() { return function() { return false; } })();
		}
	}else
	{
		var IDm = ID*1-1;
		var clm = $('#megaVideo_ii'+IDm).attr('value');
		$('#megaVideo_left').attr('onClick','xajax_showMovie(\'' + clm + '\',\'-1\'); showMovie_setA(\'' + kol + '\',\'' + IDm + '\'); return false;');

		if (bie!=0)
		{	document.getElementById('megaVideo_left').onclick = (function() { return function() { xajax_showMovie(clm,'-1'); showMovie_setA(kol,IDm); return false; } })();
		}
	}

		// ВПРАВО
	if(ID==kol)
	{
		$('#megaVideo_right').attr('onClick','return false;');

		if (bie!=0)
		{	document.getElementById('megaVideo_right').onclick = (function() { return function() { return false; } })();
		}
	}else
	{
		var IDp = ID*1+1;
		var clp = $('#megaVideo_ii'+IDp).attr('value');
		$('#megaVideo_right').attr('onClick','xajax_showMovie(\'' + clp + '\',\'-1\'); showMovie_setA(\'' + kol + '\',\'' + IDp + '\'); return false;');

		if (bie!=0)
		{	document.getElementById('megaVideo_right').onclick = (function() { return function() { xajax_showMovie(clp,'-1'); showMovie_setA(kol,IDp); return false; } })();
		}
	}

	return false;
}

function Show_Message(text_str)
{
	show_div_local('DIVmessage',text_str);
	return false;
}

function Show_Login()
{
	show_div_local('DIVlogin'); $('#loginW').focus();
	return false;
}

function Show_Login_Buy(fgh)
{
	xajax_Show_Login_Buy(fgh);
	return false;
}

function savePhone() {
	var phone = document.getElementById('phone_for_java').value;
	xajax_save_phone(phone);
	return false;
}

function Show_Message_Phone(phone) {
	text_str='После оплаты заказа, вы получите СМС с уникальной wap-ссылкой для загрузки Java игры на ваш сотовый телефон.<br /><br /><b>Внимание!</b><br />Для загрузки игры, вы должны быть подключены к услуге WAP/GPRS Интернет (подробности подключения Услуги уточняйте у вашего опретора связи).<br /><br />Укажите номер телефона, на который следует отправить wap-ссылку:<br /><input type="text" id="phone_for_java" value="' + phone + '"><br /><br /><a href="javascript:void(0);" onClick="savePhone();">Я ввел номер!</a>';
	show_div_local('DIVmessage',text_str);
	return false;
}

function Show_Message_temp()
{
	text_str='Для покупки игр, пожалуйста, <a href="javascript: noshow_div(\'DIVmessage\'); show_div_local(\'DIVlogin\');"> зарегистрируйтесь</a>. Покупка для неавторизированных пользователей в разработке.';
	show_div_local('DIVmessage',text_str);
	return false;
}
function Show_Message_About_Reg()
{
	text_str='Если вы хотите получить полный доступ ко всем нашим Сервисам, пройдите по <a href="#" onclick="noshow_div(\'DIVmessa\'); show_div_f(\'DIVregistr\');">ссылке</a></span>  и зарегистрируйтесь заполнив все поля.'+
	'<br>Сервисы, которые будут доступны  после уточнения ваших данных:<br>'+
	'- Лицевой счет -  собственный Лицевой счет на сайте. А значит и возможность пополнять его через СМС и Терминалы оплаты вашего города.<br>'+
	'- История покупок - возможность отслеживать все ваши финансовые операции. В любое время вы сможете получить уже приобретенный вами ключ или скачать дистрибутив любимой игры прямо на нашем сайте.<br>'+
	'- Нашим Пользователям мы предоставляем уникальную возможность скачать дистрибутив любой он-лайн игры без ограничения в скорости скачивания (для Абонентов "Дом.ru").<br>'+
	'- Партнерская программа.'+
	'<br><br><span style="text-align:justify;"><a href="#" onclick="Show_Message_FastBuy();"><input type="submit" value="Назад" ></a>';
	show_div_local('DIVmessa',text_str);
	return false;
}

function noregform() {
	document.getElementById('buytype1').checked=true;
	var form =
	'<div align="center" />' +
	'E-Mail<br />' +
	'<input type="text" id="loginNA" class="auth1"/><br />' +
	'Имя<br />' +
	'<input type="text" id="NameNA" class="auth1" /><br />' +
	'Телефон<br />' +
	'<input type="text" id="PhoneNA" class="auth1" /><br />' +
	'<input type="button" onclick="userEnterNA(0,0,0);" value="Купить" /><br />' +
	'</div>';
	document.getElementById('buytypeform').innerHTML = form;
	return true;
}

function regform() {
	Show_Login_Buy(true);
	document.getElementById('buytype2').checked=true;
	var form =
	'<div align="center" />' +
	'E-Mail<br />' +
	'<input type="text" id="loginW" class="auth1"/><br />' +
	'Пароль<br />' +
	'<input type="password" id="pwdW" class="auth1" /><br />' +
	'<input type="button" onclick="return userEnterW(0,0,0);" value="Войти" /><br />' +
	'</div>';
	document.getElementById('buytypeform').innerHTML = form;
	return true;
}

function Show_Message_FastBuy()
{
	text_str='<br><br><br><table><tr><td><div class="big_button"> <a href="javascript: noshow_div(\'DIVmessa\'); show_div_local(\'DIVregNA\');"><br><br>Без регистрации</a>.</div></td>'+
		'<td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td><td style="vertical-align:top" ><div class="big_button"><a href="javascript:void(0);" onclick="javascript: noshow_div(\'DIVmessa\'); Show_Login_Buy(); "><br>Как <br>зарегистрированный пользователь</a></div></td></tr></table>'+
		' <a href="#" onclick="noshow_div(\'DIVmessa\');Show_Message_About_Reg();">Почему я должен зарегистрироваться?</a><br><br><br><br>';
	var body = 
	'<div onclick="noregform();" style="cursor: pointer;"><input id="buytype1" type="radio" name="buytype"> Без регистрации</div><br />' +	
	'<div onclick="regform();" style="cursor: pointer;"><input id="buytype2" type="radio" name="buytype"> Зарегистрированный покупатель</div>' +
	'<div id="DIVerrorText" /><br />' +
	'<div id="buytypeform"></div>';
	show_div_local('DIVmessa',body);
	noregform();
	return false;
}

function Show_Message_Need_Auth()
{
	text_str='Пользователь с таким e-mail уже зарегистрирован в системе. Измените e-mail или авторизируйтесь.<br>'+
			 '<br><a href="#" onclick="noshow_div(\'DIVmessage\'); show_div_local(\'DIVmessa\');"><input type="submit" value="Назад" ></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#" onclick="noshow_div(\'DIVmessage\'); show_div_local(\'DIVlogin\');"><input type="submit" value="Авторизация"  ></a>';


	show_div_local('DIVmessage',text_str);
	return false;
}

function Show_Edit_NA()
{
	show_div_local('DIVeditNA');
	return false;
}

function preorder_check(id, func) {
	noshow_div('DIVmessage');
	document.getElementById('preorder_' + id).value = 1;

	//если все предзаказы прочеканы - запускаем покупку
	var preorders = document.getElementsByName('preorder');
	var check = 1;
	
	for (var i = 0; i < preorders.length; i++) {
		var preorder = preorders[i];
		var game = preorder.parentNode;
		var gameID = game.id.substr(10);
		
		check = document.getElementById('preorder_' + gameID).value;
	}
	
	if (check == 1) eval(func);
}

function preorder_messages(func,del) {
	var preorders = document.getElementsByName('preorder');
	var i=0;
	
	for (var i=0; i<preorders.length; i++) {
		var preorder = preorders[i];
		var game = preorder.parentNode;
		var gameID = game.id.substr(10);
		var gameName = document.getElementById('game_' + gameID).value;
		
		var text_str = '<h3>Игра &laquo;' + gameName + '&raquo; еще не вышла в продажу.</h3><p>Однако, специально для наших клиентов, мы предоставляем возможность купить игру по предоплате/предзаказу. Ориентировочная дата выхода игры ' + preorder.value + '</p><p>Торопитесь, когда игра выйдет в продажу - ключей на всех может и не хватить!</p>';
		text_str = text_str + '<input type="button" value="Купить" onclick="preorder_check(' + gameID + ', \'' + func + '\');">&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" value="Отложить" onclick="'+del+'CartItem(\'' + gameID + '\',\'0\'); preorder_check(' + gameID + ', \'' + func + '\');">';
		show_div_local('DIVmessage',text_str);
	}
	
	if (i==0) eval(func);
	return false;
}

function changeBanner(id) {
	
}
