﻿var Klassic = {
	__postLoginAction__: null,
	__postUploadAction__: null,
	__postCloseFrameAction__: null,
	__postZipcodeAction__: null,


	// 로그인 데이터..!
	memberData:{
		login: false,
		uid: "",
		uname: "",
		type: "",
		mania: false
	},


	layerFrame: null,
	pageLayer: null,
	disabledZone: null,
	downloadFrame: null,


	// 페이지 레이어 내부의 프레임 반환
	getLayerFrame: function(){
		Klassic.layerFrame = $("__searchFrame__");

		if( !Klassic.layerFrame ){
			Klassic.layerFrame = new Element("iframe");
			Klassic.layerFrame.id = Klassic.layerFrame.name = "__layerFrame__";
			Klassic.layerFrame.frameBorder = 0;

			Klassic.getPageLayer().appendChild( Klassic.layerFrame );
		}

		return Klassic.layerFrame;
	},


	// 페이지 레이어 반환
	getPageLayer: function(){
		Klassic.pageLayer = $("__pageLayer__");

		if( !Klassic.pageLayer ){
			Klassic.pageLayer = new Element("div");

			Klassic.pageLayer.id = "__pageLayer__";
			Klassic.pageLayer.style.display = "none";
			Klassic.pageLayer.style.position = "absolute";
			Klassic.pageLayer.width = Klassic.pageLayer.height = 0;
			

			Klassic.pageLayer.page = Klassic.getLayerFrame();

			Event.observe(
				window,
				"resize",
				function(){
					Klassic.pageLayer.style.left = ( (document.body.scrollWidth / 2) - (Klassic.pageLayer.width / 2) ) + "px";
					Klassic.pageLayer.style.top = ( (document.body.scrollHeight / 2) - (Klassic.pageLayer.height / 2) ) + "px";
				}
			);


			document.body.appendChild( Klassic.pageLayer );
		}

		Klassic.pageLayer.style.zIndex = 9050;

		return Klassic.pageLayer;
	},
	

	// 반투명 레이어 반환
	getDisabledZone: function(){
		Klassic.disabledZone = $("__divDisabledZone__");

		if( !Klassic.disabledZone ){
			Klassic.disabledZone = new Element("div");
			Klassic.disabledZone.id = "__divDisabledZone__";
			Klassic.disabledZone.style.zIndex = 0;
			Klassic.disabledZone.style.width = document.body.scrollWidth;
			Klassic.disabledZone.style.height = document.body.scrollHeight;
			Klassic.disabledZone.style.left = 0;
			Klassic.disabledZone.style.top = 0;
			Klassic.disabledZone.style.position = "absolute";
			Klassic.disabledZone.style.backgroundColor = "black";
			Klassic.disabledZone.style.opacity = 0.25;
			Klassic.disabledZone.style.MozOpacity = 0.25;
			Klassic.disabledZone.style.KhtmlOpacity = 0.25;
			Klassic.disabledZone.style.filter = "alpha(opacity=25)";
			Klassic.disabledZone.style.zIndex = 9000;

			Klassic.disabledZone.hide();


			Event.observe(
				window,
				"resize",
				function(){
					Klassic.getDisabledZone().width = document.body.scrollWidth;
					Klassic.getDisabledZone().height = document.body.scrollHeight;
				}
			);


			document.body.appendChild( Klassic.disabledZone );
		}

		return Klassic.disabledZone;
	},



	// 레이어 페이지 로드( 경로, 넓이, 높이, 경계선표시여부 )
	loadPage: function( src, width, height, fnPostClose, gridBorder ){
		for(var i=0; i<document.getElementsByTagName("select").length; i++){
			document.getElementsByTagName("select")[i].style.display = "none";
		}


		Klassic.getPageLayer().width = Klassic.getLayerFrame().width = ((gridBorder) ? (width + 4) : width) + "px";
		Klassic.getPageLayer().height = Klassic.getLayerFrame().height = ((gridBorder) ? (height + 4) : height) + "px";
		Klassic.getPageLayer().style.left = ( (document.body.clientWidth / 2) - (width / 2) ) + "px";
		Klassic.getPageLayer().style.top = ( (document.body.clientHeight / 2) - (height / 2) ) + "px";



		Klassic.getLayerFrame().src = src;


		if( gridBorder ){
			Klassic.getPageLayer().style.border = "2px solid #CFCFCF";
		}


		Klassic.getDisabledZone().show();
		Klassic.getPageLayer().show();

		Klassic.getLayerFrame().focus();

		Klassic.__postCloseFrameAction__ = fnPostClose;
	},



	// 레이어 페이지 닫기..
	closePage: function(){
		for(var i=0; i<document.getElementsByTagName("select").length; i++){
			document.getElementsByTagName("select")[i].style.display = "inline";
		}



		if( typeof(Klassic.__postCloseFrameAction__) == "function" ){
			try{
				Klassic.__postCloseFrameAction__(arguments[0]);
			} catch(e){};


			Klassic.__postCloseFrameAction__ = null;
		}


		Klassic.getLayerFrame().src = "about:blank";

		Klassic.getPageLayer().hide();
		Klassic.getDisabledZone().hide();
	},



	// 다운로드 프레임 반환..
	getDownloadFrame: function(){
		if( !Klassic.downloadFrame ){
			Klassic.downloadFrame = document.createElement("IFRAME");
			Klassic.downloadFrame.id = Klassic.downloadFrame.name = "__ifrDownload__";
			Klassic.downloadFrame.frameBorder = "0px";
			Klassic.downloadFrame.style.width = Klassic.downloadFrame.style.height = "0px";
			Klassic.downloadFrame.style.display = "none";
			
			document.body.appendChild( Klassic.downloadFrame );
		}

		return Klassic.downloadFrame;
	},	


	// 로그인레이어 보이기..!
	showLoginLayer_test: function( fnPostLogin ){
		Klassic.__postLoginAction__ = fnPostLogin;



		for(var i=0; i<document.getElementsByTagName("select").length; i++){
			document.getElementsByTagName("select")[i].style.display = "none";
		}

		//Klassic.loadPage("/loginForm.aspx", 400, 250);
		Klassic.loadPage("/motoLogin.aspx", 400, 250);
	},
	
	
	// 로그인레이어 보이기..!
	showLoginLayer: function( evtCode ){
		//Klassic.__postLoginAction__ = fnPostLogin;



		for(var i=0; i<document.getElementsByTagName("select").length; i++){
			document.getElementsByTagName("select")[i].style.display = "none";
		}

		//Klassic.loadPage("/loginForm.aspx", 400, 250);
		Klassic.loadPage("/motoLogin.aspx?evtCode="+evtCode, 400, 250);
	},



	// 로그인레이어 닫기..!
	closeLoginLayer: function(){
		for(var i=0; i<document.getElementsByTagName("select").length; i++){
			document.getElementsByTagName("select")[i].style.display = "inline";
		}


		if( typeof(Klassic.__postLoginAction__) == "function" ){
			try{
				Klassic.__postLoginAction__();
			} catch(e){};

		} 

		//Klassic.loadMemberInfo( new Function("Klassic.closePage();") );

		Klassic.closePage();
	},


	// 로그아웃..
	logout: function(){
		if( confirm("로그아웃 하시겠습니까?") ){
			//window.location.href = "/process/logout.asp";
			document.form.submit();
		}
	},

	// 트래킹..!
	trackMain: function( code ){
		if( code ){
			new Ajax.Request(
				"/process/trackingLog.aspx",
				{
					parameters:("code=" + code)
				}
			);
		}
	},


traceConfig:[
		{
			nas_pageName: "/motorola_intro_5",
			nas_pageCode: "350",
			traceName: "인트로영상_5초"
		},		
		{
			nas_pageName: "/motorola_intro_30",
			nas_pageCode: "351",
			traceName: "인트로영상_30초"
		},
		{
			nas_pageName: "/motorola_intro_finish",
			nas_pageCode: "352",
			traceName: "인트로영상_finish"
		},
		{
			nas_pageName: "/motorola_me2day_b",
			nas_pageCode: "353",
			traceName: "미투데이_배너"
		},
		{
			nas_pageName: "/motorola_event1_1",
			nas_pageCode: "354",
			traceName: "이벤트1_좌측"
		},
		{
			nas_pageName: "/motorola_event1_2",
			nas_pageCode: "355",
			traceName: "이벤트1_하단"
		},
		{
			nas_pageName: "/motorola_event1_scrap",
			nas_pageCode: "356",
			traceName: "이벤트1_스트랩"
		},
		{
			nas_pageName: "/motorola_event2_1",
			nas_pageCode: "357",
			traceName: "이벤트2_우측"
		},
		{
			nas_pageName: "/motorola_event2_2",
			nas_pageCode: "358",
			traceName: "이벤트2_하단"
		},
		{
			nas_pageName: "/motorola_event2_quiz",
			nas_pageCode: "359",
			traceName: "이벤트2_참여"
		},
		{
			nas_pageName: "/motorola_event2_today",
			nas_pageCode: "360",
			traceName: "이벤트2_오늘퀴즈완료"
		},
		{
			nas_pageName: "/motorola_event2_end",
			nas_pageCode: "361",
			traceName: "이벤트2_전체퀴즈완료"
		},
		{
			nas_pageName: "/motorola_showroom",
			nas_pageCode: "362",
			traceName: "제품프리뷰"
		},
		{
			nas_pageName: "/motorola_Login",
			nas_pageCode: "363",
			traceName: "로그인"
		},
		{
			nas_pageName: "/motorola_site",
			nas_pageCode: "364",
			traceName: "모토로라_사이트"
		},
		{
			nas_pageName: "/motorola_member_site",
			nas_pageCode: "365",
			traceName: "모토멤버_사이트"
		}

	],

	// 트래킹..!
	tracking: function( No ){
		if( (No >= 0) && (No < Klassic.traceConfig.length) ){

			try{
				NMF_T_FUNC( Klassic.traceConfig[No].nas_pageName );
				NTrackObj.callTrackTag( Klassic.traceConfig[No].nas_pageCode );
			} catch(e){};


			new Ajax.Request(
				"/process/trackingLog.aspx",
				{
					parameters:("code=" + Klassic.traceConfig[No].traceName)
				}
			);
		}
	},






	// 런칭 트래킹..!
	traceLog: function( codeType, codeName ){		

		if( codeType != ""){

			try{
				//NMF_T_FUNC( Klassic.traceConfig[No].nas_pageName );
				//NTrackObj.callTrackTag( Klassic.traceConfig[No].nas_pageCode );
			} catch(e){};


			new Ajax.Request(
				"/process/launching_tracking.aspx",
				{
					parameters:("codeType=" + codeType + "&codeName=" + codeName)
				}
			);
		}
		
	}

};


