var cart_events = new Array();
var line_item_status_map = new Array();
var line_item_interval_map = new Array();
var displayed_line_item = null;

function showCartPopup(id) {
	if (id == displayed_line_item)
		return ;

	/* remove hiding process */
	clearInterval(line_item_interval_map[id]);
	
	var item = $("line_item_" + id);
	var popup = $("line_item_popup_" + id);
	var item_position = Position.cumulativeOffset(item);
	
	// alert(item_position + ", " + item_position[0] + ", " + item_position[1]);
	
	popup.style.left = (item_position[0] - 107) + "px";
	popup.style.top = (item_position[1] + 25) + "px";

	Element.show(popup);
	
	displayed_line_item = id;
	line_item_status_map[id] = true;
}
		
function hideCartPopup(id) {
	// Element.hide($('line_item_popup_' + id));
	line_item_interval_map[id] = setInterval("if ($('line_item_popup_' + '" + id + "')) { Element.hide($('line_item_popup_' + '" + id + "')); }", 5);
	line_item_status_map[id] = false;
	displayed_line_item = null;
}		

function stopCartObservers() {
	while (info = cart_events.pop()) {
		Event.stopObserving($('line_item_' + info['id']), 'mouseover', info['showFunction']);
		Event.stopObserving($('line_item_' + info['id']), 'mouseout', info['hideFunction']);
		Event.stopObserving($('line_item_popup_' + info['id']), 'mouseover', info['showFunction']);
		Event.stopObserving($('line_item_popup_' + info['id']), 'mouseout', info['hideFunction']);
	}
}