
//********************************************************//
//	Left Menu 제어 함수
//  작성일 : 2008-01-05
//********************************************************//

var LeftMenu = {
	speed : 3,
	timing : 40,
	opened : null,
	initialize : function(pageCode) {
		if($('lm_menu')) {
			this.pageCode = pageCode != '' ? pageCode.substring(0,2) == '01' ? pageCode : pageCode.substring(0,6):'';
			var menuList = $('lm_menu').select('div.handleDivMenu');
			menuList.each(function(pair,i) {
				var subMenuList = pair.select('li.t_m, li.sub'); 
				subMenuList.each(function(subPair,x) {
					if(subPair.classNames() == 't_m') {
						if(!subPair.select("a")[0]) {
							subPair.observe('click',function(){LeftMenu.open(pair)});
							subPair.setStyle({cursor:'pointer'});
						}
					}
					if(LeftMenu.pageCode.trim() != '' && 
						(subPair.id.replace('leftMenu_','') == LeftMenu.pageCode || 
							(pair.id.replace('leftMenu_','') == LeftMenu.pageCode.substring(0,4) && subPair.classNames() == 't_m'))) {
						var imgSrc = subPair.select('img')[0];
						var imgSrcOn = subPair.select('img')[0].onSrc;
						imgSrc.src = imgSrcOn ? imgSrcOn : imgSrc.src.replace(/(_on.gif|.gif)$/i,'_on.gif'); // 선택메뉴 이미지 변경
						subPair.observe('mouseover',function(){LeftMenu.over(subPair);});
						subPair.observe('mouseout',function(){LeftMenu.out(subPair);});
					} else if(subPair.classNames() != 't_msp') {
						subPair.observe('mouseover',function(){LeftMenu.over(subPair);});
						subPair.observe('mouseout',function(){LeftMenu.out(subPair);});
					}

				});

				if(pair.id.replace('leftMenu_','') == LeftMenu.pageCode.substring(0,LeftMenu.pageCode.substring(0,2) == '01' ? 6:4)) {
					LeftMenu.currentMenu = pair.id;
					LeftMenu.opened = LeftMenu.currentMenu;
					var height = pair.offsetHeight;
					Layer.tween(LeftMenu.currentMenu,{height:height,speed:LeftMenu.speed,timing:LeftMenu.timing});
					var imgSrc = pair.select('img')[0].src;
					pair.select('img')[0].src = imgSrc.replace(/(_on.gif|.gif|_on.gif)$/i,'_on.gif');
				} else {
					var height = pair.select('.t_m')[0].offsetHeight;
					pair.setStyle({height:height});
				}
			});
		}
	},

	over : function(menu) {
		if(LeftMenu.cpInterval) clearTimeout(LeftMenu.cpInterval);
		if(LeftMenu.interval) clearTimeout(LeftMenu.interval);
		var imgSrc = menu.select('img')[0].src;
		var imgSrcOn = menu.select('img')[0].onSrc;
		if(menu.classNames() == 't_m') {
			if(LeftMenu.currentMenu != menu.up('div').id) {
				menu.select('img')[0].src = imgSrcOn ? imgSrcOn : imgSrc.replace(/(_on.gif|.gif|_on.gif)$/i,'_on.gif');
			}
		} else if(menu.classNames() == 'sub')  menu.select('img')[0].src = imgSrcOn ? imgSrcOn : imgSrc.replace(/(_on.gif|.gif)$/i,'_on.gif');
		
	},

	out : function(menu) {
		if((menu.classNames() != 't_m' || (LeftMenu.opened != menu.up('div').id && LeftMenu.currentMenu != menu.up('div').id)) && 
				(LeftMenu.pageCode == '' || menu.id.replace('leftMenu_','') != LeftMenu.pageCode) && (menu.id == "" || LeftMenu.currentCpMenu != menu.id)) {
			var imgSrc = menu.select('img')[0].src;
			var imgSrcOff = menu.select('img')[0].offSrc;
			menu.select('img')[0].src = imgSrcOff ? imgSrcOff : imgSrc.replace(/(_on.gif|.gif|_on.gif)$/i,'.gif');
		}
		if(LeftMenu.currentMenu != LeftMenu.opened) LeftMenu.interval = setTimeout(LeftMenu.reset,1500);
	},

	open : function(menu) {
		var openMenu = function() {
			var height = menu.offsetHeight;
			Layer.tween(menu.id,{height:height,speed:LeftMenu.speed,timing:LeftMenu.timing});
		}
		if(LeftMenu.opened != menu.id) {
			var height = menu.select('.t_m')[0].offsetHeight;
			if(LeftMenu.opened) Layer.tween(LeftMenu.opened,{height:height,speed:LeftMenu.speed,timing:LeftMenu.timing,onComplete:openMenu});
			else openMenu();
		} else {
			openMenu();
		}
		if(LeftMenu.currentMenu != LeftMenu.opened) {
			var imgSrc = $(LeftMenu.opened).select('img')[0].src;
			$(LeftMenu.opened).select('img')[0].src = imgSrc.replace(/(_on.gif|.gif|_on.gif)$/i,'.gif');
		}
		LeftMenu.opened = menu.id;
	},

	reset : function() {
		if(LeftMenu.opened) {
			var height = $(LeftMenu.opened).select('.t_m')[0].offsetHeight;
			Layer.tween(LeftMenu.opened,{height:height,speed:LeftMenu.speed,timing:LeftMenu.timing});
			var imgSrc = $(LeftMenu.opened).select('img')[0].src;
			$(LeftMenu.opened).select('img')[0].src = imgSrc.replace(/(_on.gif|.gif|_on.gif)$/i,'.gif');
			delete LeftMenu.opened;
		}
		if(LeftMenu.currentMenu) {
			var height = $(LeftMenu.currentMenu).offsetHeight;
			Layer.tween(LeftMenu.currentMenu,{height:height,speed:LeftMenu.speed,timing:LeftMenu.timing});
			LeftMenu.opened = LeftMenu.currentMenu;
			var imgSrc = $(LeftMenu.currentMenu).select('img')[0].src;
			$(LeftMenu.currentMenu).select('img')[0].src = imgSrc.replace(/(_on.gif|.gif|_on.gif)$/i,'_on.gif');
		}
	}
};
