var visible_layers = {};
var layer_flag = {};

function processEvent(event)
{
	event.stopPropagation();
	for (var i in visible_layers)
	{
		win_x = window.pageXOffset ? window.pageXOffset : document.body.scrollLeft;
		win_y = window.pageYOffset ? window.pageYOffset : document.body.scrollTop;

		layer_x = getObjLeft(document.getElementById(i)) - win_x;
		layer_width = document.getElementById(i).offsetWidth;
		layer_y = getObjTop(document.getElementById(i)) - win_y;
		layer_height = document.getElementById(i).offsetHeight;

		event_x = event.x ? event.x : event.pageX;
		event_y = event.y ? event.y : event.pageY;

		if (!event.y)
		{
			event_x = event_x - win_x;
			event_y = event_y - win_y;
		}

		log('global visible layer i['+i+'] '+visible_layers[i]);
		
		var eventOutsideLayer = event_x < layer_x ||
		event_x > layer_x + layer_width ||
		event_y < layer_y ||
		event_y > layer_y + layer_height;

		if ( eventOutsideLayer &&
			visible_layers[i] == 1 &&
			document.getElementById(i).style.visibility == 'visible')
		{
			document.getElementById(i).style.visibility = 'hidden';
			if (layer_flag[i] == 1)
			{
				document.getElementById(i).innerHTML = '';
			}
			log('global hide');
			delete(visible_layers[i]);
			delete(layer_flag[i]);
		}
	}
}

function addShowLayer(layer, flag_erase)
{
	if (visible_layers[layer] != 1)
	{
		visible_layers[layer] = 1;
		if (flag_erase == 1)
		{
			layer_flag[layer] = 1;
		}
		else
		{
			layer_flag[layer] = 0;
		}
	}
}

function getObjLeft(anObject)
{
	return(anObject.offsetParent ? (getObjLeft(anObject.offsetParent) + anObject.offsetLeft) : anObject.offsetLeft);
}

function getObjTop(anObject)
{
	return(anObject.offsetParent ? (getObjTop(anObject.offsetParent) + anObject.offsetTop) : anObject.offsetTop);
}

function changeLanguage()
{
	var sel = document.getElementById('top_select_language');
	var lang = sel.options[sel.selectedIndex].value;
	$.get('/lang.php', 'lang='+lang, function(data) { if (data=='ok') { window.location.href=window.location.href; } });
}

