// JavaScript Document


Ext.onReady(function () {

	// Menu
	var expandedId = null; 
	var linkId = null;
	var linkClass = null;
	var hideTimeout = 0;

	function hide() {
		if (expandedId) {
			clearTimeout(hideTimeout);
			Ext.fly(expandedId).hide({easing: "easeOut", duration: 0.2});
			expandedId = null;
			var linkEl = Ext.get(linkId);
			linkEl.removeClass(linkClass + '-hover');
			linkEl.dom.className = linkEl.dom.className.replace(/(^\s+)|(\s+$)/g, "");
			linkEl.parent('ul').removeClass(linkClass + '-hover');
			linkId = null;
			linkClass = null;
		}
	}
	
	
	Ext.select("#menu .main-menu a").on("mouseover", function (ev) {
		var linkEl = Ext.get(ev.getTarget());
		var ctEl = linkEl.parent('li');
		var popupEl = Ext.get(Ext.DomQuery.selectNode('.' + linkEl.dom.className + '-menu'));

		if (popupEl) {
			if (popupEl.id == expandedId) {
				clearTimeout(hideTimeout);
			} else {
				hide();
				var isInnerPage = Ext.fly("container-page").hasClass("page-inner");
				// Show menu
				var xy = ctEl.getXY();
				popupEl.setWidth(ctEl.getWidth());
				if (isInnerPage) {
					popupEl.setXY([xy[0], 86]);
				} else {
					popupEl.setXY([xy[0], Math.min(Ext.lib.Dom.getDocumentHeight() - popupEl.getHeight() - 50, xy[1] - 25)]);
				}
				
				popupEl.show({easing: "easeIn", duration: 0.2});
				expandedId = popupEl.id;
				
				// Mask link and colorize menubar
				linkClass = linkEl.dom.className;
				linkId = linkEl.id
				linkEl.parent('ul').addClass(linkClass + '-hover');
				linkEl.addClass(linkClass + '-hover');				
			}
		}
	});

	Ext.select(".popup-menu").on("mouseover", function (ev) {
		var popupEl = Ext.get(ev.getTarget('.popup-menu'));
		if (popupEl.id == expandedId) {
			clearTimeout(hideTimeout);
		}
	});
/*
	Ext.select("#menu .main-menu a").on("mouseout", function () {
		hideTimeout = hide.defer(1000);
	});
*/	
	Ext.select(".popup-menu").on("mouseout", function (ev) {
		hideTimeout = hide.defer(500)
	});
	
	
});





