$(document).ready(
	function()
	{
    if ($('#header .we-language-select-overlay').length>0) {
		var overlay_over = false;
		var mousemove_bound = false;
 
		$('#topnav .we-language-select').hover(languageNavigationOver, languageNavigationOut);
		}
		
		function languageNavigationOver(event)
		{			
			if(!mousemove_bound)
			{
				$('.page').bind('mousemove', languageOverlayMouseMove);
				mousemove_bound = true;
			}

			overlay_over = true;
			languageOverlayShow(); 		
		}
		
		function languageNavigationOut(event)
		{
			languageOverlayHide();
		}
		
		function languageOverlayShow()
		{
						
		var o = $('#topnav .we-language-select').position();
		var o2 = $('#topnav ul').position();
		$('#header .we-language-select-overlay').css('left',o2.left+o.left+35);
			
				$('#topnav .we-language-select').addClass('active');
				$('#header .we-language-select-overlay').show();

		}
		
		function languageOverlayHide()
		{
			if(!overlay_over)
			{
				if(mousemove_bound)
				{
					$('.page').unbind('mousemove', languageOverlayMouseMove);
					mousemove_bound = false;
				}
				
				$('#header .we-language-select-overlay').hide();
				$('#topnav .we-language-select').removeClass('active');
			}
		}
		
		function languageOverlayMouseMove(event)
		{
			var overlay_offset = $('#header .we-language-select-overlay').offset();
			var trigger_offset = $('#topnav .we-language-select').offset();
						
			var trigger_position = {X: trigger_offset.left, Y: trigger_offset.top};
			var popup_position = {X: overlay_offset.left, Y: overlay_offset.top};
			var mouse_position = {X: event.pageX, Y: event.pageY};
						
			if(
				mouse_position.X < popup_position.X + $('#header .we-language-select-overlay').width() + 40 &&
				mouse_position.X > popup_position.X &&
				mouse_position.Y < popup_position.Y + $('#header .we-language-select-overlay').height() + 50 &&
				mouse_position.Y > popup_position.Y
			)
			{
				overlay_over = true;
			}
			
			else if(
				mouse_position.X < trigger_position.X + $('#topnav .we-language-select').width() &&
				mouse_position.X > trigger_position.X &&
				mouse_position.Y < trigger_position.Y + $('#topnav .we-language-select').height() + 40 &&
				mouse_position.Y > trigger_position.Y - 40)
			{
				overlay_over = true;
			}
			
			else
			{
				overlay_over = false;
				languageOverlayHide();
			}
		}
		
});
