﻿/**
 * @(#) dui_hhmenu.js version 1.0
 *
 *  Copyright(저작권) Do Not Erase This Comment!!! (이 주석문을 지우지 말것)
 *
 *  Do Not re-distribute with-out permission. especially out-side of LG-CNS.
 *  허가 없이 재배포 해서는 안된다. 특히 LG-CNS의 외부로 유출을 하여서는 안된다.
 *
 * AUTHORS LIST       E-MAIL  
 * jaehyun lim    jhylim@lgcns.com
 * yongseok choi  korsuk@lgcns.com
 */
dui.hhmenu2 = {};
dui.hhmenu2.HHMenu2 = function() {};
dui.hhmenu2.HHMenu2.prototype = {
	currentMenu : null,
	
	init : function (ulObj) {
		if (typeof(ulObj) == "string") ulObj = document.getElementById(ulObj);
		var UL = $(ulObj);
		this.addEvent(UL);
	},
	
	addEvent : function (ul) {
		var menus = ul.childElements();
		for (var i=0; i<menus.length; i++) {
			var childUL = $(menus[i].getElementsByTagName("ul")[0]);
			menus[i].onmouseover = this.onMouseOver.bind(this, i, menus[i], childUL);
			menus[i].onmouseout = this.onMouseOut.bind(this, i, menus[i], childUL);
			if (childUL) {
				childUL.onmouseover = this.showMenu.bind(this, childUL);
				childUL.onmouseout = this.hideMenu.bind(this, childUL);
				this.addEvent(childUL);
			}
		}
	},
	
	onMouseOver : function (index, li, childUL) {
		this.showMenu(childUL);
		var classNames = $w(li.className);
		for (var i = 0; i < classNames.length; i++) {
			li.addClassName(classNames[i]+"Lhover");
		}
		li.addClassName("Lhover");
	},
	onMouseOut : function (index, li, childUL) {
		this.hideMenu(childUL);
		li.removeClassName("Lhover");
		var classNames = $w(li.className);
		for (var i = 0; i < classNames.length; i++) {
			if (classNames[i].indexOf("Lhover") != -1) {
				li.removeClassName(classNames[i]);
				li.addClassName(classNames[i].substring(0, classNames[i].length - 6));
			}
		}
	},
	
	showMenu : function (menu) {
		if (menu) menu.style.display = "block";
	},
	
	hideMenu : function (menu) {
		if (menu) menu.style.display = "none";
	}
}
