/* **********************************************************************/
//	Eoneo Framework
//
//	@copyright		(c)2007 Eoneo inc.
//	@company		Eoneo inc. devteam
// **********************************************************************/

// NOTICE : 이 파일은 UTF-8 로 인코딩되어야 합니다.

// TODO : 이곳에 모든 페이지 공통으로 사용되는 자바스크립트를 정의하십시오.

var KR = 82;
var EN = 1;
var g_hWnd = null;

var MSG = {
	INPUT_VALIDATION_KEY_AND_NAME:{
		en:"인증키와 한글 실명을 입력하세요.",
		kr:"인증키와 한글 실명을 입력하세요."},
	INPUT_VALID_LOGIN_ID:{
		en:"ID must composed by alphabet or number and 4-16 characters long.",
		kr:"아이디는 영어, 숫자를 이용해 4-16자로 구성해야 합니다."},
	DUPLICATE_LOGIN_ID:{
		en:"이미 가입된 아이디입니다.\n\n다른 아이디로 가입하세요.",
		kr:"이미 가입된 아이디입니다.\n\n다른 아이디로 가입하세요."},
	ABLE_LOGIN_ID:{
		en:"가입 가능한 아이디입니다.",
		kr:"가입 가능한 아이디입니다."},
	INPUT_VALID_NAME_EN:{
		en:"영어 이름을 입력하세요.",
		kr:"영어 이름을 입력하세요."},
	INPUT_VALID_PASSWORD:{
		en:"Password must composed by alphabet or number and 4-12 characters long.",
		kr:"패스워드는 영어, 숫자를 이용해 4-12자로 구성해야 합니다."},
	INPUT_USER_NAME:{
		en:"이름을 입력하세요.",
		kr:"이름을 입력하세요."},
	INPUT_PASSWORD_NOT_MATCH:{
		en:"입력한 두 비밀번호가 일치하지 않습니다.",
		kr:"입력한 두 비밀번호가 일치하지 않습니다."},
	INPUT_SCHOOL_NAME:{
		en:"학교명을 입력하세요.",
		kr:"학교명을 입력하세요."},
	INPUT_VALID_GRADE:{
		en:"학년을 숫자로 입력하세요.",
		kr:"학년을 숫자로 입력하세요."},
	INPUT_VALID_TELEPHONE:{
		en:"전화번호를 정확히 입력하세요.",
		kr:"전화번호를 정확히 입력하세요."},
	INPUT_VALID_EMAIL:{
		en:"메일 주소를 정확히 입력하세요.",
		kr:"메일 주소를 정확히 입력하세요."},
	USERINFO_MODIFY_SUCCESS:{
		en:"회원 정보 변경이 완료되었습니다.",
		kr:"회원 정보 변경이 완료되었습니다."},
	SUCCESSFULLY_REGISTERED:{
		en:"성공적으로 등록되었습니다.",
		kr:"성공적으로 등록되었습니다."},
	SELECT_VOTE_ITEM:{
		en:"설문 답을 선택해주세요.",
		kr:"설문 답을 선택해주세요."},
	WORDBOOK_REMOVE_CONFIRM:{
		en:"내 단어장에서 단어를 제거하시겠습니까?",
		kr:"내 단어장에서 단어를 제거하시겠습니까?"},
	QUIZ_SUBMIT_CONFIRM_NOT_CHECK:{
		en:"아직 풀지 않은 문제가 %d개 있습니다.\n\n제출하시겠습니까?",
		kr:"아직 풀지 않은 문제가 %d개 있습니다.\n\n제출하시겠습니까?"},
	QUIZ_SUBMIT_SUCCESS:{
		en:"답안이 정상적으로 제출되었습니다.",
		kr:"답안이 정상적으로 제출되었습니다."},
	QUIZ_FONT_SIZE_IS_MIN:{
		en:"현재 제일 작은 글씨로 보고 있습니다.",
		kr:"현재 제일 작은 글씨로 보고 있습니다."},
	QUIZ_FONT_SIZE_IS_MAX:{
		en:"현재 제일 큰 글씨로 보고 있습니다.",
		kr:"현재 제일 큰 글씨로 보고 있습니다."},

	HAS_LOCK_BOOK:{
		en:"통과하지 못한 책이 있습니다.\n\n기간 내, 다시 풀어야하는 퀴즈를 먼저 푼 다음에 다른 퀴즈를 푸실 수 있습니다.",
		kr:"통과하지 못한 책이 있습니다.\n\n기간 내, 다시 풀어야하는 퀴즈를 먼저 푼 다음에 다른 퀴즈를 푸실 수 있습니다."},
/*
	IS_LOCK_BOOK_NEED_COUNSEL:{
		en:"선생님과 상담 후, 퀴즈를 푸실 수 있습니다.\n\n선생님께 상담을 받으시기 바랍니다.",
		kr:"선생님과 상담 후, 퀴즈를 푸실 수 있습니다.\n\n선생님께 상담을 받으시기 바랍니다."},
	IS_UNABLE_BOOK_ENRICHMENT:{
		en:"comprehension quiz 결과가 fail 이므로, enrichment quiz 는 푸실 수 없습니다.\n\n다른 책의 quiz 를 풀어주세요.",
		kr:"comprehension quiz 결과가 fail 이므로, enrichment quiz 는 푸실 수 없습니다.\n\n다른 책의 quiz 를 풀어주세요."},
	IS_UNABLE_BOOK_BOOKREPORT:{
		en:"comprehension quiz 결과가 fail 이므로, 독후감 쓰기를 하실 수 없습니다.",
		kr:"comprehension quiz 결과가 fail 이므로, 독후감 쓰기를 하실 수 없습니다."},
	IS_LOCK_BOOK_ENRICHMENT:{
		en:"comprehension quiz 를 푼 후, enrichment quiz를 푸실 수 있습니다.",
		kr:"comprehension quiz 를 푼 후, enrichment quiz를 푸실 수 있습니다."},
	IS_LOCK_BOOK_BOOKREPORT:{
		en:"comprehension quiz or/and enrichment quiz 를 푼 후, 독후감 쓰기를 하실 수 있습니다.",
		kr:"comprehension quiz or/and enrichment quiz 를 푼 후, 독후감 쓰기를 하실 수 있습니다."},
*/
	USER_SUSPENDED:{
		en:"일시 정지 상태입니다.\n\n본 서비스를 이용하실 수 없습니다.\n\n자세한 사항은 선생님께 문의해주시기 바랍니다.",
		kr:"일시 정지 상태입니다.\n\n본 서비스를 이용하실 수 없습니다.\n\n자세한 사항은 선생님께 문의해주시기 바랍니다."},
	SUSPENDED:{
		en:"서비스를 신청한 학원이 아닙니다.\n\n본 서비스를 이용하실 수 없습니다.",
		kr:"서비스를 신청한 학원이 아닙니다.\n\n본 서비스를 이용하실 수 없습니다."},
	NOT_YOUR_STEP:{
		en:"현재 학습 중인 Step 의 책이 아닙니다.",
		kr:"현재 학습 중인 Step 의 책이 아닙니다."},
	NEED_RENT:{
		en:"도서 대출 후, 퀴즈를 푸실 수 있습니다.",
		kr:"도서 대출 후, 퀴즈를 푸실 수 있습니다."},
	NEED_RETURN:{
		en:"대출 기간을 초과하였습니다.\n\n도서를 반납하시기 바랍니다.",
		kr:"대출 기간을 초과하였습니다.\n\n도서를 반납하시기 바랍니다."},
	NEED_COUNSEL:{
		en:"선생님과 상담 후, 퀴즈를 푸실 수 있습니다.\n\n선생님께 상담을 받으시기 바랍니다.",
		kr:"선생님과 상담 후, 퀴즈를 푸실 수 있습니다.\n\n선생님께 상담을 받으시기 바랍니다."},
	NEED_COMPREHENSION:{
		en:"Comprehension quiz 를 푼 후, 독후감을 쓰실 수 있습니다.",
		kr:"Comprehension quiz 를 푼 후, 독후감을 쓰실 수 있습니다."},
	PREVIOUS_QUIZ_FAIL_ENRICHMENT:{
		en:"Comprehension quiz를 응시 후, Pass 해야 Enrichment quiz 를 푸실 수 있습니다.",
		kr:"Comprehension quiz를 응시 후, Pass 해야 Enrichment quiz 를 푸실 수 있습니다."},
	PREVIOUS_QUIZ_FAIL_STORYDICTATION:{
		en:"Comprehension quiz를 응시 후, Pass 해야 Story Dication을 푸실 수 있습니다.",
		kr:"Comprehension quiz를 응시 후, Pass 해야 Story Dication을 푸실 수 있습니다."},
	PREVIOUS_QUIZ_FAIL_BOOKREPORT:{
		en:"Comprehension quiz 또는 Enrichment quiz를 응시 후, Pass 해야 독후감을 쓰실 수 있습니다.",
		kr:"Comprehension quiz 또는 Enrichment quiz를 응시 후, Pass 해야 독후감을 쓰실 수 있습니다."},
	INPUT_BOOKREPORT_CHARACTER:{
		en:"Character 를 입력하세요.",
		kr:"Character 를 입력하세요."},
	INPUT_BOOKREPORT_CONTENT:{
		en:"내용을 입력하세요.",
		kr:"내용을 입력하세요."},
	BOOKREPORT_SUBMIT_SUCCESS:{
		en:"성공적으로 독후감을 등록하였습니다.",
		kr:"성공적으로 독후감을 등록하였습니다."},
	ALREADY_CONNECTION:{
		en:"이미 서버와 통신 중입니다.",
		kr:"이미 서버와 통신 중입니다."},
	MANDATORY_INPUT_FORM:{
		en:"필수 항목이 입력 또는 선택되지 않았습니다.\n\n또는 영어로 입력되지 않았습니다.\n\n입력해주세요.",
		kr:"필수 항목이 입력 또는 선택되지 않았습니다.\n\n또는 영어로 입력되지 않았습니다.\n\n입력해주세요."},
	INTERNAL_ERROR:{
		en:"일시적인 서버 장애로 처리되지 못하였습니다.\n\n잠시 후, 다시 시도해보세요.",
		kr:"일시적인 서버 장애로 처리되지 못하였습니다.\n\n잠시 후, 다시 시도해보세요."},
	FIND_PASSWORD_RESULT:{
		en:"새로운 비밀번호로 초기화하였습니다.\n\n새 비밀번호는 Parent Mobile 로 전송하였습니다.\n\n로그인 후, 비밀번호를 변경하세요.",
		kr:"새로운 비밀번호로 초기화하였습니다.\n\n새 비밀번호는 Parent Mobile 로 전송하였습니다.\n\n로그인 후, 비밀번호를 변경하세요."},
	FIND_PASSWORD_NO_MATCH:{
		en:"입력하신 정보로 가입한 사용자를 찾을 수 없습니다.\n\n입력한 정보가 올바른지 확인하시기 바랍니다.\n\n비밀번호를 찾을 수 없는 경우, 담당 선생님께 초기화를 요청하십시오.",
		kr:"입력하신 정보로 가입한 사용자를 찾을 수 없습니다.\n\n입력한 정보가 올바른지 확인하시기 바랍니다.\n\n비밀번호를 찾을 수 없는 경우, 담당 선생님께 초기화를 요청하십시오."},
	FIND_PASSWORD_NO_NUMBER:{
		en:"소속된 학원은 비밀번호 찾기를 하실 수 없습니다.\n\n담당 선생님께 초기화를 요청하십시오.",
		kr:"소속된 학원은 비밀번호 찾기를 하실 수 없습니다.\n\n담당 선생님께 초기화를 요청하십시오."},
	FIND_PASSWORD_SMS_ERROR:{
		en:"SMS 전송 과정의 오류로 인해 비밀번호 문자가 전송되지 못하였습니다.\n\n담당 선생님께 초기화를 요청하십시오.",
		kr:"SMS 전송 과정의 오류로 인해 비밀번호 문자가 전송되지 못하였습니다.\n\n담당 선생님께 초기화를 요청하십시오."}
};

function getMsg(s, lang)
{
	if (lang == undefined)
		var lang = EN;

	if (lang == EN)
	{
		if (MSG[s] == undefined)
		{
			return s + ' is undefine message.';
		}
		else
		{
			return MSG[s].en;
		}
	}
	else
	{
		if (MSG[s] == undefined)
		{
			return s + '(은)는 정의되지 않은 메시지입니다.';
		}
		else
		{
			return MSG[s].kr;
		}
	}
}

function PageMove(pageFormName, pageNo)
{
	var oForm = document.forms["pageForm"];
	if (oForm)
	{
		oForm[pageFormName].value = pageNo;
	}
	else
	{
		alert("페이지 정보를 담을 폼이 없습니다.\n\n페이지 이동을 할 수 없습니다.");
	}
	oForm.submit();
}

function openReview(result_id, quiz_type)
{
	var url = gURL_root;

	var opt = 'left=0,top=0,fullscreen=1,scrollbars=1,resizable=1';
	url += "/questionView/index.php?action=review&result_id=" + result_id + "&quiz_type=" + quiz_type;

	g_hWnd = window.open(url, "examWnd", opt);
	g_hWnd.focus();
}

function openQuestionView(book_id, rental_log_id, book_lock, quiz_type, status, lockReason)
{
	if (lockReason == undefined)
		lockReason = "";

	// 문제가 있는 상태임.
	if (lockReason != "NO_PROBLEM" && lockReason != "")
	{
		switch (lockReason.toUpperCase())
		{
			case 'PREVIOUS_QUIZ_FAIL':
				alert(getMsg(lockReason + "_" + quiz_type.toUpperCase()));	
				break;
			default:
				alert(getMsg(lockReason));	
		}
		return ;
	}

	var url = gURL_root;

	// 학부모들의 요구에 따라 임시로 스크롤바를 표시함
	var opt = 'left=0,top=0,fullscreen=1,scrollbars=1,resizable=1';
	
	switch(quiz_type)
	{
		case 'comprehension':
		case 'enrichment':
		case 'storydictation':
			url += "/questionView/index.php?book_id=" + book_id + '&rental_log_id=' + rental_log_id + '&quiz_type=' + quiz_type;
			break;
		case 'bookreport':
			url += "/bookReport/index.php?book_id=" + book_id;
			opt = 'width=657,height=600,top=0,left=0,scrollbars=1';
			break;
	}
	
/*
	if (g_hWnd != null)
	{
		g_hWnd.close();
	}
*/

	g_hWnd = window.open(url, "examWnd", opt);
	g_hWnd.focus();
}

function showBookReport(sURL)
{
	if (isNumber(sURL))
	{
		sURL = "/bookReport/index.php?action=review&topic_id=" + sURL;
	}
	g_hWnd = window.open(sURL, "examWnd", "width=657,height=600,top=0,left=0,scrollbars=1");
	g_hWnd.focus();
}

/*
	차트 관련
*/
function ChartPrototype()
{
	this.chartObjList = [];
	this.chartCurrentIdx = 0;
	this._name_ = null;
	this.chartDirection = "vertical"; // vertical | horizontal

	this.oContainerDiv = null;
	this.oChartDiv = null;
	this.oTable = null;

	this.data = null;
}

ChartPrototype.prototype = {
	setName:function(s, direction)
	{
		this._name_ = s;
		this.chartDirection = (direction == undefined) ? "vertical" : direction;
	},
	createCategory:function(arrCategory)
	{
		document.write('<div style="text-align:right"><img src="' + gURL_root + '/img/' + gTemplateName + '/bg_chart_category.png" /></div>');
	},
	autoInit:function()
	{
		for (var i = 0; i < this.data.length ; i++)
		{
			this.initChart("chart-bar-" + this.data[i].id + "-0", this.data[i].bar[0]);
		}

		this.effectChart();
	},
	createTable:function(s, direction, data, bNoOutput)
	{
		this.setName(s, direction);

		if (data == undefined)
		{
			alert("차트의 데이터 값이 올바르지 않습니다.")
			return ;
		}

		if (bNoOutput == true)
			this.data = data;

		this.oContainerDiv = document.createElement("<div>");
		this.oChartDiv = document.createElement("<div>");

		if (this.chartDirection == "vertical")
			this.oChartDiv.className = "chart";

		this.oTable = document.createElement("<table>");
		this.oTable.cellpadding = "0";
		this.oTable.cellspacing = "0";
		this.oTable.border = "0";

		if (this.chartDirection == "vertical")
			this.createVerticalHtml(data);
		else
			this.createHorizontalHtml(data);

		this.oChartDiv.appendChild(this.oTable);
		this.oContainerDiv.appendChild(this.oChartDiv);

		if (bNoOutput == undefined || bNoOutput == false)
		{
			document.write(this.oContainerDiv.innerHTML);

			for (var i = 0; i < data.length ; i++)
			{
				this.initChart("chart-bar-" + data[i].id + "-0", data[i].bar[0]);
			}

			this.effectChart();
		}
		else
		{
			return (this.oContainerDiv.innerHTML);
		}
	},
	createVerticalHtml:function(data)
	{
		var oBar = this.oTable.insertRow(this.oTable.rows.length);
		oBar.className = "chart-bar";

		var oCell = null;
		var oDiv = null;
		
		var nBarHeight = 200; // 이 값은 고정! (배경이미지와 함께 맞춰야함)

		for (var i = 0; i < data.length ; i++)
		{
			oCell = oBar.insertCell(i);

			data[i].bar = [data[i].score[0] / 100 * nBarHeight];

			if (i == 0)
				oCell.style.borderLeft = "none";

			oDiv = document.createElement("<div>");
			oDiv.id = "chart-bar-" + data[i].id + "-0";
			oDiv.className = "bar";
			oDiv.style.height = data[i].bar[0] + "px";
			oDiv.innerHTML = data[i].score[0] + "%";

			oCell.appendChild(oDiv);
		}

		var oLabel = this.oTable.insertRow(this.oTable.rows.length);
		oLabel.className = "chart-label";

		for (var i = 0; i < data.length ; i++)
		{
			oCell = oLabel.insertCell(i);
			oCell.innerHTML = data[i].label;
		}

		this.oTable.appendChild(oBar);
		this.oTable.appendChild(oLabel);
	},
	createHorizontalHtml:function(data)
	{
		var oItem = null;
		var oLabelCell = null;
		var oBarCell = null;
		var oDiv = null;

		var nBarWidth = 390;
		var nLabelWidth = 220;
		var nLabelCSSHegiht = 20; // CSS 에서의 bar 의 height

		var nLabelHegiht = (data[0].score.length + 1) * nLabelCSSHegiht;
		var arrBarImg = ['bg_chart_horizontal_bar.png', 'bg_chart_horizontal_bar2.png', 'bg_chart_horizontal_bar3.png'];

		for (var i = 0; i < data.length ; i++)
		{
			data[i].bar = [];

			oItem = this.oTable.insertRow(this.oTable.rows.length);

			oLabelCell = oItem.insertCell(0);
			oLabelCell.innerHTML = data[i].label;
			oLabelCell.style.width = nLabelWidth + "px";
			oLabelCell.style.height = nLabelHegiht + "px";
			oLabelCell.style.textAlign = "right";
			oLabelCell.style.paddingRight = "5px";

			oBarCell = oItem.insertCell(1);
			oBarCell.style.width = nBarWidth + "px";
			oBarCell.style.paddingLeft = "5px";

			for (var j = 0; j < data[i].score.length ; j++)
			{
				data[i].bar[j] = data[i].score[j] / 100 * nBarWidth;

				oDiv = document.createElement("<div>");
				oDiv.id = "chart-bar-" + data[i].id + "-" + j;

				if (j == 0)
					oDiv.className = "chart-bar-horizontal";
				else
					oDiv.className = "chart-bar-horizontal-" + parseInt(j + 1);

				oDiv.style.width = data[i].bar[j] + "px";
				oDiv.innerHTML = '<div class="chart-print-bar-container"><img src="' + gURL_root + '/img/' + gTemplateName + '/' + arrBarImg[j] + '" width="' + data[i].bar[j] + '" class="chart-print-bar" /><div style="position:relative;z-index:9;top:-20px;" class="chart-print-bar"><div style="float:right;"><div style="position:relative;z-index:10;left:30px;">' + data[i].score[j] + '%</div></div></div></div><div style="position:relative;z-index:9;" class="chart-screen-bar">' + data[i].score[j] + "%</div></div>";
				oDiv.style.marginTop = "2px";
				oDiv.style.marginBottom = "2px";

				oBarCell.appendChild(oDiv);
			}

			oLabelCell.style.borderRight = "3px solid #E9E9E9"; 
		}
	},
	initChart:function(s, max)
	{
		if (this._name_ == null)
			return ;

		this.chartObjList.push({obj:$(s), max:max});

		if (this.chartDirection == "vertical")
			this.chartObjList[this.chartObjList.length - 1].obj.style.height = "0px";
		else
			this.chartObjList[this.chartObjList.length - 1].obj.style.width = "0px";
	},
	effectChart:function()
	{
		if (this.chartCurrentIdx < this.chartObjList.length)
		{
			this.progressChart(1);
		}
	},
	progressChart:function(size)
	{
		try
		{
			if (this.chartObjList[this.chartCurrentIdx].max == undefined)
				return ;			
		}
		catch (e)
		{
			return ;
		}

		if (size < this.chartObjList[this.chartCurrentIdx].max)
		{
			if (this.chartDirection == "vertical")
				this.chartObjList[this.chartCurrentIdx].obj.style.height = size + "px";
			else
				this.chartObjList[this.chartCurrentIdx].obj.style.width = size + "px";

			if (this.chartDirection == "vertical")
				size+=4;
			else
				size+=10;

			var cmd = this._name_ + ".progressChart(" + size + ")";
			setTimeout(cmd, 1);
		}
		else
		{
			if (this.chartDirection == "vertical")
				this.chartObjList[this.chartCurrentIdx].obj.style.height = this.chartObjList[this.chartCurrentIdx].max + "px";
			else
				this.chartObjList[this.chartCurrentIdx].obj.style.width = this.chartObjList[this.chartCurrentIdx].max + "px";

			this.chartCurrentIdx++;
			this.effectChart();
		}
	}
}

/*
	MP3 스트리머
*/
function Mp3StreamerBase()
{
	this.flashObjName = "mp3streamer";
	this.eventControlFunc = null;
	this.prevEventControlFunc = null;
}

Mp3StreamerBase.prototype = {
	setObj:function(flashObjName)
	{
		this.flashObjName = flashObjName;

		if (gURL_root == undefined)
			var gURL_root = '';

		showFlash(this.flashObjName, 1, 1, gURL_root + "/media/mp3streamer.swf", "", "position:absolute;top:-1000;left:-1000");
	},
	setEventController:function(eventControlFunc)
	{
		if (typeof(eventControlFunc) == "undefined")
		{
			alert("Not found '" + eventControlFunc + "' function.");
			return ;
		}

		this.prevEventControlFunc = this.eventControlFunc;
		this.eventControlFunc = eventControlFunc;

		$(this.flashObjName).attachEvent("FSCommand",this.eventControlFunc);
	},
	rollbackEventController:function()
	{
		this.eventControlFunc = this.prevEventControlFunc;
		this.prevEventControlFunc = null;
	},
	stopSound:function()
	{
		if ($(this.flashObjName) == null)
		{
			alert("Not found '" + this.flashObjName + "' object.");
			return ;
		}

		$(this.flashObjName).setVariable("execFunction", "StopSound");
	},
	playSound:function(soundPath, eventControlFuncName)
	{
		if ($(this.flashObjName) == null)
		{
			alert("Not found '" + this.flashObjName + "' object.");
			return ;
		}

		$(this.flashObjName).setVariable("SoundUrl", soundPath);
		$(this.flashObjName).setVariable("execFunction", "PlaySound");
	}
};

var gMp3Streamer = new Mp3StreamerBase();

function createMp3Streamer()	{ gMp3Streamer.setObj("mp3streamer"); }
function stopSound()			{ gMp3Streamer.stopSound(); }
function playSound(soundPath)	{ gMp3Streamer.playSound(soundPath); }
function mp3EventSet(fn)		{ gMp3Streamer.setEventController(fn); }
function mp3EventRollback()		{ gMp3Streamer.rollbackEventController(); }

/*
	단어장 사운드 패스
*/
function getWordSoundPath(nWord_id)
{
//	var page = Math.ceil(nWord_id / 100);
	var page = nWord_id % 100;
	return g_wordSoundPath + "/" + page + "/" + nWord_id + ".mp3";
}


/* 한글/영어 토글링 페이지 */
var LangWizard = function() { };
LangWizard = {
	lang:"english",
	Init:function(lang)
	{
		this.lang = lang;
		this.Print();
	},
	Print:function()
	{
		var html = [];
		
		if (this.lang == "english")
		{
			var imgEng = "btn_english_on.png";
			var imgKor = "btn_korean.png";
		}
		else
		{
			var imgEng = "btn_english.png";
			var imgKor = "btn_korean_on.png";
		}

		html.push('<div style="margin-bottom:8px;text-align:right;padding-right:10px;">');
		html.push('<a href="javascript:LangWizard.SetLang(\'english\');" onfocus="this.blur();"><img src="' + gURL_root + '/img/' + gTemplateName + '/common/' + imgEng + '" alt="English" /></a>');
		html.push('&#160;');
		html.push('<a href="javascript:LangWizard.SetLang(\'korean\');" onfocus="this.blur();"><img src="' + gURL_root + '/img/' + gTemplateName + '/common/' + imgKor + '" alt="Korean" /></a>');
		html.push('</div>');

		document.write(html.join(""));
	},
	SetLang:function(lang)
	{
		if (gQueryString == "")
			location.href = gSelf + "?lang=" + lang;
		else
			location.href = gSelf + "?" + gQueryString + "&lang=" + lang;
	}
};


function getSiteName(lang)
{
	if (lang == undefined || lang == '')
		var lang = 'ko';

	// ko | en ==> 한글 또는 영어에 대한 분기가 필요하다면 이곳에서.

	return gSiteName;
}

function getBarcodePrefix()
{
	return gBarCodePrefix;
}


function showToolTip(id)
{
	document.getElementById(id).style.display = 'block';

	switch (gTemplateName)
	{
		case 'readersplanet':
			document.getElementById(id).style.left = -20;
			break;
		case 'momnschool':
			document.getElementById(id).style.left = 40;
	}
	document.getElementById(id).style.top = 10;
}

function hideToolTip(id)
{
	document.getElementById(id).style.display = 'none';
}


