jQuery(function($){
	// GNB
    var gMenu = $('#gnb');
    var gItem = gMenu.find('>li');
    var lastEvent = null;
    function gMenuToggle(){
        var t = $(this);
        if (t.next('ul').is(':hidden') || t.next('ul').length == 0) {
            gItem.find('>ul').fadeOut();
            t.next('ul').slideDown(200); 
        }; 
    };
    function gMenuOut(){
        gItem.find('ul').fadeOut();
    };
    gItem.find('>a').mouseover(gMenuToggle).focus(gMenuToggle);
    gItem.mouseleave(gMenuOut);

    var ggItem = gMenu.find('>li>ul>li');
    function ggMenuToggle(){
        var t = $(this);
        if (t.next('ul').is(':hidden') || t.next('ul').length == 0) {
            ggItem.find('>ul').hide();
            t.next('ul').slideDown(200); 
        }; 
    };
    function ggMenuOut(){
        ggItem.find('ul').hide();
    };
    ggItem.find('>a').mouseover(ggMenuToggle).focus(ggMenuToggle);
    ggItem.mouseleave(ggMenuOut);

	// Top Menu
	$('#top_mn .item_btn').click(function(){
		if($(this).next().is(':hidden')){
			$(this).parent().parent().find('.layer').fadeOut();
			$(this).next().fadeIn();
		} else {
			$(this).next().fadeOut();
		}
	});
	$('#top_mn .layerClose').click(function(){
		$(this).parent().fadeOut().prev().focus();
	});

	// Form Label Overlapping
	var overlapLabel = $('#hd .itx_wrp').find('>:text,>:password,>textarea').prev('label');
	var overlapInput = overlapLabel.next(':text,:password,textarea');
	overlapLabel.css({'position':'absolute','top':'9px','left':'3px'}).parent().css('position','relative');
	overlapInput
		.focus(function(){
			$(this).prev(overlapLabel).css('visibility','hidden');
		})
		.blur(function(){
			if($(this).val() == ''){
				$(this).prev(overlapLabel).css('visibility','visible');
			} else {
				$(this).prev(overlapLabel).css('visibility','hidden');
			}
		})

	// LNB
	$('#lnb').css({height:$(window).height()-200});

	// Scroll
	$('#to_top').click(function(){$('html, body').animate({scrollTop:0}, {duration:1000})});
	$('#to_btm').click(function(){$('html, body').animate({scrollTop:document.body.scrollHeight}, {duration:1000})});
	$('#to_rpl').click(function(){$('html, body').animate({scrollTop:$('#comment').offset().top}, 'slow')});

	// Calendar
	$('#calendar').click(function(){$('#calendar').html('<object type="application/x-shockwave-flash" data="http://www.uniqlo.com/calendar/swf/uqcal_bp_loader.swf?cID=KR&amp;aID=SEO" width="160" height="320" style="margin:13px;padding:1px;border:1px solid #CCC"><param name="movie" value="http://www.uniqlo.com/calendar/swf/uqcal_bp_loader.swf?cID=KR&amp;aID=SEO" /></object>')
	});

	// Tree Navigation
	var tNav = $('.tNav');
	var tNavPlus = '<button type="button" class="tNavToggle plus">+</button>';
	var tNavMinus = '<button type="button" class="tNavToggle minus">-</button>';
	tNav.find('li>ul').css('display','none');
	tNav.find('ul>li:last-child').addClass('last');
	tNav.find('li>ul:hidden').parent('li').prepend(tNavPlus);
	tNav.find('li>ul:visible').parent('li').prepend(tNavMinus);
	tNav.find('li.active').addClass('open').parents('li').addClass('open');
	tNav.find('li.open').parents('li').addClass('open');
	tNav.find('li.open>.tNavToggle').text('-').removeClass('plus').addClass('minus');
	tNav.find('li.open>ul').slideDown(100);
	$('.tNav .tNavToggle').click(function(){
		t = $(this);
		t.parent('li').toggleClass('open');
		if(t.parent('li').hasClass('open')){
			t.text('-').removeClass('plus').addClass('minus');
			t.parent('li').find('>ul').slideDown(100);
		} else {
			t.text('+').removeClass('minus').addClass('plus');
			t.parent('li').find('>ul').slideUp(100);
		}
		return false;
	});
	$('.tNav a[href=#]').click(function(){
		t = $(this);
		t.parent('li').toggleClass('open');
		if(t.parent('li').hasClass('open')){
			t.prev('button.tNavToggle').text('-').removeClass('plus').addClass('minus');
			t.parent('li').find('>ul').slideDown(100);
		} else {
			t.prev('button.tNavToggle').text('+').removeClass('minus').addClass('plus');
			t.parent('li').find('>ul').slideUp(100);
		}
		return false;
	});
});
