﻿/* Rolling Banner Start */
// 배너롤링
function PhRolling(/* 리스트id */ target, /* 레프트버튼id */ leftBtn, /* 라이트버튼id */ rightBtn, /* 리스트가 움직일 갯수 */ listCnt){
	this.xScrollTo = 0; // 목표지점
	this.xScrollFrom = 0; // 출발당시지점
	this.moveListCnt = listCnt; // 리스트가 움직일 갯수
	this.mvFlag = true;

	this.target = document.getElementById(target); /* 리스트타겟 */
	this.targetCoverWidth = this.target.parentNode.offsetWidth; /* 리스트를 감싸며 레이어속성인 놈의~ 총넓이(리스트레이어의 딱 넓이 만큼) */
	this.rollingList = this.target.getElementsByTagName("LI");
	this.rollingListWidth = this.rollingList[0].offsetWidth; /* 상품리스트들의 개별넓이 */
	this.visibleListCnt =  parseFloat(this.targetCoverWidth/this.rollingListWidth, 10)


	var target = this.target;
	target.style.position = "absolute";
	target.style.left = this.getStyle(target, "left") + "px";
	target.style.top = this.getStyle(target, "top") + "px";
	target.style.width = (this.rollingListWidth * this.rollingList.length) + "px";

	var func = this;
	var leftBtn = document.getElementById(leftBtn); /* 레프트버튼 */
	var rightBtn = document.getElementById(rightBtn); /* 라이트버튼 */
	leftBtn.onclick = function(){ func.leftMove();return false; };
	rightBtn.onclick = function(){ func.rightMove();return false; };
}
PhRolling.prototype.init = function(num){ // 초기 페이지에 맞는 리스트목록으로 이동
	if(!num) return false;
	var target = this.target;
	this.btnVisibility();
	this.xScrollTo = -(this.rollingListWidth * --num);
	this.xScrollFrom = 0;
	this.action();
}
PhRolling.prototype.getStyle = function(ele, what){ // css스타일을 얻을때 사용하는 함수
    var target = ele;
    var value = "";
    if(target.currentStyle){
        value = target.currentStyle[what];
    }else if(window.getComputedStyle){
        value = window.getComputedStyle(target,null)[what];
    }
    return parseInt(value, 10);
}
PhRolling.prototype.leftMove = function(){ // 왼쪽방향 << 이미지가 클릭되었을때
	if(this.mvFlag == true){
		this.mvFlag = false;
		var target = this.target;
		if(this.getStyle(target, "left") >= 0){
			this.init(this.rollingList.length-this.visibleListCnt +1);
			return false;
		}
		this.btnVisibility();
		this.xScrollTo = this.getStyle(target, "left") + (this.rollingListWidth * this.moveListCnt);
		this.xScrollFrom = this.getStyle(target, "left");
		this.action();
	}
}
PhRolling.prototype.rightMove = function(){ // 오른쪽방향 >> 이미지가 클릭되었을때
	if(this.mvFlag == true){
		this.mvFlag = false;
		var target = this.target;
		if(this.getStyle(target, "left") <= -(this.rollingListWidth*(this.rollingList.length - this.visibleListCnt))){
			// 레이어의 style.left가 리스트의offsetWidth에서 화면에 보이는 부분의 넓이를 제외한 크기보다 같거나 작아야함.
			this.init(1);
			return false;
		}
		this.btnVisibility();
		this.xScrollTo = this.getStyle(target, "left") - (this.rollingListWidth * this.moveListCnt);
		this.xScrollFrom = this.getStyle(target, "left");
		this.action();
	}
}
PhRolling.prototype.btnVisibility = function(){ // 화살표 보이기/가리기
	/*
	if(this.leftBtn.style.visibility != "hidden"){
		this.leftBtn.style.visibility = "hidden";
		this.rightBtn.style.visibility = "hidden";
	}else{
		this.leftBtn.style.visibility = "visible";
		this.rightBtn.style.visibility = "visible";
	}
	*/
}
PhRolling.prototype.action = function(){ // 리스트들 움직이는 동작부분
	var xScrollTo = this.xScrollTo;
	var xScrollFrom = this.xScrollFrom;
	var func = this;
	var target = this.target;
	var func_PhRolling = setInterval(function(){
		if(xScrollTo > xScrollFrom){
			var speed = Math.ceil((xScrollTo - xScrollFrom) * 0.2);
		}else if(xScrollTo <= xScrollFrom){
			var speed = Math.floor((xScrollTo - xScrollFrom) * 0.2);
		}
		target.style.left = (func.getStyle(target, "left") + speed) + "px";
		xScrollFrom = func.getStyle(target, "left");
		if(Math.abs(Math.abs(xScrollTo) - Math.abs(xScrollFrom)) == 0){
			func.btnVisibility();
			clearInterval(func_PhRolling);
			func.mvFlag = true;
		}
	}, 36);
}


// 레이어 덮기
function addEvent(obj, type, fn){
	if(obj.addEventListener){
		obj.addEventListener(type, fn, false);
	}else if(obj.attachEvent){
		if(obj["e"+type+fn]) return false;
		obj["e"+type+fn] = fn;
		obj.attachEvent("on"+type, obj["e"+type+fn]);
		EventCache.add(obj, type, fn);
	}
}
function removeEvent(obj, type, fn){
	if (obj.removeEventListener){
		obj.removeEventListener(type, fn, false);
	}else if (obj.detachEvent){
        obj.detachEvent("on"+type, obj["e"+type+fn]);
		obj["e"+type+fn] = null;
	}
}
function eventStopBubble(e){ // 이벤트가 상위로 겨 올라가는것을 막습니다.
	if(e.stopPropagation) e.stopPropagation();
	else e.cancelBubble = true;
}
var EventCache = function(){
	var listEvents = [];
	return {
		listEvents : listEvents,
		add : function(node, sEventName, fHandler){
			listEvents.push(arguments);
		},
		flush : function(){
			var i, item;
			for(var i=listEvents.length-1; i>=0; i--){
				item = listEvents[i];
				if(item[0].removeEventListener) continue;
				if(item[1].substring(0, 2) != "on") item[1] = "on" + item[1];
				if(item[0].detachEvent){
					item[0].detachEvent(item[1], item[2]);
					continue;
				}
				item[0][item[1]] = nuill;
			} // for
		}
	}
}();
addEvent(window,'unload',EventCache.flush);

// popLryInBg 함수시작~
function lryPopup(){
	var activeFlag = false; // 기능이 활성화 되었는지
	var contentLry = "";
	var bgLry = null;
	var root = this;

	setTimeout(function(){
		addEvent(window, 'resize', function(){
			root.contentLry_setPosition();
		});
		addEvent(window, 'resize', function(){
			root.bgLry_setPosition();
		});
	}, 0);

	// 셀렉트박스 보이기/감추기
	this.selectBoxVisibility = function(status){
		if(navigator.appVersion.indexOf("MSIE 6.0") != -1){
			var slt = document.getElementsByTagName("SELECT");
			for(i=0; i<slt.length; i++){
				//slt[i].style.visibility = status;
			}
		}
	}

	// 검정색배경레이어 생성
	this.createBgLry = function(){
		bgLry = document.createElement("div");
		var objBody = document.body || document.documentElement;
		objBody.appendChild(bgLry);

		bgLry.setAttribute('id', 'lry_popupBg');
		with(bgLry.style){
			display = "none";
			position = "absolute";
			top = "0";
			left = "0";
			zIndex = "100";
			backgroundColor = '#222222';
			filter = "alpha(opacity=80)";
			opacity = .8;
		}
		root.bgLry_setPosition();
		// bgLry.onclick = function(){ root.close(); }
	}

	// 내용레이어를 현재 화면 가운데 위치시키기
	this.contentLry_setPosition = function(){
		if(!contentLry) return false;
		var winW=Number(document.documentElement.clientWidth);
		var winH=Number(document.documentElement.clientHeight);
		var scrollT=Number(document.documentElement.scrollTop || document.body.scrollTop);
		var scrollL=Number(document.documentElement.scrollLeft || document.body.scrollLeft);
		var scrollH=Number(document.documentElement.scrollHeight);

		contentLry.w = Number(contentLry.offsetWidth);
		contentLry.h = Number(contentLry.offsetHeight);
	
		if(contentLry.h > winH){
			if(contentLry.h >= scrollH){
				// 레이어가 문서의 전체 세로사이즈 보다도 클경우
				contentLry.style.top = "10px";
			}else{
				// 레이어가 브라우저의 보이는 화면높이 보다는 크지만 총 문서의 높이보다는 작을때
				var tmp = (scrollH-scrollT)-(contentLry.h+15);
				if(tmp>=0){
					contentLry.style.top = scrollT+15+"px";
				}else{
					var h = contentLry.h-(scrollH-scrollT);
					contentLry.style.top = Number(scrollT-h-15)+"px";
				}
			}
		}else{
			contentLry.style.top = Math.floor(winH/2-contentLry.h/2+scrollT) + "px";
		}
		contentLry.style.left = Math.floor(winW/2-contentLry.w/2+scrollL) + "px";
		//if(scrollT < 100) contentLry.style.top = "100px";

		//contentLry.style.top = winH/2 - contentLry.w/3 + scrollT + "px";
		//contentLry.style.left = winW/2 - contentLry.w/2 + scrollL + "px";
	}

	// 검정색배경레이어를 body전체 사이즈로 해서 덮기
	this.bgLry_setPosition = function(){
		if(!bgLry) return false;
		var w=document.documentElement.clientWidth;
		var h=document.documentElement.clientHeight;
		bgLry.style.width = w+"px";
		bgLry.style.height = h+"px";

		var scroll_w=document.documentElement.scrollWidth;
		var scroll_h=document.documentElement.scrollHeight;

		if(scroll_h>h) h=scroll_h;
		if(scroll_w>w) w=scroll_w;

		bgLry.style.width = w+"px";
		bgLry.style.height = h+"px";
	}

	// 실행
	this.run = function(target,vodurl){
		root.selectBoxVisibility('hidden');

		if(!bgLry){
			root.createBgLry();
			bgLry = document.getElementById("lry_popupBg");
		}
		root.bgLry_setPosition();
		bgLry.style.display = "block";

		var view = document.getElementById("lry_group");
		if(view.className=="player_wrap") {
			vodpalyer.movie = vodurl;
		}else{
			var view = document.getElementById("goodsImg");
			var zoom = document.getElementById("zoomImg");
			if(zoom) zoom.src = view.src.replace("-1-C.jpg", ".jpg");
		}

		var source = document.getElementById(target);
		with(source.style){
			position = "absolute";
			display = "block";
			zIndex = "1000000";
		}
		contentLry = source;
		root.contentLry_setPosition(source);

		activeFlag = true;
	}

	// 닫기
	this.close = function(){
		var view = document.getElementById("lry_group");
		if(view.className=="player_wrap") {
			vodpalyer.movie = "../common/flash/flv_player.swf";
		}

		contentLry.style.display = 'none';
		bgLry.style.display = "none";
		root.selectBoxVisibility('visible');

		activeFlag = false;
	}
}

var lryPopup = new lryPopup();


// hasClass
function hasClass(element,value) {
	var re = new RegExp("(^|\\s)" + value + "(\\s|$)");
	return re.test(element.className);
}

// addClass
function addClass(element,value) {
	if (!element.className) {
			element.className = value;
	}else{
		var new_class_name = element.className;
		if (!hasClass(element,value)) {
			element.className += " " + value;
		}
	}
}

// removeClass
function removeClass(element,value) {
	if (element.className && hasClass(element,value)) {
		var re = new RegExp("(^|\\s)" + value);
		element.className = element.className.replace(re,"");
	}
}

/* css전혀 없으면 */
function styleLinkCheck(){
	var ss = document.styleSheets[0];
	if(ss) return true;
	else return false;
}

// tabList
function tabList(ele, active){
	if(styleLinkCheck() === false) return;

	var ele = document.getElementById(ele);
	if(active === undefined) active = 0;

	// tabtit를 포함하는 제목 노드들 수집
	var btn = ele.getElementsByTagName("*");
	for(var i=0; i<btn.length; i++){
		if(btn[i].className.indexOf('tabtit') != -1){
			btn = btn[i].nodeName;
			btn = ele.getElementsByTagName(btn);
			break;
		}
	}

	// 타이틀의 타겟 레이어 이름중 숫자만 뺀 영문만 tab1 중 tab만
	var layerName = btn[0].getElementsByTagName("A")[0].href.split("#")[1];
	layerName = layerName.slice(0, layerName.length-1);

	for(var i=0; i<btn.length; i++){
		ele["target" + i] = document.getElementById(layerName + (i+1)); // 노드저장 예) tab1, tab2, tab3
		ele["a" + i] = btn[i].getElementsByTagName("A")[0]; // 탭링크
		ele["img" + i] = btn[i].getElementsByTagName("IMG")[0]; // 이미지노드 저장
		btn[i].style.position = "absolute"; // 제목레이어 적용
	}

	/* 초기세팅 */
	var oldActive = active;
	for(var i=0; i<btn.length; i++){
		ele["a" + i].cnt = i;
		ele["a" + i].onclick = function menuActive(){
			ele["target" + oldActive].style.display = "none";
			if(ele["img" + oldActive])
				ele["img" + oldActive].src = ele["img" + oldActive].src.replace("_on", "_off");
			else
				addClass(btn[oldActive], "off");
			ele["target" + this.cnt].style.display = "block";

			if(ele["img" + this.cnt])
				ele["img" + this.cnt].src = ele["img" + this.cnt].src.replace("_off", "_on");
			else
				removeClass(btn[this.cnt], "off");
			oldActive = this.cnt;
			return false;
		}

		if(active == i) continue; // 초기 활성화
		ele["target" + i].style.display = "none";
		if(ele["img" + i])
			ele["img" + i].src = ele["img" + i].src.replace("_on", "_off");
		else
			addClass(btn[i], "off");
	}
}

//이미지 바꾸기 - alt값과 함께
function imgChg(my){
	var visualimg = document.getElementById('visualimg');
	var target = document.getElementById('chgimg');
	var img = my.getElementsByTagName("img")[0];
	var alt = img.getAttribute("alt");
	var txt = document.getElementById("visualimg_expl");

	txt.innerHTML= alt;
	target.src = img.src;
	visualimg.src = img.src;
	 return false;
}

//이미지 바꾸기 - 이미지 단독
function imgChg2(my){
	var visualimg = document.getElementById('visualimg');
	var target = document.getElementById('visualimg');
	var img = my.getElementsByTagName("img")[0];

	target.src = img.src;
	 return false;
}


// getElementsByClass
function getElementsByClass(srchClass,node,tag) {
	node = node || window.document;
	tag = tag || "*";
	var class_elements = new Array();
	var els = node.getElementsByTagName(tag);
	for (var i=0; i<els.length; i++) {
		if (hasClass(els[i],srchClass)) class_elements.push(els[i]);
	}
	return class_elements;
}

/* 노드 감추기/보이기 */
function layerToggle(obj){
	var obj = document.getElementById(obj);
	var aNode = getElementsByClass("lyrbtn", obj, "a");

	for(var i=0; i<aNode.length; i++){
		document.getElementById(aNode[i].href.split("#")[1]).style.display = "none";
		aNode[i].onclick = function(){
			var my = this; // a링크 자신
			var ele = document.getElementById(this.href.split("#")[1]); // a링크 href에 걸린 id의를 가진 태그 object

			var value = null;
			if(ele.currentStyle) var value = ele.currentStyle['display'];
			else if(document.defaultView.getComputedStyle) var value = document.defaultView.getComputedStyle(ele,null)['display'];

			// none일때와 아닐때 다르게 먹이기
			var myIMG = my.getElementsByTagName("IMG")[0];
			if(value != "none"){
				if(ele.style.display != 'none'){
					ele.style.display = 'none';
					removeClass(ele, "lryon");
					(myIMG) ? myIMG.src = myIMG.src.replace("on.gif", "off.gif") : removeClass(my, "on");
				}else{
					ele.style.display = '';
					addClass(ele, "lryon");
					(myIMG) ? myIMG.src =myIMG.src.replace("off.gif", "on.gif") : addClass(my, "on");
				}
			}
			else{
				if(ele.style.display != 'block'){
					ele.style.display = 'block';
					addClass(ele, "lryon");
					(myIMG) ? myIMG.src =myIMG.src.replace("off.gif", "on.gif") : addClass(my, "on");
				}else{
					ele.style.display = ''
					removeClass(ele, "lryon");
					(myIMG) ? myIMG.src = myIMG.src.replace("on.gif", "off.gif") : removeClass(my, "on");
				}
			}
			return false;
		}
	}
}

// maptabList
function maptabList(ele, active){
	if(styleLinkCheck() === false) return;

	var ele = document.getElementById(ele);
	if(active === undefined) active = 0;

	// tabtit를 포함하는 제목 노드들 수집
	var btn = ele.getElementsByTagName("*");
	for(var i=0; i<btn.length; i++){
		if(btn[i].className.indexOf('tabtit') != -1){
			btn = btn[i].nodeName;
			btn = ele.getElementsByTagName(btn);
			break;
		}
	}

	// 타이틀의 타겟 레이어 이름중 숫자만 뺀 영문만 tab1 중 tab만
	var layerName = btn[0].getElementsByTagName("A")[0].href.split("#")[1];
	layerName = layerName.slice(0, layerName.length-1);

	for(var i=0; i<btn.length; i++){
		ele["target" + i] = document.getElementById(layerName + (i+1)); // 노드저장 예) tab1, tab2, tab3
		ele["a" + i] = btn[i].getElementsByTagName("A")[0]; // 탭링크
		ele["img" + i] = btn[i].getElementsByTagName("IMG")[0]; // 이미지노드 저장
		btn[i].style.position = "absolute"; // 제목레이어 적용
	}

	/* 초기세팅 */
	var oldActive = active;
	for(var i=0; i<btn.length; i++){
		ele["a" + i].cnt = i;
		ele["a" + i].onclick = function menuActive(){
			ele["target" + oldActive].style.display = "none";
			document.getElementById(String(layerName+"Map"+oldActive)).style.display = "none";
			if(ele["img" + oldActive])
				ele["img" + oldActive].src = ele["img" + oldActive].src.replace("_on", "_off");
			else
				addClass(btn[oldActive], "off");
			ele["target" + this.cnt].style.display = "block";

			document.getElementById(String(layerName+"Map"+this.cnt)).style.display = "block";
			if(ele["img" + this.cnt])
				ele["img" + this.cnt].src = ele["img" + this.cnt].src.replace("_off", "_on");
			else
				removeClass(btn[this.cnt], "off");
			oldActive = this.cnt;
			return false;
		}

		if(active == i) continue; // 초기 활성화
		ele["target" + i].style.display = "none";
		if(ele["img" + i])
			ele["img" + i].src = ele["img" + i].src.replace("_on", "_off");
		else
			addClass(btn[i], "off");
		document.getElementById(layerName+"Map"+i).style.display = "none";
	}
}

/*메인 공지사항*/
function mainUser(mode){
	var objuser = document.getElementById('mn_notice');
	var objclose = document.getElementById('content-close');
	var objopen = document.getElementById('content-open');
        if(mode=="v") {
                objuser.style.width = "26px";
                objclose.style.display = "block";

        }else{
                objuser.style.width = "330px";
                objclose.style.display = "none";
                objopen.style.display = "block";

	}
}



function selectWebzineForm()
{

	var frmName=document.formWebzine.webzine.value;

	var ele = document.getElementById("webdiv");
	var webzineId="";
	var btn = ele.getElementsByTagName("div");
	for(var i=(btn.length - 1); i>=0; i--){
	//for(var i=0; i<btn.length; i++){
		webzineId = document.getElementById("webzine" + (i));
		if(frmName == i) webzineId.style.display ="block";		
		else webzineId.style.display ="none";		 	

	}

}

