
//LNB
function lnbMenu(a,b) {
	try{
		document.getElementById("lnb").className="loadscript";
		for (var i=1 ; i <= a ; i++ ){
			var obj_lnb = document.getElementById("lnb" + a);
			if(i == a) {
				obj_lnb.className = "on";
				if (b) {
					for ( var j=1; j<=b ; j++ ){
					var obj_lnbs = document.getElementById("lnb" + a + b);
					if(j == b) {
						obj_lnbs.className = "on";
						}
					}
				}
			}
		}
	}catch(e){
	}
}
//Layer_Footlink
jQuery(function($) {

	//gnbRollover
	gnbRollover();
	
	window.sampleLayer = new Layer('#sampleLayer');

	$('a[href="#sampleLayer"]').bind('click', function (e) {
		e.preventDefault();

		sampleLayer.open();
	});

	$('.combo-box').comboBox();
	


	/* utill inputbox */
	/*
	$("input#topSearch").each(function() {
		defaultValue = $(this).val(); // stores the default value

		$(this).focus( function() {
			if ($(this).val() == defaultValue) {
				$(this).val("");
			}         
		});
		
		$(this).blur( function() {
			if ($(this).val() == "") {
				$(this).val(defaultValue);
			}
		});
	});
	*/
});

(function () {
	var window = this,
		document = window.document,
		documentElement = document.documentElement,
		$ = window.jQuery,
		$window = $(window),
		$document = $(document);

	window.viewport = {
		width: 0,
		height: 0,
		scrollTop: 0,
		scrollLeft: 0
	};

	function getDimension() {
		viewport.width = window.innerWidth || documentElement.offsetWidth || 0;
		viewport.height = window.innerHeight || documentElement.offsetHeight || 0;
	}

	function getScroll() {
		viewport.scrollLeft = window.pageXOffset || documentElement.scrollLeft || 0;
		viewport.scrollTop = window.pageYOffset || documentElement.scrollTop || 0;
	}

	getDimension();
	getScroll();

	$window.bind({
		'scroll': function () {
			getScroll();
		},
		'resize': function () {
			getDimension();
			getScroll();
		}
	});

	// 레이어
	window.Layer = function (layer, options) {
		this.$layer = layer.jQuery ? layer : $(layer);
		this.options = $.extend({}, this.defaults, options);

		this.init();
	};
	Layer.prototype = {
		defaults: {
			openEffect: {
				type: 'show',
				speed: 300
			},
			closeEffect: {
				type: 'hide',
				speed: 300
			},
			closeButton: '.close',
			curtain: {
				init: true,
				id: 'curtain',
				opacity: 0.3,
				speed: 300
			},
			center: true
		},
		init: function () {
			var self = this,
				$layer = self.$layer,
				options = self.options,
				$closeButton = $layer.find(options.closeButton);

			$layer.bind({
				'open.Layer': function () {
					self.open();
				},
				'close.Layer': function () {
					self.close();
				}
			});

			if ($closeButton.length) {
				$closeButton.bind('click.Layer', function (e) {
					e.preventDefault();

					$layer.trigger('close.Layer');
				});
			}
		},
		open: function () {
			var self = this,
				$layer = self.$layer,
				options = self.options,
				openEffect = options.openEffect;

			if (options.center) {
				self.center();
			}

			if (options.curtain.init) {
				self.initCurtain();

				self.$curtain.trigger('open.Layer');
			}

			$layer[openEffect.type](openEffect.speed, function () {
				$layer.data('isOpen.Layer', true);
			});
		},
		close: function () {
			var self = this,
				$layer = self.$layer,
				$curtain = self.$curtain,
				options = self.options,
				closeEffect = options.closeEffect;

			if ($curtain && $curtain.length) {
				$curtain.trigger('close.Layer');
			}

			$layer[closeEffect.type](closeEffect.speed, function () {
				$layer.data('isOpen.Layer', false);
			});
		},
		initCurtain: function () {
			if (this.$curtain && this.$curtain.length) {
				return null;
			}

			var self = this,
				$layer = self.$layer,
				options = self.options,
				curtainOptions = options.curtain,
				curtainId = curtainOptions.id,
				curtainSpeed = curtainOptions.speed,
				curtainOpacity = curtainOptions.opacity,
				curtain = document.getElementById(curtainId),
				$curtain;

			if (curtain) {
				$curtain = $(curtain);
			} else {
				$curtain = $('<div id="' + curtainId + '"></div>');
			}

			$curtain.insertBefore($layer);

			$curtain.bind({
				'open.Layer': function () {
					var position = $curtain.css('position');

					// for IE6: css에서 _position:absolute; 선언해야 함.
					if (position === 'absolute') {
						var clientHeight = documentElement.clientHeight,
							scrollHeight = documentElement.scrollHeight,
							height = scrollHeight > clientHeight ? scrollHeight : clientHeight;

						$curtain.css({
							'position': 'absolute',
							'height': height
						});
					}

					$curtain.fadeTo(curtainSpeed, curtainOpacity);
				},
				'close.Layer': function () {
					$curtain.fadeOut(curtainSpeed);
				},
				'click.Layer': function () {
					$layer.trigger('close.Layer');
				}
			});

			self.$curtain = $curtain;
		},
		center: function () {
			var self = this,
				$layer = self.$layer,
				width = $layer.width(),
				height = $layer.height(),
				offset = $layer.offset(),
				position = $layer.position(),
				diffTop = position.top - offset.top,
				diffLeft = position.left - offset.left,
				top = ((viewport.height - height) / 2) + diffTop + viewport.scrollTop,
				left = ((viewport.width - width) / 2) + diffLeft + viewport.scrollLeft;

			if (width > viewport.width) {
				$layer.css('left', diffLeft);
			} else {
				$layer.css('left', left);
			}

			if (height > viewport.height) {
				$layer.css('top', diffTop);
			} else {
				$layer.css('top', top);
			}
		}
	};

	// 콤보박스
	$.fn.comboBox = function (options) {
		var defaults = {
				button: '.button',
				list: 'ul, div', //클래스명으로 줘도 무관 list: '.layer'
				speed: 300
			},
			config = $.extend({}, defaults, options);

		return this.each(function () {
			var self = this,
				$self = $(self),
				$button = $self.find(config.button),
				$list = $self.find(config.list);

			new Layer($list, {
				openEffect: {
					type: 'slideDown',
					speed: config.speed
				},
				closeEffect: {
					type: 'slideUp',
					speed: config.speed
				},
				curtain: {
					init: false
				},
				center: false
			});

			/*$button.bind('click.comboBox', function (e) {
				e.preventDefault();

				if ($list.data('isOpen.Layer')) {
					$list.trigger('close.Layer');
				} else {
					$list.trigger('open.Layer');
				}
			});*/
		});
	};
}());


/* jQuery Ready */
jQuery(function($) {
	/* combo box */
	$('.combo-box a.button').click(function(){
		$('.combo-box #fmView').slideToggle();
	});

	/* Music - Select Genre */
	$('.sub-serach a.music-genre').click(function(){
		var $span = $('span span', this);
		var $is = $('.open', $span).is(':hidden');
		if($is) { // Open
			$('.close', $span).hide();
			$('.open', $span).show();
			$('#musicLayer').slideDown();
		} else { // Close
			$('.close', $span).show();
			$('.open', $span).hide();
			$('#musicLayer').slideUp();
		}
	});
	$('#musicLayer a.close').click(function(){
		$('.sub-serach a.music-genre span span .close').show();
		$('.sub-serach a.music-genre span span .open').hide();
		$('#musicLayer').slideUp();
	});

	//select
	//$('select').selectbox();
	/* selectbox 삭제 (2010.11.09) */

	/* comment show/hide */
	$("#comment .com-btn a").click(function(){
		var $hide = $("#comment li.com-hide");
		if( $hide.is(":hidden") ) {
			$hide.slideDown();
			$(this).addClass("close");
		} else {
			$hide.slideUp();
			$(this).removeClass("close");
		}
	});

	/* faq list */
	$("ul.faq-list li div.question span.title a").click(function(){
		if( !$(this).parents("li").is(".on") ) {
			$(this).parents("ul").find("li").removeClass("on").find(".answer").slideUp("fast");
			$(this).parents("li").addClass("on").find(".answer").slideDown();
		} else {
			$(this).parents("li").removeClass("on").find(".answer").slideUp("fast");
		} /* 열려있는 답변을 눌렀을때 닫히기 (2010-11-12) */
	});

	/* On Your ~ Tab */
	$("ul.tab2 li a").click(function(){
		$(this).parents("ul").find("li").removeClass("on");
		$(this).parent().addClass("on");
		$(".wrapAbout").hide().eq( $(this).parent().index() ).show();
	});
	$("ul.device-list li a").click(function(){
		$(this).parents("ul").find("li").removeClass("on");
		$(this).parents("li").addClass("on");
		$(".device-guide").hide().eq( $(this).parents("li").index() ).show();
	});
	$("ul.mobile-banner li a").click(function(){
		$("ul.mobile-banner li a").each(function(idx){
			var src = $("img", this).attr('src');
			$("img", this).attr('src', src.replace('_on', '_off'));
		});

		var c_src = $("img", this).attr('src');
		$("img", this).attr('src', c_src.replace('_off', '_on'));

		$(".guidebox").hide().eq( $(this).parents("li").index() ).show();
	});

	/* top_search_header_drop */
	$('#top_search_header_drop dl').hover(function(){
		$(this).addClass('ac_over');
	},function(){
		$(this).removeClass('ac_over');
	});

	/* search_header_drop */
	$('#search_header_drop dl').hover(function(){
		$(this).addClass('ac_over');
	},function(){
		$(this).removeClass('ac_over');
	});

	/* tab paging with topAppasGate.jsp */
	/*
	$('.tabpaging a.num').click(function(){
		var getId = $(this).parent().parent().attr('id');
		var $id = $('#' + getId);

		// paging
		$('.tabpaging a', $id).removeClass('on');
		$(this).addClass('on');

		// main
		$('ul', $id).hide().eq( $(this).index() - 1 ).show();
	});	
	$('.tabpaging a:first-child').click(function(){
		var getId = $(this).parent().parent().attr('id');
		var $id = $('#' + getId);
		var current = $('.tabpaging a.on', $id).index();
		
		if(current != "1") {
			$('.tabpaging a', $id).removeClass('on');
			$('.tabpaging a', $id).eq( current -1 ).addClass('on');

			$('ul', $id).hide().eq( (current-1) -1 ).show();
		}
	});
	$('.tabpaging a:last-child').click(function(){
		var getId = $(this).parent().parent().attr('id');
		var $id = $('#' + getId);
		var current = $('.tabpaging a.on', $id).index();
		
		if(current != ( $(this).index() -1 )) {
			$('.tabpaging a', $id).removeClass('on');
			$('.tabpaging a', $id).eq( current +1 ).addClass('on');

			$('ul', $id).hide().eq( (current-1) +1 ).show();
		}
	});
	*/
	/* delete popup */
	$('.fancy-popup').fancybox({
		padding:0,
		showCloseButton:false,
		showNavArrows:false,
		changeSpeed:150
	});
	$('.fancy-popup420').fancybox({
		padding:0,
		showCloseButton:false,
		showNavArrows:false,
		changeSpeed:150,
		width:500
	});
});

//Lyaer
var zTemp=1100;
function openLayer(id, icon) {
	var offset = jQuery(icon).position();
	var layer = document.getElementById(id);
	
	//지원 호환 단말기 레이어 zIndex
	if (id=='mySupportedPhone' || id=='supportedPhone') {
		if (layer.style.zIndex < zTemp) layer.style.zIndex = zTemp+100;
	}

	//alert (layer.style.zIndex);
	if(icon) {
		layer.style.top = offset.top + "px";
		layer.style.left = (offset.left + 30) + "px";
		jQuery(layer).slideDown().mouseover(function(){
			closeLayer(id);
		});
	} else {
		layer.style.display = 'block';		
		zTemp = layer.style.zIndex;
	}
}
function closeLayer(id) {
	var layer = document.getElementById(id);
	layer.style.display = 'none';
	//jQuery(layer).slideUp(100);
}

//searchLayer
function serachLayer(input, id) {
	var value = input.value,
		button = document.getElementById(id);

	if (input.value) {
		button.style.display = 'block';
		if(id == "top_search_header_drop") {
			if(jQuery.browser.msie) {
				jQuery('#contents').css({zIndex:'-1'});
				jQuery('#gnb').css({position:'static'});
				jQuery("body").click(function(){
					button.style.display = 'none';
					jQuery('#contents').css({zIndex:''});
				});
			}
		}
	} else {
		button.style.display = 'none';
		if(id == "top_search_header_drop") {
			if(jQuery.browser.msie) {
				jQuery('#contents').css({zIndex:''});
				jQuery('#gnb').css({zIndex:''});
			}
		}
	}
}

//winclose
function winClose(){
	window.close();
}

/* LNB Select Device Layer */
function selectDevice() { // '#lnb .select-device a'
	if(jQuery.browser.msie) { jQuery('#contents').css({zIndex:'-1'}); }
	jQuery('#lnb .select-device-layer').show(500);
}
function selectDeviceXtwo() {
	jQuery('#lnb .select-device-layer').hide(500);
	if(jQuery.browser.msie) { jQuery('#contents').css({zIndex:''}); }

	// 버튼 이름 변경하기 (2010.11.05)
	jQuery(".select-right a.btn9 span span span span").text("Change Device");
}
function selectDeviceX() { // '#lnb .select-device-layer a.close'
	jQuery('#lnb .select-device-layer').hide(500);
	if(jQuery.browser.msie) { jQuery('#contents').css({zIndex:''}); }
}


//Tab
function mTab(tit,obj,num,total) {
	document.getElementById('mainTop').className = 'loadscript';
	
	for (i=1; i<=total; i++) {
		if (i==num)    {
			document.getElementById(tit+i).className = 'on';
			document.getElementById(obj+i).style.display = 'block';
		} else {
			document.getElementById(tit+i).className = '';
			document.getElementById(obj+i).style.display = 'none';
		}
	}
}


//GNB
function gnbMenu(depth1) {
	var lnb = document.getElementById("gnb"),
	lnbmn = document.getElementById('gnb'+depth1);

	if (lnbmn && depth1 > 0) {
		lnbmn.getElementsByTagName('img')[0].src = lnbmn.getElementsByTagName('img')[0].src.replace('.png', '_on.png');
		if (lnbmn.getElementsByTagName('ul')[0]) {
			lnbmn.className += ' on';
		}
	}
}
/* gnb rollover */
function gnbRollover() {
	try {
		var lnb = document.getElementById("gnb");
		var lnbRoll = lnb.getElementsByTagName('a');
	
		for (var r=0; r<lnbRoll.length; r++) {
			if (lnbRoll[r].getElementsByTagName('img')[0].src.indexOf('_on.gif') != -1) {
				//do Nothing.
			} else {
				lnbRoll[r].onmouseover = lnbRoll[r].onfocus = function () {
					if (this.getElementsByTagName('img')[0].src.indexOf('_on.gif') != -1) return false;
					var src = this.getElementsByTagName('img')[0].src.replace('.gif', '_on.gif');
					this.getElementsByTagName('img')[0].src = src;
				}
	
				lnbRoll[r].onmouseout = lnbRoll[r].onblur = function () {
					var src = this.getElementsByTagName('img')[0].src.replace('_on.gif', '.gif');
					this.getElementsByTagName('img')[0].src = src;
				}
			}
		}
	}
	catch(err) {}
}


/* flash btn */
function bigsize(n) {
	swf_name = document.getElementById("flashArea");
	if(n == "open"){
		swf_name.style.width ="717px";
	}else{
		swf_name.style.width ="717px";
	}
	stopsliding(true);
}
function smallsize(n) {
	swf_name = document.getElementById("flashArea");
	if(n == "close"){
		swf_name.style.width ="150px";
	}else{
		swf_name.style.width ="150px";
	}
	stopsliding(false);
}
function closeM() {
	//alert("closeM");
}

/* main flash select device */
/*function mainDeviceBig(){
	swf_name = document.getElementById("mainDeviceFlashLayer");
	swf_name.style.display = "block";
}

function mainDevice(g){
	swf_name = document.getElementById("mainDeviceFlashLayer");
	if(g=='off'){
		//메인 SelectDeviceBig 플레시에서 X 버튼 클릭시
		swf_name.style.display = "none";
	}
}*/

function mainOpenChk(v){
    swf_name = document.getElementById("mainDeviceFlashLayer");
    v = swf_name.style.display;
    return v
}

/* category */
function catebigsize(n) {
	try {
		swf_name = document.getElementById("mainDeviceFlashLayer");
		swf_name.style.display = "block";
	}catch (e){
		swf_name = document.getElementById("selectDeviceFlashBig");
		swf_name.style.display = "block";
	}
}
function catesmallsize(n) {
	try {
		swf_name = document.getElementById("mainDeviceFlashLayer");
		swf_name.style.display = "none";
	}catch (e){
		swf_name = document.getElementById("selectDeviceFlashBig");
		swf_name.style.display = "none";
	}
}


//report abuse layer
var OtaCommentPosion=0;
var t=0;
var l=0;
jQuery(document).mousemove(function(e) {
	
	OtaCommentPosion =(e.pageY - 320); //이용후기에서 쓰이는 좌표값 2011 11 25 이상석
	t = (e.pageY - 320) + 'px';        //상단 좌표
	//l = (e.pageX - 600) + 'px';      //좌측 좌표
	
});

/* onload - design.js파일 제일 하단에 있어야 함. 
window.onload = function(){
	gnbRollover();
}
$j(document).ready(	
		function(){
			gnbRollover();
}  );*/	
