var LiveKeyword = new Array();
var LiveSearchInterval = new Array();
var LiveListFocus = new Array();
var StarPointTimeout = null;
var RollTimeout = new Array();
var CalendarMoveTimeout = null;
var CalendarHiddenTimeout = null;
var IsWritePageSubmit = false;

var enabletip = false;
var enableimage = false;
window.onmouseover = document.onmousemove = EventMouseoverFunction;
window.onbeforeunload = document.onbeforeunload = EventUnloadFunction;
window.onresize = EventResizeFunction;
window.onscroll = EventScrollFunction;
window.onload = EventLoadFunction;

function in_array(value,array) {
	for (var i=0, total=array.length;i<total;i++) {
		if (value==array[i]) return true;
	}

	return false;
}

function array_max(array) {
	var max = 0;
	for (var i=0, total=array.length;i<total;i++) {
		max = max<parseInt(array[i]) ? parseInt(array[i]) : max;
	}

	return max;
}

function array_sum(array) {
	var sum = 0;
	for (var i=0, total=array.length;i<total;i++) {
		sum+= parseInt(array[i]);
	}

	return sum;
}

function SetCookie(name,value,expire,path) {
	path = (!path) ? "/" : path;
	var todaydate = new Date();
	unixtime = todaydate.getTime();

	if (value==null) {
		expire = 0;
		expiretime = "";
	} else {
		extime = unixtime+(expire*1000);
		todaydate.setTime(extime);
		expiretime = " expires=" + todaydate.toUTCString() +";";
	}

	document.cookie = name + "=" + escape(value) + "; path="+path+";"+expiretime;
}

function GetCookie(name) {
	var cookies = document.cookie.split(";");
	var values = "";

	for (var i=0, total=cookies.length;i<total;i++) {
		if (cookies[i].indexOf(name+"=")!=-1) {
			var temp = cookies[i].split("=");
			values = temp[1];
			break;
		}
	}

	return values;
}

// Opener
function OpenPopup(url,width,height) {
	var windowLeft = (screen.width-width)/2;
	var windowTop = (screen.height-height)/2;
	windowTop = windowTop>20 ? windowTop-20 : windowTop;
	var opener = window.open(url,"","top="+windowTop+",left="+windowLeft+",width="+width+",height="+height+",scrollbars=0");

	if (opener) {
	} else {
		alert("Error\n\nPopup Blocker!");
	}
}

function OpenPopupName(url,name,width,height) {
	var windowLeft = (screen.width-width)/2;
	var windowTop = (screen.height-height)/2;
	windowTop = windowTop>20 ? windowTop-20 : windowTop;
	var opener = window.open(url,name,"top="+windowTop+",left="+windowLeft+",width="+width+",height="+height+",scrollbars=0");

	if (opener) {
	} else {
		alert("Error\n\nPopup Blocker!");
	}

	return opener;
}

function DoNextFormField(form,now,next,length) {
	var object = document.forms[form];

	if (object[now].value.length>=length) {
		object[next].focus();
	}
}

function DoOpenWindow(url,width,height,scroll) {
	var winl = (screen.width-width)/2;
	var wint = (screen.height-height)/2;
	window.open(url,"","top="+wint+",left="+winl+",width="+width+",height="+height+",scrollbars="+scroll);
}

// Get
function GetDecimal(number,decimal) {
	var number = number.toString().split(".");
	if (number.length == 1) number[1] = "0000000000";
	if (number[1].length < decimal) number[1] = number[1] + "0000000000";
	return number[0]+"."+number[1].substr(0,decimal);
}

function GetDirectoryFiles(code,path,list,inFunction,inValue) {
	ToggleLoadingBox("show",170,40,LANG["DownloadData"]);
	var InnerFunctionValue = new Array();
	InnerFunctionValue[0] = code;
	InnerFunctionValue[1] = path;
	InnerFunctionValue[2] = list;
	InnerFunctionValue[3] = inFunction;
	InnerFunctionValue[4] = inValue;
	var XML = GetHttpRequestXML(ENV["dir"]+"/live.xml","mode=getDirectory&path="+path,"GetDirectoryFilesInner",InnerFunctionValue);
}

function GetDirectoryFilesInner(code,path,list,inFunction,inValue,XML) {
	var listHTML = "";
	document.getElementById(code+"Path").innerHTML = ENV["root"]+path;

	if (XML) {
		var root = XML.documentElement;

		for (var i=0, total=root.childNodes.length;i<total;i++) {
			var name = root.childNodes.item(i).getAttribute("name");
			var is_dir = root.childNodes.item(i).getAttribute("is_dir");
			var icon = root.childNodes.item(i).getAttribute("icon");

			if (is_dir=="1") {
				var goPath = path+name+'/';
				if (name==".") {
					goPath = "/";
				} else if (name=="..") {
					goPath = "";
					var paths = path.split("/");
					for (var k=0, totalpaths=paths.length-2;k<totalpaths;k++) {
						goPath+= paths[k]+"/";
					}
				}
				if (goPath=="") goPath = "/";
				listHTML+= '<div class="pointer" onmouseover="this.style.backgroundColor=\'#E5E5E5\';" onmouseout="this.style.backgroundColor=\'\';" style="background:url(\''+ENV["dir"]+'/common/images/fileicon/dir.gif\') no-repeat 5px center; padding:2px 0px 2px 25px;" onclick="GetDirectoryFiles(\''+code+'\',\''+goPath+'\',\''+list+'\',\''+inFunction+'\',\''+inValue+'\')">'+name+'</div>';
			} else {
				listHTML+= '<div class="pointer" onmouseover="this.style.backgroundColor=\'#E5E5E5\';" onmouseout="this.style.backgroundColor=\'\';" style="background:url(\''+icon+'\') no-repeat 5px center; padding:2px 0px 2px 25px;" onclick="'+inFunction+'(\''+name+'\',\''+path+'\',\''+inValue+'\')">'+name+'</div>';
			}
		}
	}

	document.getElementById(code+"List").innerHTML = listHTML;
	ToggleLoadingBox("hidden","","","");
}

function GetNumberToText(number,code) {
	if (!number) return false;
	var number = number.toString();
	var Number = parseInt(number.replace(/[^\d]+/g,""));
	var NumberString = Number.toString();
	var NumberName = LANG["NumberName"].split(",");
	var result = "";

	var digit = new Array();
	var k = NumberString.length - 1;

	if (NumberString.length>16) {
		alert(LANG["InsertNumberTooBig"]);
		return;
	}

	for (var i=0;i< NumberString.length;i ++) {
		digit[k] = NumberString.charAt(i);
		if (code==1) result+= parseInt(digit[k])!=0 ? NumberName[parseInt(digit[k])] : "";
		else result+= parseInt(digit[k])!=0 ? digit[k] : "";

		if ((digit[k]!="0" || (k%4==0) && flag) && k!=0) {
			var comma = k%4;

			switch (comma) {
				case 0 :
					if (k/4==1) {
						result+= NumberName[13];
						flag = false;
					} else if (k/4==2) {
						result+= NumberName[14];
						flag = false;
					} else if (k/4==3) {
						result+= NumberName[15];
						flag = false;
					}
				break;

				case 1 :
					result+= NumberName[10];
					flag = true;
				break;

				case 2 :
					result+= NumberName[11];
					flag = true;
				break;

				case 3 :
					result+= NumberName[12];
					flag = true;
				break;
			}
		}

		k--;
	}

	return result;
}


function GetNumberFormat(number,code) {
	number = String(number);
	number = parseInt(number.replace(/[^\d]+/g,""));
	number = String(number);

	if (code=="insert") {
		var k = 0;
		var getNumber = "";

		for (i=number.length;i>0;i--) {
			getNumber+= number.substr(i-1,1);
			k++;
			if (k%3==0 && i!=1) {
				getNumber+= ",";
			}
		}

		var returnValue = "";
		k = getNumber.length-1;
		for (i=0;i<getNumber.length;i++) {
			returnValue+= getNumber.substr(k,1);
			k--;
		}
	} else {
		returnValue = parseInt(number);
	}

	return returnValue;
}

function GetStripTags(str) {
	var replaceThis = new RegExp("<","gi");
	str = str.replace(replaceThis,"&lt;");
	var replaceThis2 = new RegExp(">","gi");
	str = str.replace(replaceThis2,"&gt;");
	return str;
}

function GetSelectBox(code,geter) {
	var temp = geter.split(".");
	if (temp.length==1) {
		var object = document.getElementById(geter);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var object = document.forms[form][selectbox];
	}

	var selector = "";
	var selectorText = "";
	var listor = "";
	var listorText = "";

	for (var i=0;i<object.options.length;i++) {
		if (object.options[i].selected==true) {
			selector+= selector!="" ? ","+object.options[i].value : object.options[i].value;
			selectorText+= selectorText!="" ? ","+object.options[i].text : object.options[i].text;
		}
		listor+= listor!="" ? ","+object.options[i].value : object.options[i].value;
		listorText+= listorText!="" ? ","+object.options[i].text : object.options[i].text;
	}

	if (code=="selectedText") {
		return selectorText;
	} else if (code=="selected") {
		return selector;
	} else if (code=="listText") {
		return listorText;
	} else {
		return listor;
	}
}

function GetEmbed(url,width,height,id) {
	var txt = '<embed src="' + url + '" quality="high" bgcolor="#FFFFFF" wmode="transparent" style="width:' + width + 'px; height:' + height + 'px;" id="' + id + '" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">';
	document.write(txt);
}

function GetHTTPRequest(url,query) {
	var selectVar = Math.random();
	var xmlhttp = null;

	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}

	xmlhttp.open("post",url,true);
	xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlhttp.onreadystatechange = function() {}
	query = query!="" ? "&"+query : "";
	xmlhttp.send("rnd="+selectVar+query);
}

function GetHttpRequestXML(url,query,inFunction,inValues) {
	var selectVar = Math.random();
	var xmlhttp = null;

	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}

	xmlhttp.open("post",url,true);
	xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState==4) {
			if (xmlhttp.status==200) {
				if (inFunction) {
					inValue = "";
					for (var i=0;i<inValues.length;i++) {
						inValue+= i==0 ? "'"+inValues[i]+"'" : ",'"+inValues[i]+"'";
					}
					inValue+= i==0 ? "xmlhttp.responseXML" : ",xmlhttp.responseXML";
					eval(inFunction+"("+inValue+")");
				}
			}
		}
	}

	query = query!="" ? "&"+query : "";

	xmlhttp.send("rnd="+selectVar+query);
}

function GetKeyCode(e) {
	if (e.keyCode) {
		var pressKey = e.keyCode;
	} else {
		var pressKey = e.which;
	}

	return pressKey;
}

function GetDayOfMonth(year,month,day,tag) {
	var temp = year.split(".");
	if (temp.length==1) {
		var objectYear = document.getElementById(year);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var objectYear = document.forms[form][selectbox];
	}

	var temp = month.split(".");
	if (temp.length==1) {
		var objectMonth = document.getElementById(month);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var objectMonth = document.forms[form][selectbox];
	}

	var temp = day.split(".");
	if (temp.length==1) {
		var objectDay = document.getElementById(day);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var objectDay = document.forms[form][selectbox];
	}

	var Year = parseInt(objectYear.value);
	var Month = parseInt(objectMonth.value);
	var Day = parseInt(objectDay.value);

	var lastDay;

	MonthDay = new Array;
	MonthDay[1] = 31;
	MonthDay[2] = 28;
	MonthDay[3] = 31;
	MonthDay[4] = 30;
	MonthDay[5] = 31;
	MonthDay[6] = 30;
	MonthDay[7] = 31;
	MonthDay[8] = 31;
	MonthDay[9] = 30;
	MonthDay[10] = 31;
	MonthDay[11] = 30;
	MonthDay[12] = 31;

	lastDay = MonthDay[Month];

	if (Month==2) {
		lastDay = 28;
		if (Year%4==0) {
			lastDay = 29;
		}
		if (Year%100==0) {
			lastDay = 28;
		}
		if (Year%400==0) {
			lastDay = 29;
		}
	}


	var text = new Array();
	var value = new Array();

	var TagString = tag ? tag : "";

	for (i=0;i<lastDay;i++) {
		text[i] = parseInt(i+1)+TagString;
		value[i] = parseInt(i+1);
	}

	InsertSelectBox(day,text,value,"1");
	if (Day<=lastDay) {
		objectDay.value = Day;
	} else {
		objectDay.value = lastDay;
	}
}

function GetUnionCategoryDepth2(depth1,depth2,defaultValue) {
	var category1 = document.getElementById(depth1).value;

	if (category1) {
		ToggleLoadingBox("show",170,40,LANG["DownloadData"]);
		var InnerFunctionValue = new Array();
		InnerFunctionValue[0] = depth1;
		InnerFunctionValue[1] = depth2;
		InnerFunctionValue[2] = defaultValue;
		var XML = GetHttpRequestXML(ENV["dir"]+"/live.xml","mode=getUnionCategoryDepth2&getcode="+category1,"GetUnionCategoryDepth2Inner",InnerFunctionValue);
	}
}

function GetUnionCategoryDepth2Inner(depth1,depth2,defaultValue,XML) {
	var text = new Array();
	var value = new Array();
	document.getElementById(depth2).style.display = "none";

	if (XML) {
		var root = XML.documentElement;

		if (defaultValue) {
			value[0] = "";
			text[0] = defaultValue;
			k = 1;
		} else {
			k = 0;
		}

		if (root.childNodes.length>0) {
			for (var i=0, totalList=root.childNodes.length;i<totalList;i++) {
				value[k] = root.childNodes.item(i).getAttribute("no");
				text[k] = root.childNodes.item(i).getAttribute("title");
				k++;
			}
			InsertSelectBox(depth2,text,value,"1");
			document.getElementById(depth2).style.display = "";
		} else {
			document.getElementById(depth2).style.display = "none";
		}
	}
	ToggleLoadingBox("hidden","","","");
}

function GetLiveSearchOver(key,num) {
	var LiveList = document.getElementById(key+"List");
	var ListKey = LiveList.getElementsByTagName("span");
	var Keyword = document.getElementById(key);

	if (LiveListFocus[key]>=0) {
		ListKey[LiveListFocus[key]].className = "LiveSearchList";
	}

	LiveListFocus[key] = num;
	ListKey[LiveListFocus[key]].className = "LiveSearchListFocus";
}

function GetLiveSearchOnclick(key) {
	var LiveList = document.getElementById(key+"List");
	var ListKey = LiveList.getElementsByTagName("span");
	var Form = document.getElementById(key+"Form");
	var Keyword = document.getElementById(key);
	Keyword.value = LiveKeyword[key];
	Form.submit();
}

function GetLiveSearchMove(key,e) {
	var LiveList = document.getElementById(key+"List");
	var ListKey = LiveList.getElementsByTagName("span");
	var Keyword = document.getElementById(key);
	var Keycode = GetKeyCode(e);

	if (Keycode=="38" || Keycode=="40") {
		var LiveListHeight = parseInt(LiveList.style.height.replace("px",""));
		var ListTotal = ListKey.length;

		if (Keycode=="40") {
			if (LiveListFocus[key]<ListTotal-1) {
				if (LiveListFocus[key]!=-1) {
					ListKey[LiveListFocus[key]].className = "LiveSearchList";
				}
				LiveListFocus[key]++;
				ListKey[LiveListFocus[key]].className = "LiveSearchListFocus";
			}

			if (LiveListHeight<(LiveListFocus[key]+1)*22) {
				LiveList.scrollTop = LiveList.scrollTop+22;
			}


			LiveKeyword[key] = Keyword.value = ListKey[LiveListFocus[key]].innerHTML;
		} else if (Keycode=="38") {
			if (LiveListFocus[key]>0) {
				if (LiveListFocus[key]!=-1) {
					ListKey[LiveListFocus[key]].className = "LiveSearchList";
					LiveListFocus[key]--;
					ListKey[LiveListFocus[key]].className = "LiveSearchListFocus";
				}
			}

			if (LiveListHeight-LiveList.scrollTop<(LiveListFocus[key]+1)*22) {
				LiveList.scrollTop = LiveList.scrollTop-22;
			} else {
				LiveList.scrollTop = 0;
			}

			LiveKeyword[key] = Keyword.value = ListKey[LiveListFocus[key]].innerHTML;
		}
	}
}

function GetLiveSearchKeyword(key) {
	clearInterval(LiveSearchInterval[key]);
	var LiveList = document.getElementById(key+"List");
	var LiveBox = document.getElementById(key+"Box");
	var keyword = document.getElementById(key).value;

	LiveSearchInterval[key] = setInterval("GetLiveSearchKeywordList('"+key+"')",50);
}

function GetLiveSearchKeywordList(key) {
	var LiveList = document.getElementById(key+"List");
	var LiveBox = document.getElementById(key+"Box");
	var keyword = document.getElementById(key).value;

	if (keyword!=LiveKeyword[key]) {
		LiveKeyword[key] = keyword;
		if (keyword) {
			LiveListFocus[key] = -1;
			clearInterval(LiveSearchInterval[key]);
			var InnerFunctionValue = new Array();
			InnerFunctionValue[0] = key;
			var XML = GetHttpRequestXML(ENV["dir"]+"/live.xml","mode=keyword&keyword="+keyword,"GetLiveSearchKeywordListInner",InnerFunctionValue);
		} else {
			LiveList.innerHTML = "";
			LiveBox.style.display = "none";
		}
	}
}

function GetLiveSearchKeywordListInner(key,XML) {
	clearInterval(LiveSearchInterval[key]);
	var LiveList = document.getElementById(key+"List");
	var LiveBox = document.getElementById(key+"Box");
	LiveList.innerHTML = "";

	if (XML) {
		var root = XML.documentElement;
		var keyword;

		if (root.childNodes.length>0) {
			LiveBox.style.display = "";
			for (var i=0, totalList=root.childNodes.length;i<totalList;i++) {
				keyword = root.childNodes.item(i).getAttribute("keyword");
				LiveList.innerHTML+= '<span class="LiveSearchList" onmouseover="GetLiveSearchOver(\''+key+'\','+i+')" onclick="GetLiveSearchOnclick(\''+key+'\')">'+keyword+'</span>';
			}
		} else {
			LiveBox.style.display = "none";
		}
	}
	LiveSearchInterval[key] = setInterval("GetLiveSearchKeywordList('"+key+"')",50);
}

function CloseLiveSearchKeyword(key) {
	var LiveList = document.getElementById(key+"List");
	var LiveBox = document.getElementById(key+"Box");
	var ListKey = LiveList.getElementsByTagName("span");
	clearInterval(LiveSearchInterval[key]);
	if (LiveListFocus[key]>=0) {
		LiveKeyword[key] = ListKey[LiveListFocus[key]].innerHTML;
		setTimeout("CloseLiveSearchKeywordInner('"+key+"')",500);
	} else {
		LiveList.innerHTML = "";
		LiveBox.style.display = "none";
	}
}

function CloseLiveSearchKeywordInner(key) {
	var LiveList = document.getElementById(key+"List");
	var LiveBox = document.getElementById(key+"Box");
	var ListKey = LiveList.getElementsByTagName("span");

	LiveList.innerHTML = "";
	LiveBox.style.display = "none";
}

function GetSearchAddress(list,zipcode,address,detail) {
	var addressVal = document.getElementById(list).value;

	if (addressVal) {
		var temp = addressVal.split("|");
		document.getElementById(zipcode).value = temp[0];
		document.getElementById(address).value = temp[1];
		document.getElementById(detail).value = "";
		document.getElementById(detail).focus();
	}
}

function GetStarPointMove(id,e) {
	clearTimeout(StarPointTimeout);
	if (!document.getElementById(id+"Value").value) {
		if (!e) e = window.event;
		if (e.layerX) {
			var starPointOn = e.layerX;
		} else {
			var starPointOn = e.offsetX;
		}

		var StartPoint = Math.ceil(starPointOn/8);
		StartPoint = StartPoint ? StartPoint : 0;
		starPointOn = StartPoint*8;

		if (starPointOn<2) starPointOn = "0";
		else if (starPointOn>75) starPointOn = "80";

		document.getElementById(id+"On").style.width = starPointOn+"px";
	}
}

function GetStarPointDefault(id) {
	clearTimeout(StarPointTimeout);
	StarPointTimeout = setTimeout("GetStarPointDefaultInner('"+id+"')",500);
}

function GetStarPointDefaultInner(id) {
	if (!document.getElementById(id+"Value").value) {
		document.getElementById(id+"On").style.width = "0px";
	}
}

function GetStarPointSetting(id,e) {
	if (!e) e = window.event;
	if (e.layerX) {
		var starPointOn = e.layerX;
	} else {
		var starPointOn = e.offsetX;
	}

	var StartPoint = Math.ceil(starPointOn/8);
	StartPoint = StartPoint ? StartPoint : 0;
	starPointOn = StartPoint*8;

	if (!document.getElementById(id+"Value").value) {
		if (starPointOn<4) starPointOn = "0";
		else if (starPointOn>75) starPointOn = "80";

		document.getElementById(id+"Value").value = StartPoint;
	} else {
		document.getElementById(id+"On").style.width = starPointOn+"px";
		document.getElementById(id+"Value").value = "";
	}
}

function GetFontSize(content) {
	var thisSize = GetCookie("fontSize") ? GetCookie("fontSize") : "12";
	document.getElementById(content).style.fontSize = thisSize+"px";
}

// Set
function SetFontSize(content,type) {
	var thisSize = parseInt(GetCookie("fontSize") ? GetCookie("fontSize") : "12");

	if (type=="up") {
		if (thisSize<20) var setSize = thisSize+1;
		else setSize = thisSize;
	} else {
		if (thisSize>9) var setSize = thisSize-1;
		else setSize = thisSize;
	}

	document.getElementById(content).style.fontSize = setSize+"px";
	SetCookie("fontSize",setSize,60*60*24*365);
}

// Mover
function MoverSelectBox(mode,getid,sendid) {
	var temp = getid.split(".");
	if (temp.length==1) {
		var object = document.getElementById(getid);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var object = document.forms[form][selectbox];
	}

	if (sendid) {
		temp = sendid.split(".");
		if (temp.length==1) {
			var result = document.getElementById(sendid);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var result = document.forms[form][selectbox];
		}
	}

	var pointerA = null;
	var pointerB = null;
	var selector = "";
	var text = new Array();
	var value = new Array();

	for (var i=0;i<object.options.length;i++) {
		text[i] = object.options[i].text;
		value[i] = object.options[i].value;
		if (object[i].selected==true) {
			pointerA = pointerA==null ? i : pointerA;
			pointerB = pointerB<i ? i :pointerB;
			selector+= selector!="" ? ","+i : i;
		}
	}

	if (selector=="") {
		alert(LANG["SelectMoverItems"]);
		return false;
	}

	var selected = selector.split(",");
	var newText = new Array();
	var newValue = new Array();

	if (mode=="upper") {
		for (var i=0;i<selected.length;i++) {
			newText[i] = object.options[selected[i]].text;
			newValue[i] = object.options[selected[i]].value;
		}

		var startPoint = selected.length;
		for (var i=0;i<object.options.length;i++) {
			if (object.options[i].selected==false) {
				newText[startPoint] = object.options[i].text;
				newValue[startPoint] = object.options[i].value;
				startPoint++;
			}
		}

		for (var i=0;i<object.options.length;i++) {
			object.options[i].text = newText[i];
			object.options[i].value = newValue[i];
			if (i<selected.length) object.options[i].selected = true;
			else object.options[i].selected = false;
		}
	} else if (mode=="up") {
		if (pointerA=="0") return false;

		for (var i=0;i<object.options.length;i++) {
			object.options[i].selected = false;
		}

		for (var i=0;i<selected.length;i++) {
			var tempText = object.options[selected[i]].text;
			var tempValue = object.options[selected[i]].value;
			object.options[selected[i]].text = object.options[parseInt(selected[i])-1].text;
			object.options[selected[i]].value = object.options[parseInt(selected[i])-1].value;
			object.options[parseInt(selected[i])-1].text = tempText;
			object.options[parseInt(selected[i])-1].value = tempValue;
			object.options[parseInt(selected[i])-1].selected = true;
		}
	} else if (mode=="down") {
		if (pointerB>=object.options.length-1) return false;

		for (var i=0;i<object.options.length;i++) {
			object.options[i].selected = false;
		}

		for (var i=0;i<selected.length;i++) {
			var tempText = object.options[selected[i]].text;
			var tempValue = object.options[selected[i]].value;
			object.options[selected[i]].text = object.options[parseInt(selected[i])+1].text;
			object.options[selected[i]].value = object.options[parseInt(selected[i])+1].value;
			object.options[parseInt(selected[i])+1].text = tempText;
			object.options[parseInt(selected[i])+1].value = tempValue;
			object.options[parseInt(selected[i])+1].selected = true;
		}
	} else if (mode=="bottom") {
		startPoint = 0;
		for (var i=0;i<object.options.length;i++) {
			if (object.options[i].selected==false) {
				newText[startPoint] = object.options[i].text;
				newValue[startPoint] = object.options[i].value;
				startPoint++;
			}
		}
		for (var i=0;i<selected.length;i++) {
			newText[startPoint] = object.options[selected[i]].text;
			newValue[startPoint] = object.options[selected[i]].value;
			startPoint++;
		}
		for (var i=0;i<object.options.length;i++) {
			object.options[i].text = newText[i];
			object.options[i].value = newValue[i];
			if (i>=object.options.length-selected.length) object.options[i].selected = true;
			else object.options[i].selected = false;
		}
	}

	if (sendid) {
		result.value = GetSelectBox("list",getid);
	} else {
		return GetSelectBox("list",getid);
	}
}

// Toggler
function ToggleFormSubmitButton(code) {
	var object = document.getElementById("FormSubmitButton")!=null ? document.getElementById("FormSubmitButton") : parent.document.getElementById("FormSubmitButton");

	if (object!=null) {
		if (code=="visible") object.style.visibility = "visible";
		else object.style.visibility = "hidden";
	}
}

function ToggleLoadingBox(code,width,height,text) {
	if (code=="show") {
		var LoaderMsg = '<div class="height5"></div>';
		LoaderMsg+= '<div class="center"><img src="'+ENV["dir"]+'/common/images/icon_loading.gif" alt="Loading" /></div>';
		LoaderMsg+= '<div class="height5"></div>';
		LoaderMsg+= '<div class="subtext center">'+text+'</div>';

		var windowWidth = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth;
		var windowHeight = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight;
		var scrolling = document.documentElement.scrollTop;

		var top = (windowHeight-height)/2+scrolling;
		var left = (windowWidth-width)/2;

		if (document.getElementById("AjaxLoader")==null || document.getElementById("AjaxLoader")==undefined) {
			document.getElementById("LayerPopupPosition").innerHTML+= '<div id="AjaxLoader" style="z-index:1000; width:'+width+'px; height:'+height+'px; left:'+left+'px; top:'+top+'px; position:absolute; border:2px solid #CCCCCC; background-color:#FFFFFF;">'+LoaderMsg+'</div>';
		} else {
			document.getElementById("AjaxLoader").style.width = width+"px";
			document.getElementById("AjaxLoader").style.height = height+"px";
			document.getElementById("AjaxLoader").style.left = left+"px";
			document.getElementById("AjaxLoader").style.top = top+"px";
			document.getElementById("AjaxLoader").innerHTML = LoaderMsg;
		}

		document.getElementById("LayerPopupPosition").style.display = "";
	} else {
		if (document.getElementById("AjaxLoader")!=null) {
			document.getElementById("AjaxLoader").innerHTML = "";
			document.getElementById("LayerPopupPosition").style.display = "none";
		}
	}
}

// Checker
function CheckWritePageAtPost() {
	var object = document.getElementsByName("wysiwygObject[]");
	IsWrite = false;

	for (var i=0, total=object.length;i<total;i++) {
		var editor = object[i].value;
		var inContent = EditorInner = document.getElementById(editor).contentWindow.document.body;
		if (inContent.innerHTML!="<br />" && inContent.innerHTML!="") {
			IsWrite = true;
			break;
		}
	}

	return IsWrite;
}

function CheckMsgInfor(newMsg,totalMsg) {
	var object = document.getElementsByName("LoginBoxMsgChecker[]");
	for (var i=0, total=object.length;i<total;i++) {
		var boxID = object[i].getAttribute("boxid");
		if (document.getElementById(boxID)) {
			var NewMsgText = object[i].getAttribute("is_newmsg");
			var DefaultMsgText = object[i].getAttribute("is_defaultmsg");

			replaceNewMsg = new RegExp("\\[newmsg]","g");
			replaceTotalMsg = new RegExp("\\[totalmsg]","g");

			NewMsgText = NewMsgText.replace(replaceNewMsg,newMsg);
			NewMsgText = NewMsgText.replace(replaceTotalMsg,totalMsg);

			DefaultMsgText = DefaultMsgText.replace(replaceNewMsg,newMsg);
			DefaultMsgText = DefaultMsgText.replace(replaceTotalMsg,totalMsg);

			document.getElementById(boxID).innerHTML = newMsg>0 ? NewMsgText : DefaultMsgText;
		}
	}
}

function CheckLogin(form) {
	var object = document.forms[form];

	if (!object.user_id.value) {
		alert(LANG["InsertUserId"]);
		object.user_id.focus();
		return false;
	}

	if (!object.password.value) {
		alert(LANG["InsertPassword"]);
		object.password.focus();
		return false;
	}

	return true;
}

// Inserter
function InsertSelectBox(id,text,value,is_del) {
	var temp = id.split(".");
	if (temp.length==1) {
		var object = document.getElementById(id);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var object = document.forms[form][selectbox];
	}

	var textLength = text.length;

	if (is_del=="1") {
		// Delete Options
		if (object.options.length>0) {
			for (var i=object.options.length-1;i>=0;i--) {
				object.options[i]=null;
			}
		}

		if (text.length>0) {
			// Insert Options
			for (var i=0;i<textLength;i++) {
				object.options[i] = new Option(text[i],value[i]);
			}
		}
	} else {
		if (text.length>0) {
			// Insert Options
			for (var i=0;i<textLength;i++) {
				insertNum = object.options.length;
				object.options[insertNum] = new Option(text[i],value[i]);
			}
		}
	}
}

function InsertSelectBoxDivideNum(numid,divid,max,isZero) {
	var temp = numid.split(".");
	if (temp.length==1) {
		var objectNum = document.getElementById(numid);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var objectNum = document.forms[form][selectbox];
	}

	var temp = divid.split(".");
	if (temp.length==1) {
		var objectDiv = document.getElementById(divid);
	} else {
		var form = temp[0];
		var selectbox = temp[1];
		var objectDiv = document.forms[form][selectbox];
	}

	if (isZero) {
		var startNum = 0;
	} else {
		var startNum = 1;
	}

	var optionNum = 0;
	var NumValue = parseInt(objectNum.value);

	var endNum = NumValue>max ? max : NumValue;

	// Delete Options
	if (objectDiv.options.length>0) {
		for (var i=objectDiv.options.length-1;i>=0;i--) {
			objectDiv.options[i]=null;
		}
	}

	for (var i=startNum;i<=endNum;i++) {
		if (NumValue%i==0) {
			objectDiv.options[optionNum] = new Option(i,i);
			optionNum++;
		}
	}
}

// Search
function SearchAddress(key,result) {
	var keyword = document.getElementById(key).value;

	if (!keyword) {
		alert(LANG["InsertAddressKeyword"]);
		document.getElementById(key).focus();
		return false;
	}

	ToggleLoadingBox("show",200,55,LANG["LoadingSearchData"]);

	var InnerFunctionValue = new Array();
	InnerFunctionValue[0] = key;
	InnerFunctionValue[1] = result;
	var checkXML = GetHttpRequestXML(ENV["dir"]+"/zipcode.xml","mode=search&keyword="+keyword,"SearchAddressInner",InnerFunctionValue);
}

function SearchAddressInner(key,result,XML) {
	if (XML) {
		var root = XML.documentElement;
		var value = new Array();
		var text = new Array();

		if (root.childNodes.length>0) {
			value[0] = "";
			text[0] = LANG["SelectItems"];
			for (var i=0, totalZipcode=root.childNodes.length;i<totalZipcode;i++) {
				value[i+1] = root.childNodes.item(i).getAttribute("zipcode")+"|"+root.childNodes.item(i).getAttribute("address");
				text[i+1] = root.childNodes.item(i).getAttribute("text");
			}
			InsertSelectBox(result,text,value,"1");
			document.getElementById(result).style.display = "";
		} else {
			alert(LANG["NotFoundSearchData"]);
			document.getElementById(key).value = "";
			document.getElementById(key).focus();
			InsertSelectBox(result,text,value,"1");
			document.getElementById(result).style.display = "none";
		}
	}

	ToggleLoadingBox("hidden","","","");
}

// Function
function RollPrint(divID,RollFirst) {
	document.write(RollMsgs[RollFirst]);
	RollScroll(divID,RollFirst);
}

function RollScroll(divID,RollFirst){
	txtLayer = document.getElementById(divID);
	txtHeight = txtLayer.style.height.replace("px","");
	RollStep = eval(RollFirst);

	txtLayerTop = txtLayer.style.top;
	txtLayerTop = txtLayerTop.substring(0,txtLayerTop.length - 2);

	if (txtLayerTop>0 && txtLayerTop<=5) {
		txtLayer.style.top = 0 + "px";
		RollTimeout[divID] = setTimeout("RollScroll('"+divID+"',RollStep)",RollDelay*1000);
		return;
	} else {
		if (txtLayerTop >= txtHeight*-1) {
			txtLayer.style.top = txtLayerTop - 5 + "px";
			if (RollSpeed>0) {
				if (ENV["browser"]=="FF") {
					RollTimeout[divID] = setTimeout("RollScroll('"+divID+"',RollStep)",RollSpeed*10);
				} else {
					RollTimeout[divID] = setTimeout("RollScroll('"+divID+"',RollStep)",RollSpeed);
				}
			} else {
				RollScroll(divID,RollStep);
			}
			return;
		} else {
			txtLayer.style.top = txtHeight + "px";
			if (RollStep>=RollMsgs.length-1) {
				RollStep=0;
				txtLayer.innerHTML=RollMsgs[RollStep];
				RollScroll(""+divID+"",RollStep);
			} else {
				RollStep++;
				txtLayer.innerHTML=RollMsgs[RollStep];
				RollScroll(""+divID+"",RollStep);
			}
		}
	}
}

function RollStop(divID) {
	if (RollTimeout[divID]) {
		clearTimeout(RollTimeout[divID]);
	}

	txtLayer = document.getElementById(divID);
	txtLayer.style.top = 0 + "px";
}


function RollResume(divID) {
	RollTimeout[divID] = setTimeout("RollScroll('"+divID+"',RollStep)",RollDelay*1000);
}

function CalendarView(InnerInput,e) {
	var tempInnerInput = InnerInput.split(",");

	if (tempInnerInput.length==1) {
		var temp = InnerInput.split(".");
		if (temp.length==1) {
			var object = document.getElementById(InnerInput);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var object = document.forms[form][selectbox];
		}

		if (object.value) {
			var date = object.value.split("-");
			var oYear = date[0];
			var oMonth = parseInt(date[1]).toString();
			var oDay = parseInt(date[2]).toString();
		} else {
			var oYear = oMonth = oDay = "";
		}
	} else {
		var temp = tempInnerInput[0].split(".");
		if (temp.length==1) {
			var objectYear = document.getElementById(tempInnerInput[0]);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var objectYear = document.forms[form][selectbox];
		}

		var temp = tempInnerInput[1].split(".");
		if (temp.length==1) {
			var objectMonth = document.getElementById(tempInnerInput[1]);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var objectMonth = document.forms[form][selectbox];
		}

		var temp = tempInnerInput[2].split(".");
		if (temp.length==1) {
			var objectDay = document.getElementById(tempInnerInput[2]);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var objectDay = document.forms[form][selectbox];
		}

		var oYear = objectYear.value;
		var oMonth = objectMonth.value;
		var oDay = objectDay.value;
	}

	var thisDate = new Date();
	var thisYear = oYear=="" ? thisDate.getFullYear() : oYear;
	var thisMonth = oMonth=="" ? thisDate.getMonth()+1 : oMonth;
	var thisDay = oDay=="" ? thisDate.getDate() : oDay;

	if (!e) e = windown.event;
	var LayerLeft = e.clientX+document.documentElement.scrollLeft;
	var LayerTop = e.clientY+document.documentElement.scrollTop;

	document.getElementById("CalendarPosition").style.position = "absolute";
	document.getElementById("CalendarPosition").style.top = LayerTop+"px";
	document.getElementById("CalendarPosition").style.left = LayerLeft+"px";
	document.getElementById("CalendarPosition").style.display = "";

	CalendarPrintDays(thisYear,thisMonth,InnerInput);
}

function CalendarHidden() {
	clearTimeout(CalendarHiddenTimeout);
	CalendarHiddenTimeout = setTimeout("CalendarHiddenInner()",1000);
}

function CalendarHiddenInner() {
	clearTimeout(CalendarHiddenTimeout);
	document.getElementById("CalendarPosition").style.display = "none";
	document.getElementById("CalendarPosition").innerHTML = "";
}

function CalendarSetValue(InnerInput,year,month,day) {
	var tempInnerInput = InnerInput.split(",");
	if (tempInnerInput.length==1) {
		var temp = InnerInput.split(".");
		if (temp.length==1) {
			var object = document.getElementById(InnerInput);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var object = document.forms[form][selectbox];
		}

		if (month<10) month = "0"+month;
		if (day<10) day = "0"+day;
		object.value = year+"-"+month+"-"+day;
		object.focus();
	} else {
		var temp = tempInnerInput[0].split(".");
		if (temp.length==1) {
			var objectYear = document.getElementById(tempInnerInput[0]);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var objectYear = document.forms[form][selectbox];
		}

		var temp = tempInnerInput[1].split(".");
		if (temp.length==1) {
			var objectMonth = document.getElementById(tempInnerInput[1]);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var objectMonth = document.forms[form][selectbox];
		}

		var temp = tempInnerInput[2].split(".");
		if (temp.length==1) {
			var objectDay = document.getElementById(tempInnerInput[2]);
		} else {
			var form = temp[0];
			var selectbox = temp[1];
			var objectDay = document.forms[form][selectbox];
		}

		var tag = tempInnerInput[3] ? tempInnerInput[3] : "";

		objectYear.value = year;
		objectMonth.value = month;

		GetDayOfMonth(tempInnerInput[0],tempInnerInput[1],tempInnerInput[2],tag);
		objectDay.value = day;
	}
	CalendarHiddenInner();
}

function CalendarPrintDays(year,month,InnerInput) {
	var thisDate = new Date();
	var thisYear = thisDate.getFullYear();
	var thisMonth = thisDate.getMonth()+1;
	var thisDay = thisDate.getDate();

	var setValue = CalendarGetDates(year,month).split(",");
	var startPoint = parseInt(setValue[0]);
	var endPoint = parseInt(setValue[1]);

	var prevYear = month==1 ? year-1 : year;
	var prevMonth = month==1 ? 12 : month-1;
	var prevValue = CalendarGetDates(prevYear,prevMonth).split(",");
	var prevPoint = parseInt(prevValue[1]);

	var sHTML = "";
	sHTML = '<div style="border:1px solid #CCCCCC; background:#FFFFFF; width:140px; padding:5px;" onmouseover="clearTimeout(CalendarHiddenTimeout);" onmouseout="CalendarHidden()">';
	sHTML+= '<table cellpadding="0" cellspacing="0" class="layoutfixed">';
	sHTML+= '<col width="20" /><col width="20" /><col width="20" /><col width="20" /><col width="20" /><col width="20" /><col width="20" />';
	sHTML+= '<tr style="height:20px;">';
	sHTML+= '<td class="right"><img src="'+ENV["dir"]+'/common/images/prev_calendar.gif" alt="prev" class="pointer" onmousedown="CalendarMovePrev('+year+','+month+',\''+InnerInput+'\',0)" onmouseup="CalendarMoveStop()" onmouseout="CalendarMoveStop()" /></td>';
	sHTML+= '<td colspan="5" class="verdana9 bold center pointer" onclick="CalendarPrintDays('+thisYear+','+thisMonth+',\''+InnerInput+'\')">'+year+'.'+month+'</td>';
	sHTML+= '<td><img src="'+ENV["dir"]+'/common/images/next_calendar.gif" alt="prev" class="pointer" onmousedown="CalendarMoveNext('+year+','+month+',\''+InnerInput+'\',0)" onmouseup="CalendarMoveStop()" onmouseout="CalendarMoveStop()" /></td>';
	sHTML+= '</tr>';
	sHTML+= '<tr style="height:20px;">';
	for (var i=0;i<7;i++) {
		sHTML+= '<td class="dotum f11 center"';
		if (i==0) {
			sHTML+= ' style="color:#B70000;"';
		} else if (i==6) {
			sHTML+= ' style="color:#004EA6;"';
		}
		sHTML+= '>'+LANG["CalendarDayList"][i]+'</td>';
	}
	sHTML+= '</tr>';

	var isStart = false;
	for (var i=0, date=1;i<42;i++) {
		if (i%7==0) sHTML+= '<tr style="height:15px;">';
		if (isStart==true || i==startPoint) {
			isStart = true;
			if (date<=endPoint) {
				sHTML+= '<td class="verdana9 center pointer" style="';
				if (i%7==0) {
					sHTML+= 'color:#B70000;';
				} else if (i%7==6) {
					sHTML+= 'color:#004EA6;';
				}
				if (thisYear==year && thisMonth==month && thisDay==date) {
					sHTML+= 'background:#E5E5E5; font-weight:bold;';
				}
				sHTML+= '" onclick="CalendarSetValue(\''+InnerInput+'\','+year+','+month+','+date+')">'+date+'</td>';
			} else {
				sHTML+= '<td class="verdana9 silver center">'+parseInt(date-endPoint)+'</td>';
			}
			date++;
		} else {
			sHTML+= '<td class="verdana9 silver center">'+parseInt(prevPoint-startPoint+i+1)+'</td>';
		}
		if (i%7==6) sHTML+= '</tr>';
	}

	sHTML+= '</table>';
	sHTML+= '</div>';

	document.getElementById("CalendarPosition").innerHTML = sHTML;
}

function CalendarMovePrev(year,month,InnerInput,mode) {
	clearTimeout(CalendarMoveTimeout);
	var moveYear = month==1 ? year-1 : year;
	var moveMonth = month==1 ? 12 : month-1;
	CalendarPrintDays(moveYear,moveMonth,InnerInput);
	if (mode==1) {
		CalendarMoveTimeout = setTimeout("CalendarMovePrev("+moveYear+","+moveMonth+",'"+InnerInput+"',1)",100);
	} else {
		CalendarMoveTimeout = setTimeout("CalendarMovePrev("+moveYear+","+moveMonth+",'"+InnerInput+"',1)",1000);
	}
}

function CalendarMoveNext(year,month,InnerInput,mode) {
	clearTimeout(CalendarMoveTimeout);
	var moveYear = month==12 ? year+1 : year;
	var moveMonth = month==12 ? 1 : month+1;
	CalendarPrintDays(moveYear,moveMonth,InnerInput);
	if (mode==1) {
		CalendarMoveTimeout = setTimeout("CalendarMoveNext("+moveYear+","+moveMonth+",'"+InnerInput+"',1)",100);
	} else {
		CalendarMoveTimeout = setTimeout("CalendarMoveNext("+moveYear+","+moveMonth+",'"+InnerInput+"',1)",1000);
	}
}

function CalendarMoveStop() {
	clearTimeout(CalendarMoveTimeout);
	clearTimeout(CalendarMoveTimeout);
	CalendarMoveTimeout = null;
}

function CalendarGetDates(year,month) {
	var days = new Array(0,31,0,31,30,31,30,31,31,30,31,30,31);

	if (((year%4==0) && (year%100!=0)) || (year%400==0)) {
		days[2] = 29;
	} else {
		days[2] = 28;
	}

	var setDate = new Date();
	setDate.setFullYear(year);
	setDate.setMonth(month-1);
	setDate.setDate(1);

	var startDay = setDate.getDay();
	var endDay = days[month];
	var returnValue = startDay+","+endDay;


	return returnValue;
}

function HideTip() {
	var tipObject = document.getElementById("toolTipWindow");
	enabletip = false;
	tipObject.style.visibility = "hidden";
}

function ietruebody() {
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function ShowTip(messageTitle,messageContent,imgPath,messageSize) {
	var tipContent = "";

	if (imgPath) {
		var tempImg = new Image();
		tempImg.src = imgPath;
		if (tempImg.width>tempImg.height) {
			width = 60;
			height = parseInt((tempImg.height/tempImg.width)*60) < 20 ? 20 : parseInt((tempImg.height/tempImg.width)*60);
		} else {
			height = 60;
			width = parseInt((tempImg.width/tempImg.height)*60) < 20 ? 20 : parseInt((tempImg.width/tempImg.height)*60);
		}
		imgStyle = "width='" + width + "' height='" + height + "'";
		tipContent = tipContent + "<img src='" + imgPath + "' " + imgStyle + " align='right' style='padding:2px; margin: 2px; border: 2px solid #DDDDDD;'>";
	}
	if (messageContent) {
		tipContent = tipContent + "<strong>" + LANG["title"] + "</strong> : " + messageTitle + "<br>";
		document.getElementById("toolTipWindow").style.width = "350px";
	} else {
		tipContent = messageTitle;
		document.getElementById("toolTipWindow").style.width = "";
	}

	if (messageContent) {
		tipContent = tipContent + "<strong>" + LANG["title"] + LANG["preview"] + "</strong> :<br>" + messageContent + "<br>";
		document.getElementById("toolTipWindow").style.lineHeight = "160%";
	}

	document.getElementById("toolTipWindow").innerHTML = tipContent;
	enabletip = true;
	return false;
}

function ShowImage(path) {
	var object = document.getElementById("LayerPopupPosition");

	path = path;

	var windowWidth = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth;
	var windowHeight = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight;

	var screenWidth = document.body.clientWidth;
	var screenHeight = document.body.clientHeight>windowHeight ? document.body.clientHeight : windowHeight;

	sHTML = '<div id="ShowImageBack" style="position:absolute; top:0px; left:0px; width:'+screenWidth+'px; height:'+screenHeight+'px; z-index:9998; background:#000000;" class="opacity70" onclick="HideImage()"></div>';
	sHTML+= '<div id="ShowImageBox" style="position:absolute; top:0px; left:0px; z-index:9999;">';
	sHTML+= '<img name="ShowImage" src="'+path+'" style="border:5px solid #DDDDDD; display:none;" onmouseover="ShowImageResizeButton(1)" onmouseout="ShowImageResizeButton(0)" onload="ShowImageCenter()" />';
	sHTML+= '</div>';

	sHTML+= '<div id="ShowImageResizeButtonFull" style="position:absolute; top:0px; left:0px; z-index:10000; display:none;" onmouseover="this.style.display=\'\';"><img src="'+ENV["dir"]+'/common/images/btn_resize_origin.gif" class="pointer" style="margin:10px 0px 0px 10px;" onclick="ShowImageFull()" /></div>';
	sHTML+= '<div id="ShowImageResizeButtonDefault" style="position:absolute; top:0px; left:0px; z-index:10000; display:none;" onmouseover="this.style.display=\'\';"><img src="'+ENV["dir"]+'/common/images/btn_resize_small.gif" class="pointer" style="margin:10px 0px 0px 10px;" onclick="ShowImageCenter()" /></div>';

	sHTML+= '<div id="ShowImageCloseButton" style="position:absolute; width:23px; height:23px; top:0px; left:0px; background:url(\''+ENV["dir"]+'/common/images/btn_show_image_close.gif\'); z-index:10000; display:none;" class="pointer" onclick="HideImage()"></div>';

	object.innerHTML = sHTML;
	object.style.display = "";
}

function ShowImageResizeButton(code) {
	if (code==1) {
		if (enableimage!=false && enableimage[0]=="default") {
			if (enableimage[1]==true) {
				document.getElementById("ShowImageResizeButtonFull").style.display = "";
				document.getElementById("ShowImageResizeButtonDefault").style.display = "none";
			} else {
				document.getElementById("ShowImageResizeButtonFull").style.display = "none";
				document.getElementById("ShowImageResizeButtonDefault").style.display = "none";
			}
		} else {
			if (enableimage!=false && enableimage[0]=="full") {
				document.getElementById("ShowImageResizeButtonFull").style.display = "none";
				document.getElementById("ShowImageResizeButtonDefault").style.display = "";
			} else {
				document.getElementById("ShowImageResizeButtonFull").style.display = "none";
				document.getElementById("ShowImageResizeButtonDefault").style.display = "none";
			}
		}
	} else {
		document.getElementById("ShowImageResizeButtonFull").style.display = "none";
		document.getElementById("ShowImageResizeButtonDefault").style.display = "none";
	}
}

function ShowImageFull() {
	var object = document.images["ShowImage"];
	var image = new Image();
	image.src = object.src;

	enableimage = new Array();
	enableimage[0] = "full";

	var path = object.src;
	var width = image.width;
	var height = image.height;

	object.width = width;
	object.height = height;

	var scrolling = document.documentElement.scrollTop;
	var popupTop = scrolling;
	var popupLeft = 0;

	document.getElementById("ShowImageBox").style.top = popupTop+"px";
	document.getElementById("ShowImageBox").style.left = popupLeft+"px";

	document.getElementById("ShowImageResizeButtonFull").style.top = popupTop+"px";
	document.getElementById("ShowImageResizeButtonFull").style.left = popupLeft+"px";

	document.getElementById("ShowImageResizeButtonDefault").style.top = popupTop+"px";
	document.getElementById("ShowImageResizeButtonDefault").style.left = popupLeft+"px";

	object.style.width = width+"px";
	object.style.height = height+"px";

	document.getElementById("ShowImageCloseButton").style.top = popupTop+"px";
	document.getElementById("ShowImageCloseButton").style.left = (popupLeft+width+10-23)+"px";
	document.getElementById("ShowImageCloseButton").style.display = "";

	var screenWidth = document.body.clientWidth;
	var screenHeight = document.body.clientHeight>height+10 ? document.body.clientHeight : height+10;

	document.getElementById("ShowImageBack").style.width = screenWidth+"px";
	document.getElementById("ShowImageBack").style.height = screenHeight+"px";

	document.getElementById("ShowImageResizeButtonFull").style.display = "none";
	document.getElementById("ShowImageResizeButtonDefault").style.display = "";
}

function ShowImageCenter() {
	var object = document.images["ShowImage"];
	object.style.display = "";

	if (object.width>0) {
		var image = new Image();
		image.src = object.src;

		var path = object.src;
		var width = image.width;
		var height = image.height;

		var windowWidth = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth;
		var windowHeight = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight;

		var screenWidth = document.body.clientWidth;
		var screenHeight = document.body.clientHeight>windowHeight ? document.body.clientHeight : windowHeight;

		var scrolling = document.documentElement.scrollTop;

		enableimage = new Array();
		enableimage[0] = "default";
		enableimage[1] = false;

		if (width*windowHeight>height*windowWidth) {
			if (width>windowWidth-100) {
				newWidth = windowWidth-100;
				newHeight = newWidth*height/width;
				isResize = enableimage[1] = true;
				width = newWidth;
				height = newHeight;
			}
		} else {
			if (height>windowHeight-100) {
				newHeight = windowHeight-100;
				newWidth = newHeight*width/height;
				isResize = enableimage[1] = true;
				width = newWidth;
				height = newHeight;
			}
		}

		var popupTop = (windowHeight-height)/2+scrolling;
		var popupLeft = (windowWidth-width)/2;

		document.getElementById("ShowImageBox").style.top = popupTop+"px";
		document.getElementById("ShowImageBox").style.left = popupLeft+"px";

		document.getElementById("ShowImageResizeButtonFull").style.top = popupTop+"px";
		document.getElementById("ShowImageResizeButtonFull").style.left = popupLeft+"px";

		document.getElementById("ShowImageCloseButton").style.top = popupTop+"px";
		document.getElementById("ShowImageCloseButton").style.left = (popupLeft+width+10-23)+"px";
		document.getElementById("ShowImageCloseButton").style.display = "";

		document.getElementById("ShowImageResizeButtonDefault").style.top = popupTop+"px";
		document.getElementById("ShowImageResizeButtonDefault").style.left = popupLeft+"px";

		object.style.width = width+"px";
		object.style.height = height+"px";

		var screenWidth = document.body.clientWidth;
		var screenHeight = document.body.clientHeight>windowHeight ? document.body.clientHeight : windowHeight;

		document.getElementById("ShowImageBack").style.width = screenWidth+"px";
		document.getElementById("ShowImageBack").style.height = screenHeight+"px";
	} else {
		enableimage = false;
		object.innerHTML = "";
		object.style.display = "none";
	}

	document.getElementById("ShowImageResizeButtonFull").style.display = "none";
	document.getElementById("ShowImageResizeButtonDefault").style.display = "none";
}

function HideImage() {
	var object = document.getElementById("LayerPopupPosition");

	object.innerHTML = "";
	object.style.display = "none";

	enableimage = false;
}

function ResizeContentImages() {
	setTimeout("ResizeContentImagesInner()",1000);
}

function ResizeContentImagesInner() {
	if (document.images["WidthChecker"] && document.getElementsByName("ResizeImages[]") && document.getElementsByName("ResizeImages[]").length>0) {
		var contentWidth = document.images["WidthChecker"].width;
		for (var i=0, totalImage=document.getElementsByName("ResizeImages[]").length;i<totalImage;i++) {
			if (contentWidth<document.getElementsByName("ResizeImages[]")[i].width) {
				document.getElementsByName("ResizeImages[]")[i].width = contentWidth-10;
			}
		}
	}
}

function WhoIs(mno) {
	OpenPopupName(ENV["dir"]+"/WhoIs.page?mno="+mno,"WhoIs","400","250");
}

// Default Values
function MsgBox() {
	if (ENV["isMember"]==true) OpenPopupName(ENV["dir"]+"/Messenger.page","Messenger",750,500);
	else alert(LANG["PermissionDenied"]);
}

function SendMsg(mno) {
	if (ENV["isMember"]==true) OpenPopupName(ENV["dir"]+"/Talk.page?tomno="+mno,"Msg"+mno,400,550);
	else alert(LANG["PermissionDenied"]);
}

function OpenNewMsg(msglist,totalMsg) {
	var msgList = msglist.split(",");

	if (msgList.length>0) {
		for (var i=0, totalList=msgList.length;i<totalList;i++) {
			SendMsg(msgList[i]);
		}
	}

	CheckMsgInfor(msgList.length,totalMsg);
}

function TopOpenerRedirect(url) {
	if (opener) {
		if (opener.opener) {
			opener.TopOpenerRedirect(url);
		} else {
			opener.location.href = url;
			opener.focus();
		}
	} else {
		window.open(url);
	}
}

function TabBar(name,num) {
	for (var i=1;i<100;i++) {
		if (!document.getElementById(name+"TabBar"+i)) {
			var LastTab = i;
			break;
		}
	}

	for (var i=1;i<LastTab;i++) {
		if (i==LastTab-1 || i==num-1) {
			document.getElementById(name+"TabBar"+i).className = "TabBarOffEnd";
		} else {
			document.getElementById(name+"TabBar"+i).className = "TabBarOff";
		}
	}

	document.getElementById(name+"TabBar"+num).className = "TabBarOn";
}

function DeletePostLocation() {
	var thisUrl = location.href.split("?");
	var moveUrl = thisUrl[0];

	thisUrl = thisUrl[1].split("&");

	for (var i=0, total=thisUrl.length;i<total;i++) {
		if (thisUrl[i].indexOf("action=")!=-1) {
			moveUrl+= i==0 ? "?" : "&";
			moveUrl+= "action=list";
		} else if (thisUrl[i].indexOf("article=")!=-1) {
		} else {
			moveUrl+= i==0 ? "?" : "&";
			moveUrl+= thisUrl[i];
		}
	}
	location.href = moveUrl;
}

// Event Capture
function EventLoadFunction(e) {
	var object = document.getElementsByName("wysiwygObject[]");
	IsWrite = false;

	for (var i=0, total=object.length;i<total;i++) {
		var editor = object[i].value;
		var inContent = EditorInner = document.getElementById(editor).contentWindow.document.body;
		if (inContent.innerHTML!="<br />" && inContent.innerHTML!="") {
			IsWrite = true;
			break;
		}
	}
}

function EventMouseoverFunction(e) {
	if (enabletip==true) {
		var tipobj = document.getElementById("toolTipWindow");

		var curX = ENV["browser"]!="IE" ? e.pageX : event.clientX+ietruebody().scrollLeft;
		var curY = ENV["browser"]!="IE" ? e.pageY : event.clientY+ietruebody().scrollTop;
		var rightedge = (ENV["browser"]=="IE" && ENV["browser"]!="OP") ? ietruebody().clientWidth-event.clientX+20 : window.innerWidth-e.clientX;
		var bottomedge = (ENV["browser"]=="IE" && ENV["browser"]!="OP") ? ietruebody().clientHeight-event.clientY-20 : window.innerHeight-e.clientY-40;

		var leftedge = 20;

		if (rightedge<tipobj.offsetWidth) {
			tipobj.style.left = ENV["browser"]=="IE" ? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : window.pageXOffset+e.clientX-tipobj.offsetWidth+"px"
		} else if (curX<leftedge) {
			tipobj.style.left = "5px"
		} else {
			tipobj.style.left = curX+"px";
		}

		if(ENV["browser"]=="SF") {
			tipobj.style.top = curY+20+"px";
		} else {
			if (bottomedge<tipobj.offsetHeight) {
				tipobj.style.top = ENV["browser"]=="IE" ? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-20+"px" : window.pageYOffset+e.clientY-tipobj.offsetHeight-20+"px";
			} else {
				tipobj.style.top = curY+20+"px";
			}
		}
		tipobj.style.visibility = "visible";
	}
}

function EventResizeFunction(e) {
	if (enableimage!=false) {
		if (enableimage[0]=="default") {
			ShowImageCenter();
		} else {
			ShowImageFull();
		}
	}

	if (document.getElementById("AjaxLoader")!=null && document.getElementById("AjaxLoader")!=undefined) {
		var windowWidth = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth;
		var windowHeight = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight;
		var scrolling = document.documentElement.scrollTop;

		var top = (windowHeight-parseInt(document.getElementById("AjaxLoader").style.height))/2+scrolling;
		var left = (windowWidth-parseInt(document.getElementById("AjaxLoader").style.width))/2;

		document.getElementById("AjaxLoader").style.top = top+"px";
		document.getElementById("AjaxLoader").style.left = left+"px";
	}
}

function EventScrollFunction(e) {
	if (enableimage!=false) {
		if (enableimage[0]=="default") {
			ShowImageCenter();
		}
	}

	if (document.getElementById("AjaxLoader")!=null && document.getElementById("AjaxLoader")!=undefined) {
		var windowWidth = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth;
		var windowHeight = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight;
		var scrolling = document.documentElement.scrollTop;

		var top = (windowHeight-parseInt(document.getElementById("AjaxLoader").style.height))/2+scrolling;
		var left = (windowWidth-parseInt(document.getElementById("AjaxLoader").style.width))/2;

		document.getElementById("AjaxLoader").style.top = top+"px";
		document.getElementById("AjaxLoader").style.left = left+"px";
	}
}

function EventUnloadFunction(e) {
	var object = document.getElementsByName("wysiwygObject[]");
	IsWrite = false;

	for (var i=0, total=object.length;i<total;i++) {
		var editor = object[i].value;
		EditorInner = document.getElementById(editor).contentWindow.document.body;

		if (EditorInner.innerHTML!="" && EditorInner.innerHTML!="<br />") {
			IsWrite = true;
			break;
		}
	}

	if (IsWritePageSubmit==false && IsWrite==true) {
		return LANG["CancelPostMovePage"];
	}
}


// Onloader
document.write('<div id="LayerPopupPosition" style="display:none;"></div>');
// Calendar
document.write('<div id="CalendarPosition" style="display:none; z-index:10;"></div>');
// Tip
document.write('<div id="toolTipWindow" style="width:350px; border:#DDDDDD 2px solid; padding:5px; z-index:100; visibility:hidden; position:absolute; background-color:#FFFFFF; color:#4F4F4F; text-align:left;"></div>');