
function bw_closeMessage()
{
	if (!document.getElementById('msg_bar_el'))
	{
		return;
	}	
	document.getElementById('msg_bar_el').style.display = 'none';
}

// message_type:
//   1 = info
//   2 = error
//   3 = warning
function bw_showMessage(message_info, message_type)
{		
	if (!document.getElementById('msg_bar_el'))
	{
		return;
	}		
	document.getElementById('msg_info_el').innerHTML = message_info;	
	document.getElementById('msg_bar_el').style.display = '';
	// sellega saab testida, 1 - tavateade, 2 - viga, 3 - error
	// message_type = 3;
	if (message_type == 1)
	{
		document.getElementById('msg_bar_el').className = "message_bar_info_class";
		document.getElementById('msg_info_el').className = "message_info_class";
		document.getElementById('message_image').src = "design/design/arvutid24/common/img/bw_ok.png";
		if (message_info.indexOf("võrdlusesse") != -1)
		{
			document.getElementById('msg_action_comparison').style.display = "";
		}
		if (message_info.indexOf("ostukorvi") != -1)
		{
			document.getElementById('msg_action_cart').style.display = "";
		}
	} 
	else if (message_type == 2)
	{		
		document.getElementById('msg_bar_el').className = "message_bar_error_class";
		document.getElementById('msg_info_el').className = "message_error_class";		
		document.getElementById('message_image').src = "design/design/arvutid24/common/img/bw_error.png";
	}
	else if (message_type == 3)
	{
		document.getElementById('msg_bar_el').className = "message_bar_warning_class";
		document.getElementById('msg_info_el').className = "message_warning_class";
		document.getElementById('message_image').src = "design/design/arvutid24/common/img/bw_warning.png";
	}
	document.getElementById('msg_bar_el').style.top = f_scrollTop()+"px";
	window.onscroll = scrollEventHandler; 
}

function scrollEventHandler()
{
	bw_closeMessage();
}

function f_scrollTop() 
{
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}
function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}

function bw_getData(originalRequest)
{
	response  = originalRequest.responseXML.documentElement;
	message_type = response.getElementsByTagName("message_type")[0].childNodes[0].nodeValue;
	row_id = response.getElementsByTagName("row_id")[0].childNodes[0].nodeValue;
	message_info = response.getElementsByTagName("message_info")[0].childNodes[0].nodeValue;	
	row_quantity = response.getElementsByTagName("row_quantity")[0].childNodes[0].nodeValue;
	return {message_type : message_type, row_id : row_id, message_info : message_info, row_quantity : row_quantity};	
}

function bw_fillBlock(elementID, str)
{
	if (document.getElementById(elementID))
	{
		document.getElementById(elementID).innerHTML = str;
	}
	else
	{
			window.status = "No element: "+elementID;
	}
}

function bw_loadCart(base_id)
{	
	var pars = 'cart_action=xml_load_cart&id='+base_id;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			parameters: pars, 
			onComplete: _bw_loadCart
		});	
}
function _bw_loadCart(originalRequest)
{
	ret = bw_getData(originalRequest);
	bw_fillBlock('bw_shop_cart', ret.message_info)
}

function shopAddToCart(product_id,quantity)
{	
	var pars = 'cart_action=xml_add_to_cart&id='+base_id+'&product_id='+product_id+'&quantity='+quantity;	
	//bw_showMessage(pars,1);
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			parameters: pars, 
			onComplete: _loadAdd
		});	
}

function _loadAdd(originalRequest)
{
	ret = bw_getData(originalRequest);	
	bw_showMessage(ret.message_info,ret.message_type);
	bw_loadCart(base_id);
}

function shopAddToComparison(product_id)
{
	var pars = 'action=xml_add_to_comparison&id='+base_id+'&product_id='+product_id;	
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			parameters: pars, 
			onComplete: _loadAddToComparison
		});
}
function _loadAddToComparison(originalRequest)
{
	ret = bw_getData(originalRequest);
	bw_loadComparison(base_id);
	
	bw_showMessage(ret.message_info,ret.message_type);
}

function bw_loadComparison()
{
	var pars = 'action=xml_load_compare&id='+base_id;
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			parameters: pars, 
			onComplete: _bw_loadComparison
		});
}

function _bw_loadComparison(originalRequest)
{
	ret = bw_getData(originalRequest);	
	bw_fillBlock('bw_shop_compare', ret.message_info);
}