function get_scrollTop()
{
	return (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}

function get_scrollLeft()
{
	return (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

function get_clientWidth()
{
	return (document.documentElement && document.documentElement.clientWidth) || (document.body && document.body.clientWidth);
}

function get_clientHeight()
{
	return (document.documentElement && document.documentElement.clientHeight) || (document.body && document.body.clientHeight);
}

function get_visibility(id)
{
	visibility = ( document.getElementById(id).style.display == 'none' ) ? 0 : 1;

	return visibility;
}

function set_visibility(id, value)
{
	visibility = (value == 1) ? 'block' : 'none';
	document.getElementById(id).style.display = visibility;
	
	return;
}

function hide_popup()
{
	set_visibility('popup_box', 0);

	return;
}

function show_popup_box(html, width, height)
{
	var popup_box = document.getElementById("popup_box");
	var left = get_scrollLeft() + ( get_clientWidth() / 2 ) - ( width / 2 );
	//var top = get_scrollTop() + ( get_clientHeight() / 2 ) - ( height / 2 );
	var top = get_scrollTop() + 200;
	left = Math.round(left) + 'px';
	top = Math.round(top) + 'px';
	
	popup_box.innerHTML = html;
	popup_box.style.left = left; 
	popup_box.style.top = top;
	set_visibility("popup_box", 1);
	
	//alert(left);
	//alert(top);

	return;
}

function set_html(id, html)
{
	document.getElementById(id).innerHTML = html;
	
	return;
}

function show_preloader()
{
	//var preloader_html = "<div class='preloader'><p>Пожалуйста, подождите &hellip;</p><p><img src='/img/preloader.gif' border='0'></p></div>";
	//var preloader_html = '<div class="popup"><div class="popup-top">&nbsp;</div><div class="bg-popup"><p>Пожалуйста, подождите &hellip;</p><p><img src="/img/preloader.gif" border="0"></p></div><div class="popup-bottom">&nbsp;</div></div>';
	var preloader_html = '<img src="/img/preloader.gif" width="64" height="64">';

	var width = 70;
	var height = 70;

	var preloader = document.getElementById("preloader_box");
	var left = get_scrollLeft() + ( get_clientWidth() / 2 ) - ( width / 2 );
	var top = get_scrollTop() + ( get_clientHeight() / 2 ) - ( height / 2 );
	left = Math.round(left) + 'px';
	top = Math.round(top) + 'px';
	
	preloader.innerHTML = preloader_html;
	preloader.style.top = top;
	preloader.style.left = left;
	set_visibility('preloader_box', 1);

	return;
}

function hide_preloader()
{
	//set_visibility('preloader_box', 0);
	setTimeout("set_visibility('preloader_box', 0);", 750);
	
	return;
}

function member_auth_popup()
{
	show_preloader();

	var req = new JsHttpRequest();
		
	req.onreadystatechange = function()
	{
		if ( req.readyState == 4 )
		{
			response = req.responseJS;
			
			if ( response != '' )
			{
				hide_preloader();
				show_popup_box(response.popup, 450, 0);
			}
		}
	}
	
	req.open('get', '/client_auth_popup.php', true);
	req.send( { 'mode' : 'get_popup' } );
	
	return;
}

function basket_popup(item_id)
{
	show_preloader();

	var req = new JsHttpRequest();
		
	req.onreadystatechange = function()
	{
		if ( req.readyState == 4 )
		{
			response = req.responseJS;
			
			if ( response != '' )
			{
				hide_preloader();

				var offset = $('#b' + item_id).offset();
				var popup_box = document.getElementById("popup_box");
				var left = offset.left - 25;
				var top = offset.top + 20;
				left = Math.round(left) + 'px';
				top = Math.round(top) + 'px';

				popup_box.innerHTML = response.popup;
				popup_box.style.left = left; 
				popup_box.style.top = top;
				set_visibility("popup_box", 1);
			}
		}
	}
	
	req.open('get', '/basket_popup.php', true);
	req.send( { 'mode' : 'get_popup',  'item_id' : item_id } );
	
	return;
}

function basket_popup_send(form_id)
{
	show_preloader();

	var item_id = form_id.item_id.value;
	var item_q = form_id.item_q.value;
	
	var req = new JsHttpRequest();
		
	req.onreadystatechange = function()
	{
		if ( req.readyState == 4 )
		{
			response = req.responseJS;
			
			if ( response != '' )
			{
				hide_preloader();

				if ( response.errors == 0 )
				{
					hide_preloader();
					
					//set_html('bitems', response.basket_items);
					//set_html('bstr', response.basket_items_string);
					//set_html('bprice', response.basket_price);
					set_html('basket_status', response.basket_items + ' ' + response.basket_items_string + ' на сумму ' + response.basket_price + ' р.');
				
					var offset = $('#b' + item_id).offset();
					var popup_box = document.getElementById("popup_box");
					var left = offset.left - 25;
					var top = offset.top + 20;
					left = Math.round(left) + 'px';
					top = Math.round(top) + 'px';

					popup_box.innerHTML = response.popup;
					popup_box.style.left = left; 
					popup_box.style.top = top;
					set_visibility("popup_box", 1);
					
					setTimeout("hide_popup();", 1000);
				}
				else
				{
					set_html('basket_error_text', response.error_text);
					set_visibility('basket_error', 1);
				}
			}
		}
	}
	
	req.open('get', '/basket_popup.php', true);
	req.send( { 'mode' : 'send_popup', 'item_id' : item_id, 'item_q' : item_q } );
	
	return false;
}
