	jsHover = function() {
		var hEls = document.getElementById("nav").getElementsByTagName("LI");
		for (var i=0, len=hEls.length; i<len; i++) {
		hEls[i].onmouseover=function() { this.className+=" jshover"; }
		hEls[i].onmouseout=function() { this.className=this.className.replace(" jshover", ""); }
		}
	}
	if (window.attachEvent && navigator.userAgent.indexOf("Opera")==-1) window.attachEvent("onload", jsHover);
	
	function addArticle2Cart(articleId, e)
	{
		//if (mCur) {
			//document.getElementById('ajaxCart').style.left = mCur.x + 'px';
			
			/*if (document.clientWidth)
				dWidth = document.clientWidth;
			else
				dWidth = document.documentElement.clientWidth;
			x = parseInt(dWidth/2) - 250;
			*/
			document.getElementById('ajaxCart').style.left = (findPosX(e) - 120)  + 'px';
			document.getElementById('ajaxCart').style.top = (findPosY(e) - 70) + 'px';
		//}
	
		url = '/?area=cartEditor&action=add&article=' + articleId;
		blockId = 'ajaxCartResult';
		updateBlock(url, blockId);
		
		//count
		url = '/?area=cartEditor&action=count';
		blockId = 'cartCount';
		makeRequest(url);
		
		document.getElementById(blockId).innerHTML = 'КОРЗИНА';
		
		if (res.responseText) {
			newElem = document.createElement("br");
			document.getElementById(blockId).appendChild(newElem);
			newElem = document.createElement("div");
			newElem.className = 'cartSeparator';
			document.getElementById(blockId).appendChild(newElem);
			newElem = document.createElement("span");
			newElem.innerHTML = res.responseText;
			document.getElementById(blockId).appendChild(newElem);
			document.getElementById(blockId).className = 'cartCount cartCountFull';
		} else {
			document.getElementById(blockId).className = 'cartCount';
		}
		
		//document.getElementById('ajaxCart').style.display = '';
		//Effect.Appear('ajaxCart')
		$('ajaxCart').appear({ duration: 0.5, from: 0.5, to: 0.9 });
	}
	

	function addArticle2Whishlist(articleId, e)
	{
		document.getElementById('ajaxCart').style.left = (findPosX(e) - 120)  + 'px';
		document.getElementById('ajaxCart').style.top = (findPosY(e) - 70) + 'px';

		url = '/?area=wishlistEditor&action=add&article=' + articleId;
		blockId = 'ajaxCartResult';
		updateBlock(url, blockId);
		
		$('ajaxCart').appear({ duration: 0.5, from: 0.5, to: 0.9 });
	}

	function validateEmail(email)
	{
		var reg = new RegExp("[-0-9a-z_]+@[-0-9a-z_^.]+\\.[a-z]", 'i');
		if (!reg.test(email))
			return false;
		return true;
	}
	
	function findPosX(obj) {
		var curleft = 0;
		if (obj.offsetParent) {
			while (1) {
				curleft+=obj.offsetLeft;
				if (!obj.offsetParent) {
					break;
				}
				obj=obj.offsetParent;
			}
		} else if (obj.x) {
			curleft+=obj.x;
		}
		return curleft;
	}
	
	function findPosY(obj) {
		var curtop = 0;
		if (obj.offsetParent) {
			while (1) {
				curtop+=obj.offsetTop;
				if (!obj.offsetParent) {
					break;
				}
				obj=obj.offsetParent;
			}
		} else if (obj.y) {
			curtop+=obj.y;
		}
		return curtop;
	}
	
	function mousePageXY(e)
	{
	var x = 0, y = 0;
	
	if (!e) 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 updateBlock(url, blockId)
	{
		makeRequest(url);
		document.getElementById(blockId).innerHTML = res.responseText;
	}
	
	// xmlRequest
	
	var res;
	
	function makeRequest(url)
	{
		var dtNowDate;
		dtNowDate = new Date();
		nMilliseconds = dtNowDate.getTime();
		url += '&updater=' + nMilliseconds;
				
		if (window.XMLHttpRequest)
			res = new XMLHttpRequest();
		else if (window.ActiveXObject)			
			res = new ActiveXObject("Microsoft.XMLHTTP");
		else {
				alert('Ваш браузер не поддерживает Ajax');
				return;
		}
			
		res.onreadystatechange = processResChange;
		res.open("GET", url, false);
		
		if (window.XMLHttpRequest)
			res.send(null);
		else
			res.send();
	}
	
	function processResChange()
	{
		if (res.readyState == 4) {
			if (res.status == 200) {/**/}
			document.getElementById('waitBlock').style.display = 'none';
		} else {
			document.getElementById('waitBlock').style.display = '';
		}
	}
	
	function showBlock(id)
	{
		document.getElementById(id).style.display = '';
	}
	
	function hideBlock(id)
	{
		document.getElementById(id).style.display = 'none';
	}
	
	function changeBlocks(id1, id2)
	{
		showBlock(id1);
		hideBlock(id2);
	}
	
	function confirmSubmit(formId, str)
	{
		if (confirm(str))
			document.forms[formId].submit();
	}
	
	function startSearch()
	{
		form = document.forms['searchForm'];
		
		if (form.elements['search'].value.length < 3) {
			alert('Минимальная длина поискового запроса - 3 символа. Пожалуйста, уточните запрос');
			return;
		}
		
		form.submit();
	}
	
	function initPage()
	{
		parseInactiveLinks();
	}
	
	function parseInactiveLinks()
	{
		aArray = document.getElementsByTagName('a');
		
		strAlert = 'Извините, но в данный момент эта ссылка не активна';
		
		for (i = 0; i < aArray.length; i++) {
			if (aArray[i].className == 'inactive') {
				aArray[i].title = strAlert;
				aArray[i].onclick = "alert('" + strAlert +"')";
				aArray[i].style.cursor = 'text';
				aArray[i].disabled = true;
			}
		}
	}
	
	function sendSubscribe()
	{
		email = document.getElementById('subscribeEmail').value;

		if (email == '') {
			alert('Пожалуйста, введите email');
			document.getElementById('subscribeEmail').focus();
			return false;
		}

		var reg = new RegExp("[-0-9a-z_]+@[-0-9a-z_^.]+\\.[a-z]", 'i');
		if (!reg.test(email)) {
			alert('Мы не можем принять данный email. Пожалуйста, введите другой');
			document.getElementById('subscribeEmail').focus();
			return false;
		}
		
		document.getElementById('waitBlock').style.display = '';
		document.getElementById('subscrBtn').style.disabled = true;
		new Ajax.Updater('subscribeBlock', '/?area=ajaxSubscribeSaver',
			{
				method: 'post',
				parameters: {
					email:  email
				}
			}
		);
		
		document.getElementById('waitBlock').style.display = 'none';
	
	}
	
	function sendCallback()
	{
		form = document.forms['callbackForm'];
		
		if (form.elements['name'].value == '') {
			alert('Введите имя');
			form.elements['name'].focus();
			return;
		}
		
		if (form.elements['phone'].value == '') {
			alert('Введите телефон');
			form.elements['phone'].focus();
			return;
		}
		
		if (form.elements['content'].value == '') {
			alert('Заполните поле "Что Вас интересует?"');
			form.elements['content'].focus();
			return;
		}
		
		if (form.elements['content'].value.length > 512) {
			alert('Поле "Что Вас интересует?" не может быть больше 512 символов');
			form.elements['content'].focus();
			return;
		}
		
		new Ajax.Updater('callbackBlock', '/?area=ajaxCallbackSaver',
			{
				method: 'post',
				parameters: {
					name:  form.elements['name'].value,
					phone:  form.elements['phone'].value,
					content:  form.elements['content'].value
				}
			}
		);
	}

	function showCallback()
	{
		showBlock('callbackBlock');
		document.forms['callbackForm'].elements['name'].focus();
	}