/**
 * Class for the drop down menu.
 */
LanguageSelect = {

	timeOut: 0,

	/**
	 * Initialises language selector. (Attaches event listener)
	 */
	init: function()
	{
		/* check if the languages div exists */
		if($('languages'))
		{
			/* open the language selector */
			connect($('languages'), "onclick", bind(function() { bind(LanguageSelect.toggleSelector)(); }));
			
			/* hide the language options after 1 second */
			connect($('languages'), "onmouseout", bind(function() { bind(LanguageSelect.hideSelector)(); }));
			
			/* when hovering the language selector again, make sure it will not be hidden */
			connect($('languages'), "onmouseover", bind(function() { bind(LanguageSelect.stopHideSelector)(); }));
		}
	},

	toggleSelector: function()
	{
		if(hasElementClass('languages_menu', "expanded"))
		{
			removeElementClass('languages_menu', "expanded");
		}
		else
		{
			addElementClass('languages_menu', "expanded");
		}
	},
	
	hideSelector: function()
	{
		LanguageSelect.timeOut = setTimeout(LanguageSelect.doHideSelector, 1000);
	},
	
	doHideSelector: function()
	{
		removeElementClass('languages_menu', "expanded");
	},
	
	stopHideSelector: function ()
	{
		clearTimeout(LanguageSelect.timeOut);
	}
};

addLoadEvent(LanguageSelect.init);
