﻿g_SITELOCAL = "local.";
g_SITEMEMBER = "gametree.co.kr";

getServiceDomain();

// url 정보를 담은 JSON 객체
urls = {
	// 까발라통신
	m100 : '/Notice/List.aspx?tn=1',
	m101 : '/Notice/List.aspx?tn=1',	// 공지사항
	m102 : '/Notice/EventList.aspx?flag=1',	// 이벤트
	m103 : '/Notice/List.aspx?tn=2',		// 업데이트
	// 모험가정보
	m200 : 'beginnerGuide()',
	m201 : 'beginnerGuide()',		// 초보자가이드
	m202 : '/GameGuide/GameRushList.aspx',		// 게임공략
	m203 : '/GameGuide/GameInfo.aspx',	 	// 게임정보
	// 광장
	m300 : '/Community/Free.aspx',
	m301 : '/Community/Free.aspx',	// 자유게시판
	m302 : '/Community/ScreenShot.aspx',	// 스샷게시판
	m303 : '/Community/FanArt.aspx',	// 팬아트
	m304 : '/Community/Poll.aspx',	// 설문조사
	m305 : '/Community/Qna.aspx',	// 묻고답하기
	m306 : '/Community/Trade.aspx',	// 거래게시판
	// 카페
	m400 : '/Community/GMFortress.aspx',
	m401 : '/Community/GMFortress.aspx',	// 독수리요새
	m402 : '/Community/Idea.aspx',	// 아이디어
	// 랭킹
	m500 : '/Ranking/Total.aspx',
	m501 : '/Ranking/Total.aspx',	// 전체랭킹
	m502 : '/Ranking/Type.aspx',	// 타입랭킹
	m503 : '/Ranking/Drill.aspx',	// 드릴랭킹
	m504 : '/Ranking/Monster.aspx',	// 몬퀘랭킹
	m505 : '/Ranking/King.aspx',	// 랭킹왕
	// 자료실
	m600 : '/Download/Download.aspx',
	m601 : '/Download/Download.aspx',	// 다운로드
	m602 : '/Download/Screenshot.aspx',	// 스크린샷
	m603 : '/Download/Wallpaper.aspx',	// 월페이퍼
	m604 : '/Download/Artwork.aspx',	// 아트웍
	m605 : '/Download/Movie.aspx',	// 동영상
	m606 : '/Download/Sound.aspx',	// 사운드
	m607 : '/Download/FansiteKit.aspx',	// 팬사이트킷
	// 고객센터
	m700 : '/Customer/Faq.aspx',
	m701 : '/Customer/Faq.aspx',	 // FAQ
	m702 : '/Customer/AskWrite.aspx',	 // 1:1 문의
	m703 : 'MyInfo()',	 // 내정보
	m704 : '/Customer/Operation.aspx'	 // 운영정보
}

// 메뉴이동 실행
function m(c) {
	var go_url = c ? 'urls["m'+c+'"]' : 'urls["m000"]';
	var _url = eval(go_url) || '/';
	if (/[\(\)]/.test(_url)) {
		eval(_url); // url 정보가 함수명이면 함수를 실행
	} else if (_url)	{
		window.location.href = _url;
	}
}

// 초보자가이드 팝업
function beginnerGuide() {
	var top = (screen.height-700)/2 || 100;
	var left = (screen.width-900)/2 || 100;
	var Pop = window.open("/Img/flash/guide/GameGuide.aspx","_blank","width=900,height=650,top="+top+",left="+left)
	if(!Pop) alert('초보자가이드는 팝업차단이 되어있으면 보실 수 없습니다.\n팝업차단을 해제해 주세요.')
}


/* URL Handle */
function getHTTPS(siteHost)
{
	var ret = "https://";
	if (typeof(g_SITELOCAL)=="string" && g_SITELOCAL != ""){
		var arr = g_SITELOCAL.split('|');
		for(var i=0; i < arr.length; i++){
			if ( siteHost.indexOf( $T(arr[i]) ) > -1 ){	
				ret = "http://";
				break;
			}
		}
	}
	return ret;
}

function getSiteHost(url)
{
	var ret = "";
	var idx = url.indexOf("://");
	if (idx > -1){
		var idx2 = url.substring(idx+3, url.length).indexOf("/");
		if (idx2 > -1){
			ret = url.substring(idx+3, idx2 + (idx+3));
		}else{
			ret = url.substring(idx+3, url.length);
		}
		ret = ret.toLowerCase();
	}
	return ret;
}

function getServiceSite()
{
    var url = window.location;
    url = url.toString();
	return ( "http://" + getSiteHost(url) );
}

function getServiceDomain()
{
    var url = document.domain;
    url = url.toLowerCase();

    var arr = url.split('.');

    if (arr.length > 0) {
        g_SITEMEMBER = Ns.portalUrl();
    }
    // 2008.08.01 by colakongju
	// 현재 도메인 기준으로 글로벌 변수 셋팅
}

function getSecureSite()
{
    var url = window.location;
    url = url.toString();
	return ( getHTTPS(url) + getSiteHost(url) );
}
function getSecureSiteHTTP()
{
    var url = window.location;
    url = url.toString();
	return ( "http://" + getSiteHost(url) );
}
/*-------------------------------------------------------------------*/


/* Member */
function NtreevLogin() {
    Ns.Login.get();
}

function NateLogin() {
    var nate_redirect_url = 'http://ntreev.nate.com/gateway.aspx?sn=1';
    var nate_error_url = 'http://ntreev.nate.com/loginfail.aspx?sn=1';
    
    var frm = document.forms[0];
	//var login_email = $('login_email');
	var pwd = $('PASSWD');
	var secure = $('nate_secure');
	var redirect = $('redirect');
	var error = $('errorPage');
	var r_url = $('r_url');
	var hiddenID = $('ID');
	var nate_id = $('nate_id');
	var nate_domain = $('nate_domain');
	var nate_saveid = $('nate_saveid');
    
    if ($T(nate_id.value) == '') {
		alert('아이디를 입력해 주세요.');
		nate_id.focus();
		return;
	}
	if ($T(pwd.value) == '') {
		alert('비밀번호를 입력해 주세요.');
		pwd.focus();
		return;
	}
	
    /*
    hiddenID.value = login_email.value;
    nate_domain.value = '@' + login_email.value.split('@')[1];
    if (nate_domain.value == '@nate.com') {
        nate_domain.value = '';
        hiddenID.value = login_email.value.split('@')[0];
    }
    */
    
    hiddenID.value = nate_id.value + nate_domain[nate_domain.selectedIndex].value;
	nate_redirect_url += (nate_saveid.checked) ? '&save=Y' : '&save=N';

	if (secure.checked) {
		frm.action = 'https://xo.nate.com/servlets/LoginServlet';
	}
	else {
		frm.action = 'http://xo.nate.com/servlets/LoginServlet';
	}
	
	redirect.value = nate_redirect_url +'&r_url=' + encodeURIComponent(r_url.value);
	error.value = nate_error_url;
	
	frm.__VIEWSTATE.value = '';
	frm.submit();
}

function RechargeTreeCash(method) {
    Ns.TreeCash.recharge(method);    
}

function Logout() {
    Ns.Login.out();
}

function FindId() {
    Ns.Content.find();
}

function NateFindId() {
    var url = 'http://helpdesk.nate.com/faq/exMemberInfo.asp?r_url=https://member.nate.com/sccustomer/join/nate/find/find_index.jsp&mode=show';
    window.open(url);
}

function SignUp() {

    Ns.Content.join();
    
//    var SignUpURL = getHTTPS(window.location.toString()) + g_SITEMEMBER + '/SignUp/Join.aspx?rsn=1';

//    //alert(SignUpURL);
//    
//    var target = window.opener;
//    if (target != null && !target.closed){
//    
//        var sameDomain = false;
//        var thisDomain = document.domain;
//        var openerDomain = "";
//        try {
//            openerDomain = opener.document.domain;
//            if (thisDomain == openerDomain) sameDomain = true;
//        }
//        catch (e) {
//            // alert(e.message);
//            // opener의 도메인이 다를 경우 e.message는 다음과 같습니다.
//            // IE 6/7 : 액세스가 거부되었습니다.
//            // 크롬 2.0.172.33 : Cannot read property 'domain' of undefined
//            // FireFox 2.0.0.14 : undefined -_-;; 도구의 오류정보를 보면 uncaught exception: HTMLDocument.domain 1 이라고 나옴.
//            // Opera 9.64 : Security error: attempted to read protected variable
//        }
//        //alert("openerDomain : " + openerDomain);
//        //alert("thisDomain : " + thisDomain);
//        //alert("sameDomain : " + sameDomain);
//        
//        // 팝업으로 떳을 때
//        if (sameDomain) {
//            if (target.parent != null) {
//                target = target.parent;
//            }
//            target.location = SignUpURL;
//            
//            CloseWindow();
//        }
//        // 검색사이트에서 새창으로 떳을 때
//        else
//        {
//            document.location = SignUpURL;
//        }
//    }
//    else {
//        document.location = SignUpURL;
//    }
}

function CloseWindow()
{
    if (/MSIE/.test(navigator.userAgent)) {
        //Explorer 7이상일때
        if(navigator.appVersion.indexOf("MSIE 7.0")>=0) {
            window.open('about:blank','_self').close();
        }
        //Explorer 7이하일때
        else {
            window.opener = self;
            self.close();
        }
    }
    else {
        // IE 이외의 브라우저
        this.close();
    }
}

function MyInfo()
{
    Ns.Content.info();
}

function chkEnterForLogin(e, loginType){
	var key = window.event ? e.keyCode : e.which;
	if (key == 13){
	    if (loginType.toLowerCase() == 'ntreev') {
		    NtreevLogin();
		} else {
		    NateLogin();  
		}
	}
}
/*-------------------------------------------------------------------*/


/* Footer */
function ShowNtreevHomepage() {
    window.open('http://www.ntreev.com','ntreevpopup');
}
function ShowPolicy() {
    window.open('http://' + g_SITEMEMBER + '/policy/policy.aspx','ntreevpopup','width=589,height=554,statusbar=no,scrollbars=no,toolbar=no,resizable=no');
}
function ShowPrivacy() {
    window.open('http://' + g_SITEMEMBER + '/policy/privacy.aspx', 'ntreevpopup', 'width=589,height=554,statusbar=no,scrollbars=no,toolbar=no,resizable=no');
}
function ShowYouthHelp() {
    window.open('http://' + g_SITEMEMBER + '/policy/youthhelp.aspx?mm=N', 'ntreevpopup', 'width=589,height=554,statusbar=no,scrollbars=no,toolbar=no,resizable=no');
}
function ShowRefusal() {
    window.open('http://' + g_SITEMEMBER + '/policy/refusal.aspx', 'ntreevpopup', 'width=459,height=254,statusbar=no,scrollbars=no,toolbar=no,resizable=no');
}
function ShowRefundPolicy() {
    window.open('http://' + g_SITEMEMBER + '/policy/refund.aspx', 'ntreevpopup', 'width=589,height=554,statusbar=no,scrollbars=no,toolbar=no,resizable=no');
}
/*-------------------------------------------------------------------*/


/* download */
function NeffyDownload() {
    var url = getServiceSite() + '/Download/Neffy/Neffy.aspx';
	window.open(url,'','width=418,height=789');
}

/* global search box */
function chkGlobalSearchKeyword() {
    if ($T($F('txtGlobalSearchKeyword')) == '') {
        alert ('검색어를 입력해 주세요.');
        return false;
    }

    var keyword = $('txtGlobalSearchKeyword');
    if(keyword.value.size() > 40)
	{
	    alert('검색어는 20자까지만 입력 가능합니다.');
	    return false;
	}

    getGlobalSearchResult();    
}

function getGlobalSearchResult() {
   
    if ($('rdoGlobalSearch1').checked) {
        location.href = '/GameGuide/GameRushList.aspx?SearchArea=All&Keyword=' + encodeURIComponent($F('txtGlobalSearchKeyword'));
        
    } else {
        location.href = '/Community/Qna.aspx?SearchArea=All&Keyword=' + encodeURIComponent($F('txtGlobalSearchKeyword'));
    }
}

function chkEnterForGlobalSearch(e) {
	var key = window.event ? e.keyCode : e.which;
	if (key == 13) {
	    chkGlobalSearchKeyword();
	}
	else {
	    return false;
	}
}

/* coupon */
function EventTrickzine() {
    var url = '/Events/200808_Coupon/popup_trickzine.aspx';
	var name = 'popup_trickzine';
	var features = 'width=460,height=270,scrollbars=no,status=no,menubar=no,toolbar=no,resizable=no';
	var popup = window.open(url, name, features);
}
