
// ¸Þ´º»ý¼ºÀÚ ÀÎÀÚ´Â jquery·Î ³Ñ°Ü¹ÞÀº °´Ã¼ //
function topMenu(container) {	
	this.container = container;	// °´Ã¼¸¦ privateº¯¼ö¿¡ ³ÖÀ½
	this.currentNum = 0;	// ÇöÀç ¸Þ´º¹øÈ£
	this.interval;
	this.overNum;
	this.depth1 = hn;	// Ã¹µª¾²¹øÈ£
	this.depth2 = sn;	// µÎ¹øÂ° µª¾²¹øÈ£
	this.depth3 = cn;	// ¼¼¹øÂ° µª¾²¹øÈ£
	this.makeMenu();	// ¸Þ´º¸¸µå´Â ÇÔ¼ö¸¦ ½ÇÇà
	this.makeSubMenuSet();	// ¼­ºê¸Þ´º ¸¸µé±â
	this.onFocus();		// Æ÷Ä¿½º¸ÂÃß´Â ÇÔ¼ö
}

topMenu.prototype.makeMenu = function() {	// ´ë¸Þ´º¸¦ »ý¼ºÇÏ¸é¼­ ÀÌ¹ÌÁö Åõ¸íµµ Á¶Àý ¹× ¸¶¿ì½º ¿À¹ö, ¾Æ¿ô, Å¬¸¯ Á¤ÀÇ
	this.menuArray = $('ul#main_navi > li',this.container);	// Å¬·¡½º¸í topMenuClass¸¦ °¡Áø liÅÂ±×¸¸ °¡Á®¿Â´Ù.
//	this.menuArray.css({opacity:1.0});	// ÃÊ±â ¸Þ´º»ý¼º½Ã ÀÌ¹ÌÁö Åõ¸íµµÁ¶Àý
	var owner = this;

	this.menuArray.each ( function(i) {
//		$(this).bind("mouseover", {index:i+1}, $.proxy(owner, "over")).css({cursor:"pointer"});
//		$(this).bind("mouseout", {index:i+1}, $.proxy(owner, "out"));
//		$(this).bind("click", {index:i+1}, $.proxy(owner, "click"));

		$(this).find("img").bind("mouseover", {index:i+1}, $.proxy(owner, "over")).css({cursor:"pointer"});
		$(this).find("img").bind("mouseout", {index:i+1}, $.proxy(owner, "out"));
		$(this).find("img").bind("click", {index:i+1}, $.proxy(owner, "click"));
	});
}

topMenu.prototype.setOver = function(num) {	// ÀÎÀÚ·Î ¹ÞÀº num¹øÀÇ ¸Þ´º¸¦ Á¦¿ÜÇÑ ´Ù¸¥ ¸Þ´º¸¦ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°ú¸¦ ÁÖ¸é¼­ Åõ¸íµµ¸¦ ³·Ãç´Ù.
	this.overNum = num;
	clearTimeout(this.interval);
	this.menuArray.each (function(i) {
		if (i == num-1) {
		//	$(this).stop().animate({opacity:1.0});
		} else {
		//	$(this).stop().animate({opacity:0.5});
		}
	});
}

topMenu.prototype.over = function(e) {	// ´ë¸Þ´º ¸¶¿ì½º ¿À¹ö½Ã
	clearTimeout(this.interval);	// settimeout ÇÔ¼ö¸¦ ÁßÁö
	var index = e.data.index;	// ÇöÀç ¼±ÅÃµÈ ¸Þ´ºÀÇ index ¼ø¼­´ë·Î 1,2,3,4~~~
	this.setOver(index);

	// ¸ðµç ´ë¸Þ´ºÀÇ ÀÌ¹ÌÁö¸¦ unfocus »óÅÂ·Î µÇµ¹¸² //
	this.menuArray.each ( function(i) {
		var imgSrc = $(this).find('img').attr('src');
		$('> a > img',this).attr('src',imgSrc.replace(/_on.png/g,".png"));
	});

	// ÇöÀç ¸¶¿ì½º¿À¹Ù°¡µÈ ¸Þ´ºÀÇ ÀÌ¹ÌÁö¸¦ º¯°æÇÔ //
	var imgSrc = $('> a > img',this.menuArray.eq(index-1)).attr('src');
	$('> a > img',this.menuArray.eq(index-1)).attr('src',imgSrc.replace(/.png$/ig,'_on.png'));

//	this.subMenuSet.hide();	// À§ÀÇ ÁÙ°ú °°Àº ³»¿ëÀÓ
//	this.menuArray.eq(index-1).find('ul').css({visibility:'visible', display:'none'}).show();	// ÇØ´çÇÏ´Â ¸Þ´º¸¸ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°ú¸¦ ÁÖ¸é¼­ Ãâ·Â

	for(var i=1; i<=this.subMenuSet.length; i++) {
		if(i == index) {
			if(this.subMenuSet.eq(i-1).css('display') == "none") this.subMenuSet.eq(i-1).css({visibility:'visible', display:'none'}).show('fast');
		} else {
			this.subMenuSet.eq(i-1).hide();
		}
	}
}

topMenu.prototype.out = function( e ) {	// ´ë¸Þ´º ¸¶¿ì½º¾Æ¿ô½Ã

}

topMenu.prototype.click = function ( e ) {	// ´ë¸Þ´º Å¬¸¯½Ã
	var index = e.data.index;
	this.currentNum = index;
	this.setOver ( index );

	try {
		this.onClick ( index , 0 );
	} catch ( e ) {

	}

	this.subOutDelay();
}

topMenu.prototype.subOutDelay = function() {	// ¸Þ´º »ç¶óÁö°Ô ÇÏ´Â ÇÔ¼ö
	this.setOver(this.currentNum);
	clearTimeout(this.interval);
//	this.container.find(".gnbSubMenu .wrapper").stop().animate ( { top:-53 } );	// ¼­ºê¸Þ´º¸¦ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°ú¸¦ ÁÖ¸é¼­ À§Ä¡¸¦ -53À¸·Î ÀÌµ¿½ÃÅ°¸é¼­ ¾ø¾îÁö°ÔÇÔ.
//	this.subMenuSet.stop.animate({top:-53});
}

topMenu.prototype.makeSubMenuSet = function() {	// ¼­ºê¸Þ´º ¸¸µé±â
	var owner = this;
	this.subMenuSet = $('ul:has(li)',this.menuArray);	// ¼­ºä¸Þ´º¸¦ °¡Áö°í ÀÖ´Â ¿¤¸®¸ÕÆ®¸¦ ¼±ÅÃ
//	this.subMenuSet.css({display:"none"});
//	this.subMenuSet.hide();

	this.subMenuSet.each(function(i) {
//		$(this).find("li").bind("mouseover", {index:i+1}, $.proxy(owner, "subOver")).css({cursor:"pointer"});
//		$(this).find("li").bind("mouseout", {index:i+1}, $.proxy(owner, "subOut"));
//		$(this).find("li").bind("click", {index:i+1}, $.proxy(owner, "subClick"));

		$(this).find("img").unbind("mouseover");	// ÀÌº¥Æ® »èÁ¦
		$(this).find("img").unbind("mouseout");	// ÀÌº¥Æ® »èÁ¦
		$(this).find("img").unbind("click");	// ÀÌº¥Æ® »èÁ¦

		$(this).find("img").bind("mouseover", {index:i+1}, $.proxy(owner, "subOver")).css({cursor:"pointer"});
		$(this).find("img").bind("mouseout", {index:i+1}, $.proxy(owner, "subOut"));
		$(this).find("img").bind("click", {index:i+1}, $.proxy(owner, "subClick"));

	});
}

topMenu.prototype.subOver = function(e) {	// ¼­ºê¸Þ´º ¸¶¿ì½º¿À¹ÙµÆÀ»½Ã
	var tar = e.target;
	var index = e.data.index;	// »óÀ§¸Þ´º index
	var cIndex = $(tar).parent().parent().index();	// ÇÏÀ§¸Þ´º index
	this.setOverSub(index, cIndex+1);
}

// Ã¹¹øÂ° ÀÎÀÚ ´ë¸Þ´ºÀÇ index, µÎ¹øÂ° ÀÎÀÚ ¼­ºê¸Þ´ºÀÇ index
topMenu.prototype.setOverSub = function(num, overNum) {	// ÀÎÀÚ·Î ¹ÞÀº num¹øÀÇ ¸Þ´º¸¦ Á¦¿ÜÇÑ ´Ù¸¥ ¸Þ´º¸¦ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°ú¸¦ ÁÖ¸é¼­ Åõ¸íµµ¸¦ ³·Ãç´Ù.
	clearTimeout ( this.interval );
	
	this.subMenuSet.find("img").each(function(i) {
		var imgSrc = $(this).attr('src');
		$(this).attr('src',imgSrc.replace(/_on.png/g,'.png'));
	});

	this.subMenuSet.eq(num-1).find("img").each(function(i) {
		if (i == overNum-1) {	// ¸¶¿ì½º¿À¹øµÈ ÀÌ¹ÌÁö Ã³¸®
			var imgSrc = $(this).attr('src');
			if(imgSrc.indexOf("_on") < 0) $(this).attr('src',imgSrc.replace(/.png$/ig,'_on.png'));
		}
	});	
}

topMenu.prototype.subOut = function ( e ) {	// ¼­ºê¸Þ´º ¸¶¿ì½º ¾Æ¿ôµÆÀ»½Ã

}

topMenu.prototype.subClick = function ( e ) {	// ¼­ºê¸Þ´º ¸¶¿ì½º Å¬¸¯ÇßÀ»½Ã

	var tar = e.target;
	var cIndex = $(tar).parent().parent().index();	// ÇÏÀ§¸Þ´º index

	this.currentNum = this.overNum;
	this.currentNum2 = cIndex + 1;

	this.onClick(this.currentNum, this.currentNum2);
	this.subOutDelay();
}

topMenu.prototype.resize = function() {
	var owner = this;
	this.subMenuSet.each ( function(i)
	{
		$(this).css ( { position:"absolute" , top:i*24 , left:contLeft + owner.subMenuPos[i]  } );
	} );
}

topMenu.prototype.getURL = function( num1 , num2 ) {	// ÀÎÀÚ·Î ¹ÞÀº °ª¿¡ ÇØ´çÇÏ´Â Á¤ÀÇµÈ ¹è¿­¿¡¼­ °ª °¡Á®¿À±â
/*	
	try {
		main.closeEvent();	
	} catch (e) {
	}

	var cUrl = this.menuURL[num1][num2];

	if ( location.hash == "#"+this.menuURL[num1][num2]) {
		//mainFrame.startLoad ( cUrl );
	}

	location.hash = cUrl;
*/
}

// ¸Þ´ºÅ¬¸¯½Ã common.js¿¡ ÀÖ´Â linkÇÔ¼ö¸¦ È£Ãâ //
topMenu.prototype.onClick = function(depth1, depth2) {
//	alert(depth1);
//	alert(depth2);
	if(depth2 == 0) depth2 = 1;
	link(depth1, depth2);
}

// ÁÂÃø¸Þ´º Æ÷Ä¿½º ¸ÂÃß±â //
topMenu.prototype.leftOnFocus = function() {	
	var leftUl = $('#left_navi');

	if(parseInt(this.depth2) > 0) {
		var depth2 = this.depth2-1;

		leftUl.find('>li').each(function(i) {
			var imgSrc = $(this).find('>a>img').attr('src');
			
//			if(i == depth2) if(imgSrc) $(this).find('>a>img').attr('src',imgSrc.replace(/_off.png/g,'_on.png'));	// Æ÷Ä¿½º ÁÖ±â
//			else if(imgSrc) $(this).find('>a>img').attr('src',imgSrc.replace(/_on.png/g,'_off.png'));

			if(i == depth2) if(imgSrc) $(this).find('>a>img').attr('src',imgSrc.replace(/.png/g,'_on.png'));	// Æ÷Ä¿½º ÁÖ±â
			else if(imgSrc) $(this).find('>a>img').attr('src',imgSrc.replace(/_on.png/g,'.png'));

		});

		if(parseInt(this.depth3) > 0) {
			var depth3 = this.depth3-1;
			leftUl.find('>li').each(function(i) {
				if(i == depth2) {
					$(this).find('>ul>li').each(function(k) {
						var imgSrc = $(this).find('>a>img').attr('src');
						if(k == depth3) if(imgSrc) $(this).find('>a>img').attr('src',imgSrc.replace(/_off.png/g,'_on.png'));
						else if(imgSrc) $(this).find('>a>img').attr('src',imgSrc.replace(/_on.png/g,'_off.png'));
					});
				}
			});
		}
	}
}

// ¼­ºêÆäÀÌÁö¿¡ ¸Â°Ô Æ÷Ä¿½º ÀÌµ¿ //
topMenu.prototype.onFocus = function() {

	if(parseInt(this.depth1) > 0) {
		var depth1 = this.depth1;
		this.setOver(depth1);	// ¾Ö´Ï¸ÞÀÌ¼Ç È¿°úÁÖ±â
		this.menuArray.each ( function(i) {
			var imgSrc = $(this).find('img').attr('src');
			$('> a > img',this).attr('src',imgSrc.replace(/_on.png/g,".png"));
		});

		var imgSrc = $('> a > img',this.menuArray.eq(depth1-1)).attr('src');
		if(imgSrc) $('> a > img',this.menuArray.eq(depth1-1)).attr('src',imgSrc.replace(/.png/g,'_on.png'));
	}

	if(parseInt(this.depth2) > 0) {
		var depth2 = this.depth2;

		this.subMenuSet.css({display:'none'});	
		this.menuArray.eq(depth1-1).find('ul').css({display:'block'});	// ÇØ´çÇÏ´Â ¸Þ´º¸¸ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°ú¸¦ ÁÖ¸é¼­ Ãâ·Â

		this.subMenuSet.find("img").each(function(i) {
			var imgSrc = $(this).attr('src');
			$(this).attr('src',imgSrc.replace(/_on.png/g,'.png'));
		});
		
		this.subMenuSet.eq(depth1-1).find("img").each(function(i) {
			if (i == depth2-1) {	// ¸¶¿ì½º¿À¹øµÈ ÀÌ¹ÌÁö Ã³¸®
				var imgSrc = $(this).attr('src');
				if(imgSrc.indexOf("_on") < 0) $(this).attr('src',imgSrc.replace(/.png$/ig,'_on.png'));
			}
		});
	}

	this.leftOnFocus();
}
