var _url = '';
var host = '';

// main page
var _INDEX = "/index.nhn";

// introduce
var _ABOUT = "/introduce/about.nhn";
var _WANTED = "/introduce/wanted.nhn";

// league
var _LEAGUEINTRO = "/league/leagueintroduce.nhn";
var _PRERESERVATION = "/league/prereservation.nhn";
var _APPLYLEAGUE = "/league/applyleague.nhn";

// guide
var _GAMEOVENINFO = "/guide/gameoveninfo.nhn";
var _DOWNLOAD = "/guide/download.nhn";
var _TUTORIAL = "/guide/tutorial.nhn";
var _HELP = "/guide/help.nhn";

// board
var _MAKEFORUM = "/board/makeforum.nhn";
var _COOPFORUM = "/board/coopforum.nhn";
var _IMAGEBOX = "/board/imagebox.nhn";
var _SOUNDBOX = "/board/soundbox.nhn";
var _BUGREPORT = "/board/bugreport.nhn";
var _SAMPLEGAME = "/board/samplegame.nhn";
var _MAKERGUIDE = "/board/makerguide.nhn";
var _GAMEERROR = "/board/gameerror.nhn";

// register
var _REGISTER_INTRO = "/register/gameintroduce.nhn";
var _REGISTER = "/register/gameregister.nhn";
var _REGISTER_TEST =  "/register/gametest.nhn";
var _REGISTER_DELIBERATE =  "/register/gamedeliberate.nhn";
var _REGISTER_MANAGE =  "/register/gamemanage.nhn";

// myGame Management
var _MYGAMEMAIN = "/mygame/main.nhn"
var _REGIST_TEST = "/mygame/registandtest.nhn";
var _FILEUPDATE = "/mygame/fileupdate.nhn";
var _TEST_ERROR = "/mygame/testerror.nhn"
var _GAMEINFOMANAGE = "/mygame/gameinfo.nhn";
var _DELIBERATION_RESULT ="/mygame/deliberation.nhn";
var _CURRENT_SERVICE = "/mygame/service.nhn";
var _MYGAMEHELP = "/mygame/help.nhn";

var _JOIN_BONUS = "/mygame/joinbonus.nhn";
var _USER_REPORT = "/mygame/userreport.nhn";
var _RUNTIME_ERROR = "/mygame/runtimeerror.nhn";

var _GAME_BUG = "gamebugBridge";

// help
var _APIREFERENCE = "/help/api/Default.htm";
var _USERMANUAL = "/help/manual/Default.htm";

// gamestart
var _GAMESTART_TZONE = "/gamestart.nhn?gameId=K_IDOGAME_TZONE";
var _GAMESTART_PLAYER = "/gamestart.nhn?gameId=K_IDOGAME_PLAYER";

// coming soon
var _COMINGSOON = "comingsoon";
// missing url
var _UNDERCONSTRUCTION = "underConstruction";
// function bridge
var _FUNCTION = "functionBridge";
// function readyalert
var _READYALERT = "readyAlert";

function iDoLink(keyword, mode, ssl) {
	
	switch(keyword) {
		
		case 'index' : _url = _INDEX; break;
		
		case 'about' : _url = _ABOUT; break;
		case 'wanted' : _url = _WANTED; break;
		
		case 'leagueIntro' : _url = _READYALERT; break;
		case 'preReservation' : _url = _READYALERT; break;
		case 'applyLeague' : _url = _READYALERT; break;
		
		case 'gameOvenInfo' : _url = _GAMEOVENINFO; break;
		case 'download' : _url = _DOWNLOAD; break;
		case 'tutorial' : _url = _TUTORIAL; break;
		case 'help' : _url = _HELP; break;
		case 'samplegame' : _url = _SAMPLEGAME; break;
		
		case 'makeForum' : _url = _MAKEFORUM; break;
		case 'coopForum' : _url = _COOPFORUM; break;
		case 'imageBox' : _url = _IMAGEBOX; break;
		case 'soundBox' : _url = _SOUNDBOX; break;
		case 'bugReport' : _url = _BUGREPORT; break;
		case 'makerGuide' : _url = _MAKERGUIDE; break;
		case 'gameError' : _url = _GAMEERROR; break;
		
		case 'regIntro' : _url = _REGISTER_INTRO; break;
		case 'register' : _url = _REGISTER; break;
		case 'regTest' : _url = _REGISTER_TEST; break;
		case 'regDeliberate' : _url = _REGISTER_DELIBERATE; break;
		case 'regManage' : _url = _REGISTER_MANAGE; break;
		
		case 'myGameMain' : _url = _MYGAMEMAIN; break;
		case 'registAndTest' : _url = _REGIST_TEST; break;
		case 'fileUpdate' : _url = _FILEUPDATE; break;
		case 'testError' : _url = _TEST_ERROR; break;
		case 'gameInfoManagement' : _url = _GAMEINFOMANAGE; break;
		case 'deliberationResult' : _url = _DELIBERATION_RESULT; break;
		case 'currentService' : _url = _CURRENT_SERVICE; break;
		case 'myGameHelp' : _url = _MYGAMEHELP; break;

		case 'testPlayer' : _url = _GAMESTART_TZONE; break;
		case 'iDoGamePlayer' : _url = _COMINGSOON; break;
		case 'gameIntroduce' : _url = _COMINGSOON; break;
		case 'makerIntroduce' : _url = _COMINGSOON; break;

		case 'userManual' : _url = _FUNCTION; goUserManual(); break;
		case 'apiReference' : _url = _FUNCTION; goApiReference(); break;
		// 점검 중일 때 링크를 막기 위해서는 keyword에 ''을 넘겨주면 됨 : _UNDERCONSTUCTION 을 사용하여 "점검 중입니다." alert으로 연결
		case '': _url = _UNDERCONSTRUCTION; break;
		
	}
	if(_url == '') {
		alert('알 수 없는 경로입니다.');
	}
	else if(_url == _UNDERCONSTRUCTION) {
		alert('점검 중입니다.');
	}
	else if(_url == _COMINGSOON) {
		alert('Coming Soon!');
	}
	else if(_url == _READYALERT) {
		alert('업데이트 중입니다.\n상세 내용은 2월 중\n오픈 될 예정입니다.');
	}
	else if(_url == _FUNCTION) {
	}
	else if(mode != null && mode != ''){
		if(ssl == 'Y') {
			top.location.href = host + _url + '?mode=' + mode;
		} else {
			top.location.href = _url + '?mode=' + mode;
		}
	}
	else if(ssl == 'Y'){
		top.location.href = host + _url;
	}
	else if(_url2 == _GAMESTART_TZONE || _url2 == _GAMESTART_PLAYER) {
		gameStartLaunch(_url2);
	}
	else {
		top.location.href = _url;
	}
}

var _url3 = '';
// 팝업에서 연결되는 링크는 이곳에 추가할 것
function iDoLinkFromPopup(keyword) {
	switch(keyword) {
		case 'index' : _url3 = _INDEX; break;
		case 'gameError' :  _url3 = _GAMEERROR; break;
		case 'bugReport' : _url3 = _BUGREPORT; break;
	}
	
	if(opener == null || opener.closed) {
		opener = window.open(_url3, 'newOpener');	
	}else {
		opener.top.location.href= _url3;
	}
	opener.focus();
}

var _url4 = '';
// 팝업에서 연결되는 링크는 이곳에 추가할 것
function iDoLinkFromSSLPopup(keyword) {
	var sslPrefix="";
	if(document.URL.indexOf("local-")>=0)	{
		// 테스트 할 수 있도록 ssl 처리 하지 않았음
		sslPrefix="http://local-idogame.hangame.com";
	}
	else if(document.URL.indexOf("dev-")>=0) {
		sslPrefix="https://dev-lab.idogame.hangame.com";
	}	
	else if(document.URL.indexOf("alpha-")>=0) {
		sslPrefix="https://alpha-lab.idogame.hangame.com";
	}	
	else if(document.URL.indexOf("beta-")>=0) {
		sslPrefix="https://beta-lab.idogame.hangame.com";
	}
	else {
		sslPrefix="https://lab.idogame.hangame.com";
	}
	
	switch(keyword) {
		case 'index' : _url4 = _INDEX; break;
		case 'gameError' :  _url4 = _GAMEERROR; break;
		case 'bugReport' : _url4 = _BUGREPORT; break;
	}
	
	if(opener == null || opener.closed) {
		opener = window.open(sslPrefix+_url4, 'newOpener');	
	}else {
		opener.top.location.href= sslPrefix+_url4;
	}
	opener.focus();
}

var _url2 = '';

// 내 게임 내에서 돌아다니는 링크 관리
function myGameLink(keyword, param1) {
	var sslPrefix="";
	if(document.URL.indexOf("local-")>=0)	{
		// 테스트 할 수 있도록 ssl 처리 하지 않았음
		sslPrefix="http://local-idogame.hangame.com";
	}
	else if(document.URL.indexOf("dev-")>=0) {
		sslPrefix="https://dev-lab.idogame.hangame.com";
	}	
	else if(document.URL.indexOf("alpha-")>=0) {
		sslPrefix="https://alpha-lab.idogame.hangame.com";
	}	
	else if(document.URL.indexOf("beta-")>=0) {
		sslPrefix="https://beta-lab.idogame.hangame.com";
	}
	else {
		sslPrefix="https://lab.idogame.hangame.com";
	}
	switch(keyword) {
		case 'myGameMain' : _url2 = _MYGAMEMAIN; break;
		case 'registAndTest' : _url2 = _REGIST_TEST; break;
		case 'fileUpdate' : _url2 = _FILEUPDATE; break;
		case 'testError' : _url2 = _TEST_ERROR; break;
		case 'gameInfoManagement' : _url2 = _GAMEINFOMANAGE; break;
		case 'deliberationResult' : _url2 = _DELIBERATION_RESULT; break;
		case 'myGameHelp' : _url2 = _MYGAMEHELP; break;

		case 'currentService' : _url2 = _CURRENT_SERVICE; break;
		case 'joinBonus' : _url2 = _COMINGSOON; break;
		case 'userReport' : _url2 = _COMINGSOON; break;
		case 'runtimeError' : _url2 = _RUNTIME_ERROR; break;
		
		case 'gameBug' : _url2 = _GAME_BUG; break;

		case 'testPlayer' : _url2 = _GAMESTART_TZONE; break;
		case 'iDoGamePlayer' : _url2 = _COMINGSOON; break;
		case 'gameIntroduce' : _url2 = _COMINGSOON; break;
		case 'makerIntroduce' : _url2 = _COMINGSOON; break;
	}
	if(_url2 == _MYGAMEMAIN) {
		if(param1 == null) {
			location.href = _url2;
		}
		else {
			location.href = _url2+'?sort='+param1;
		}
	}
	else if(_url2 == _MYGAMEHELP) {
		if(param1 == null) {
			location.href = _url2;
		}
		else {
			location.href = _url2+'?doc='+param1;
		}
	}
	else if(_url2 == _GAMEINFOMANAGE) {
		location.href = sslPrefix + _url2 + "?gameno=" + param1;
	}
	else if(_url2 == _COMINGSOON) {
		alert('Coming Soon!');
	}
	else if(_url2 == _GAME_BUG) {
		openGameBugPopup(param1);
	}
	else if(_url2 == _GAMESTART_TZONE || _url2 == _GAMESTART_PLAYER) {
		gameStartLaunch(_url2);
	}
	else {
		location.href = _url2 + "?gameno=" + param1;
	}
}

// 내 게임 내에서 돌아다니는 링크 관리
function myGameLinkFromSSL(keyword, param1) {
	var hostPrefix="";
	if(document.URL.indexOf("local-")>=0)	{
		hostPrefix="http://local-idogame.hangame.com";
	}
	else if(document.URL.indexOf("dev-")>=0) {
		hostPrefix="http://dev-idogame.hangame.com";
	}	
	else if(document.URL.indexOf("alpha-")>=0) {
		hostPrefix="http://alpha-idogame.hangame.com";
	}	
	else if(document.URL.indexOf("beta-")>=0) {
		hostPrefix="http://beta-idogame.hangame.com";
	}
	else {
		hostPrefix="http://idogame.hangame.com";
	}
	
	switch(keyword) {
		case 'myGameMain' : _url2 = _MYGAMEMAIN; break;
		case 'registAndTest' : _url2 = _REGIST_TEST; break;
		case 'fileUpdate' : _url2 = _FILEUPDATE; break;
		case 'testError' : _url2 = _TEST_ERROR; break;
		case 'gameInfoManagement' : _url2 = _GAMEINFOMANAGE; break;
		case 'deliberationResult' : _url2 = _DELIBERATION_RESULT; break;
		case 'myGameHelp' : _url2 = _MYGAMEHELP; break;

		case 'currentService' : _url2 = _CURRENT_SERVICE; break;
		case 'joinBonus' : _url2 = _COMINGSOON; break;
		case 'userReport' : _url2 = _COMINGSOON; break;
		case 'runtimeError' : _url2 = _RUNTIME_ERROR; break;

		case 'testPlayer' : _url2 = _GAMESTART_TZONE; break;
		case 'iDoGamePlayer' : _url2 = _COMINGSOON; break;
		case 'gameIntroduce' : _url2 = _COMINGSOON; break;
		case 'makerIntroduce' : _url2 = _COMINGSOON; break;
	}
	if(_url2 == _MYGAMEMAIN) {
		if(param1 == null) {
			location.href = hostPrefix + _url2;
		}
		else {
			location.href = hostPrefix + _url2+'?sort='+param1;
		}
	}
	else if(_url2 == _MYGAMEHELP) {
		if(param1 == null) {
			location.href = hostPrefix + _url2;
		}
		else {
			location.href = hostPrefix + _url2+'?doc='+param1;
		}
	}
	else if(_url2 == _GAMEINFOMANAGE) {
		location.href = _url2 + "?gameno=" + param1;
	}
	else if(_url2 == _COMINGSOON) {
		alert('Coming Soon!');
	}
	else if(_url2 == _GAME_BUG) {
		openGameBugPopup(param1);
	}
	else if(_url2 == _GAMESTART_TZONE || _url2 == _GAMESTART_PLAYER) {
		gameStartLaunch(_url2);
	}	
	else {
		location.href = hostPrefix + _url2 + "?gameno=" + param1;
	}
}

function openGameBugPopup(gameno)
{
//	alert("17일 게시판쪽 DB 작업이 끝날때까지는 사용할 수 없습니다.");
	var cmsPrefix="";
	if(document.URL.indexOf("local-")>=0)	{
		cmsPrefix="http://dev-cms.hangame.com";
	}
	else if(document.URL.indexOf("dev-")>=0) {
		cmsPrefix="http://dev-cms.hangame.com";
	}	
	else if(document.URL.indexOf("alpha-")>=0) {
		cmsPrefix="http://alpha-cms.hangame.com";
	}	
	else if(document.URL.indexOf("beta-")>=0) {
		cmsPrefix="http://beta-cms.hangame.com";
	}
	else {
		cmsPrefix="http://cms.hangame.com";
	}
	var url = cmsPrefix + "/bbs2.nhn?m=list&gameid=IDOGAME_GAMEBUG&catg2=" + gameno;
	var scroll;
	if(screen.height <= 768)
		scroll = ",scrollbars=yes";

	var features = "left=100,top=100,width=740,height=800,menubar=no,status=no" + scroll;
	wndOpen = window.open( url, "gamebug", features );
	wndOpen.focus();
}

function goHome(){
	iDoLink('index');
}

// 게시판 세부 글보기
function goBoardView(boardid, bbsid, docid, ssl){
		
	var url = '';
	switch (boardid)
	{
		case 'IDOGAME_MAKEFORUM' :
			url = '/board/makeforum.nhn';			
			break;
		case 'IDOGAME_COOPFORUM' :
			url = '/board/coopforum.nhn';			
			break;
		case 'IDOGAME_IMAGEBOX' :
			url = '/board/imagebox.nhn';			
			break;
		case 'IDOGAME_SOUNDBOX' :
			url = '/board/soundbox.nhn';			
			break;
		case 'IDOGAME_BUG' :
			url = '/board/bugreport.nhn';			
			break;
		case 'IDOGAME_GAMEERROR' :
			url = '/board/gameerror.nhn';			
			break;
	}
	if(ssl == 'Y'){
		url = host + url;
	}
	if(url != ''){
		top.location.href(url+'?bbsid='+bbsid+'&docid='+docid);
	}
}

// 공통 공지 팝업
function goContentPop(sbnum, mode) {
	if(mode == 'hideHome') {
		sUrl = sBBS+"/notice/main.nhn?m=popread&board_id=idogame&board_number="+sbnum+"&hideHome=Y";
		winopts = "left=100,top=100,width=600,height=530,resizable=no,menubar=no,status=no";
		wndOpen = window.open(sUrl,'popnotice',winopts);
	}
	else {
		sUrl = sBBS+"/notice/main.nhn?m=popread&board_id=idogame&board_number="+sbnum;
		winopts = "left=100,top=100,width=600,height=530,resizable=no,menubar=no,status=no";
		wndOpen = window.open(sUrl,'popnotice',winopts);
	}
}
function goMainNotice(mode){
	var url = sBBS + "/notice/main.nhn?m=popread&board_id=idogame";
	if(mode == 'hideHome') {
		url += "&hideHome=Y"
	}
	var features = "left=100,top=100,width=660,height=555,resizable=no,menubar=no,status=no";
	wndOpen = window.open( url, "popnotice", features );
	wndOpen.focus();
}

function openFaqWindow() {
	var url = "http://cs.hangame.com/hangame_renew/minifaq/exSelf.jsp?nodeId=NODE0000000835&parentNodeId=NODE0000000834"
	var features = "left=100,top=100,width=630,height=520,resizable=no,menubar=no,status=no";
	wndOpen = window.open(url, "faqpopup", features);
	wndOpen.focus();
}

function openVodHelpPopup() {
	var url = "http://cs.hangame.com/popup/faq/miniFaqList.do?nodeId=NODE0000000898&parentNodeId=NODE0000000834"
	var features = "left=100,top=100,width=630,height=520,resizable=no,menubar=no,status=no";
	wndOpen = window.open(url, "vodhelppopup", features);
	wndOpen.focus();
}

function goUserManual() {
	window.open("http://images.hangame.co.kr/hangame/idogame/helps/ver1_2/manual/Default.htm", "userManual", "width=800 height=600");
}
function goApiReference() {
	window.open("http://images.hangame.co.kr/hangame/idogame/helps/ver1_2/api/Default.htm", "apiReference", "width=800 height=600");
}

function makeTesterId(gameno) {
	window.open("/register/testerid.nhn?gameno="+gameno, "testerIdPopup", "width=383 height=406");
}

function openMyGame() {
	window.open("/mygame/main.nhn", "myGamePopup", "width=900 height=700");
}

//wbers
function callWbers(value) {
	var gameid = 'K_IDOGAME';
	try {
		wbers_lcs.location.href="http://lcs.wbers.hangame.com/log.html?project="+gameid+"&value=" + value + "&id=" + memberid;
	} catch(e){
	}
}

function downloadDocument(value, url) {
	if(value == '' || url == ''){
		alert('본 챕터는 문서가 제공되지 않습니다');
		return;
	}
	
	callWbers(value);
	location.href = url;
}

function downloadResource(value, url) {
	if(value == '' || url == ''){
		alert('본 챕터는 리소스가 제공되지 않습니다');
		return;
	}
	
	alert('본 리소스를 사용하여 개발된 게임은 꼭 리메이크 부문에 등록해주세요!');
	callWbers(value);
	location.href = url;
}

function downloadResourceWithLogin(value, url) {
	if(value == '' || url == ''){
		alert('본 챕터는 리소스가 제공되지 않습니다');
		return;
	}
	
	if(getCookie('login') != ''){
		//alert('본 리소스를 사용하여 개발된 게임은 꼭 리메이크 부문에 등록해주세요!');
		callWbers(value);
		location.href = url;
	}else{
		openPopupLoginForm();
	}
}

function gameStartLaunch(url){
	var gameStart = document.getElementById("gameStart");
	gameStart.src = _url2;
}

function gameStartLaunchLeftMenu(){
	var gameStart = document.getElementById("gameStart");
	gameStart.src = _GAMESTART_TZONE;
}

function gameStartLaunchLeftMenuFromSSL(){
	var hostPrefix="";
	if(document.URL.indexOf("local-")>=0)	{
		hostPrefix="http://local-idogame.hangame.com";
	}
	else if(document.URL.indexOf("dev-")>=0) {
		hostPrefix="http://dev-idogame.hangame.com";
	}	
	else if(document.URL.indexOf("alpha-")>=0) {
		hostPrefix="http://alpha-idogame.hangame.com";
	}	
	else if(document.URL.indexOf("beta-")>=0) {
		hostPrefix="http://beta-idogame.hangame.com";
	}
	else {
		hostPrefix="http://idogame.hangame.com";
	}
	var gameStart = document.getElementById("gameStart");
	gameStart.src = hostPrefix + _GAMESTART_TZONE;
}

function openMyGameFromSSL() {
	var hostPrefix="";
	if(document.URL.indexOf("local-")>=0)	{
		hostPrefix="http://local-idogame.hangame.com";
	}
	else if(document.URL.indexOf("dev-")>=0) {
		hostPrefix="http://dev-idogame.hangame.com";
	}	
	else if(document.URL.indexOf("alpha-")>=0) {
		hostPrefix="http://alpha-idogame.hangame.com";
	}	
	else if(document.URL.indexOf("beta-")>=0) {
		hostPrefix="http://beta-idogame.hangame.com";
	}
	else {
		hostPrefix="http://idogame.hangame.com";
	}
	var tempurl = hostPrefix + "/mygame/main.nhn"; 
	window.open(tempurl, "myGamePopup", "width=900 height=700");
}


function tzoneManualDownload() {
	window.open("http://ido-hangame2.ktics.co.kr/TestPlayer/Real/Install/iDoGameTestPlayerInstall.exe");
}

function goPosterPage(){
	var url = "/poster.nhn";
	var scroll;
	
	if(screen.height <= 768)
		scroll = ",scrollbars=yes";

	var features = "left=100,top=100,width=660,height=555,menubar=no,status=no" + scroll;
	wndOpen = window.open( url, "popup", features );
	wndOpen.focus();
}

