var DEFAULT_WEB_URL = "http://blog.dukyoung.net"
var isCmtOpen = true;
var isTBOpen = true;
var isMoreContentOpen = true;
var defaultImgSize = 110;

function GetComment(form, cmt, index) {
	if (isCmtOpen == true) {
		try {
			var objXml;
			var objNodeList;
			var objNode;
			var intCount;
			var intIndex;
			var intBbsIndex;
			var strUserName;
			var strAccount;
			var strComment;
			var dtRegDate;
			var intPermission;
			var intLogin;
			var strTemp = "";

			objXml = GetCommentWithXML(index);
			intLogin = parseInt(objXml.documentElement.selectSingleNode("/userBlog/login").text);
			objNodeList = objXml.documentElement.childNodes;

			intCount = objNodeList.length;

			for (var i = 0; i < intCount - 4; i++) {
				objNode = objNodeList.item(i).childNodes;
				intIndex = objNode.item(0).text;
				intBbsIndex = objNode.item(1).text;
				strUserName = objNode.item(2).text;
				strAccount = objNode.item(3).text;
				strUrl = objNode.item(4).text;
				strComment = objNode.item(5).text;
				dtRegDate = objNode.item(6).text;
				intPermission = objNode.item(7).text;
				
				strUserName = convertHtmlToText(strUserName);
				strUrl = convertHtmlToText(strUrl);
				strComment = convertHtmlToText(strComment);
				
				if (Trim (strUrl).length > 2){
						strUserName = "<A HREF='" + strUrl + "' TARGET=_blank>" + strUserName + "</A>"
				}
				strTemp += "<A NAME=" + intIndex + "></A>"
				strTemp += "<HR>"
				strTemp += "<DIV CLASS=CMC>Commented by " + strUserName + " at " + dtRegDate
				if (intPermission == "1") {
					strTemp += "&nbsp;<A HREF=\"JAVASCRIPT:DelComment(document.frmComment" + intBbsIndex + ", " + intIndex + ", " + intBbsIndex + ", 1);\">x</A>";
				} else if (intPermission == "2") {
					strTemp += "&nbsp;<A HREF=\"JAVASCRIPT:DelComment(document.frmComment" + intBbsIndex + ", " + intIndex + ", " + intBbsIndex + ", 2);\">x</A>";
				}
				strTemp += "</DIV>"
				strTemp += "<DIV CLASS=CMC>" + strComment + "</DIV>"
			}
			strTemp += "<HR>"
			if (intLogin == "0") {
				strTemp += "<DIV CLASS=CMI>Name <INPUT TYPE='TEXT' NAME='txtName" + index + "' CLASS='TXF TXF_N' MAXLENGTH='20'>"
				strTemp += "	Url <INPUT TYPE='TEXT' NAME='txtUrl" + index + "' CLASS='TXF TXF_U' MAXLENGTH='90'>"
				strTemp += "	Password <INPUT TYPE='PASSWORD' NAME='txtPassword" + index + "' CLASS='TXF TXF_P' MAXLENGTH='12'></DIV>"
			}
			strTemp += "<DIV CLASS=CMI><TEXTAREA ROWS=2 NAME='txtComment" + index + "' CLASS='TXA'></TEXTAREA>"
			strTemp += "	<INPUT TYPE='SUBMIT' VALUE='Comment' CLASS='BTN'></DIV>"
			strTemp += "<DIV CLASS=CMI><INPUT TYPE='CHECKBOX' NAME='chkHidden" + index + "'> ºñ°ø°³ µ¡±Û</DIV>"
		}
		catch(e) {
			return;
		}

		eval("document.all." + cmt + ".innerHTML = strTemp");
		eval("document.all." + cmt + ".style.display=''");
		isCmtOpen = false;
		isTBOpen = true;
	} else {
		eval("document.all." + cmt + ".style.display='none'");
		isCmtOpen = true;
		isTBOpen = true;
	}
}
	
function GetCommentWithXML(index) {
	try {
		var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		var strURL, strSend;

		strURL	= "/lib/getComment.asp";
		strSend	= "index=" + index;

		xmlhttp.Open("POST", strURL, false);
		xmlhttp.setRequestHeader("Content-type:", "application/x-www-form-urlencoded");
		xmlhttp.send(strSend);
		
		//location.href=strURL + "?" + strSend;
		//return;

		if ( xmlhttp.status == 200 ) {
			var docXML = xmlhttp.responseXML;
			var intState = parseInt(docXML.documentElement.selectSingleNode("/userBlog/error").text);
			if (intState == 0) {
				return docXML;
			}
			else {
				alert("XML À» °¡Á®¿À´Â µµÁß ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
				return;
			}
		}
		else {
			alert("XML Åë½Å¿¡ ÀÌ»óÀÌ ÀÖ½À´Ï´Ù.");
			return;
		}
	}
	catch (e) {
		alert("¾Ë ¼ö ¾ø´Â ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
		return;
	}
}

function GetTrackback(form, cmt, index) {
	var strTemp = "";
	strTemp += "<HR>"
	strTemp += "<DIV CLASS=CMC>Æ®·¢¹é ÁÖ¼Ò : <A HREF=\"JAVASCRIPT:copyString('" + DEFAULT_WEB_URL + "/trackback/tb.asp?bidx=" + index + "');\">" + DEFAULT_WEB_URL + "/trackback/tb.asp?bidx=" + index + "</A></DIV>"
	if (isTBOpen == true) {
		try {
			var objXml;
			var objNodeList;
			var objNode;
			var intCount;
			var intIndex;
			var strTitle;
			var strBlogName;
			var strContent;
			var strUrl;
			var dtRegDate;

			objXml = GetTrackbackWithXML(index);
			objNodeList = objXml.documentElement.childNodes;

			intCount = objNodeList.length;

			for (var i = 0; i < intCount - 3; i++) {
				objNode = objNodeList.item(i).childNodes;
				intIndex = objNode.item(0).text;
				strTitle = objNode.item(1).text;
				strBlogName = objNode.item(2).text;
				strContent = objNode.item(3).text;
				strUrl = objNode.item(4).text;
				dtRegDate = objNode.item(5).text;
				
				strTitle = convertHtmlToText(strTitle);
				strBlogName = convertHtmlToText(strBlogName);
				strContent = convertHtmlToText(strContent);
				strUrl = convertHtmlToText(strUrl);
				
				strTemp += "<HR>"
				strTemp += "<DIV CLASS=CMC>Tracked from <A HREF=\"" + strUrl + "\" TARGET=\"_blank\">" + strBlogName + "</A> at " + dtRegDate + "</DIV>"
				strTemp += "<DIV CLASS=CMC>Á¦¸ñ: <A HREF=\"" + strUrl + "\" TARGET=\"_blank\">" + strTitle + "</A></DIV>"
				strTemp += "<DIV CLASS=CMC>" + strContent + "</DIV>"
			}
		}
		catch(e) {
			return;
		}

		eval("document.all." + cmt + ".innerHTML = strTemp");
		eval("document.all." + cmt + ".style.display=''");
		isTBOpen = false;
		isCmtOpen = true;
	} else {
		eval("document.all." + cmt + ".style.display='none'");
		isTBOpen = true;
		isCmtOpen = true;
	}
}
	
function GetTrackbackWithXML(index) {
	try {
		var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		var strURL, strSend;

		strURL	= "/lib/getTrackback.asp";
		strSend	= "index=" + index;

		xmlhttp.Open("POST", strURL, false);
		xmlhttp.setRequestHeader("Content-type:", "application/x-www-form-urlencoded");
		xmlhttp.send(strSend);
		
		//location.href=strURL + "?" + strSend;
		//return;

		if ( xmlhttp.status == 200 ) {
			var docXML = xmlhttp.responseXML;
			var intState = parseInt(docXML.documentElement.selectSingleNode("/userBlog/error").text);
			if (intState == 0) {
				return docXML;
			}
			else {
				alert("XML À» °¡Á®¿À´Â µµÁß ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
				return;
			}
		}
		else {
			alert("XML Åë½Å¿¡ ÀÌ»óÀÌ ÀÖ½À´Ï´Ù.");
			return;
		}
	}
	catch (e) {
		alert("¾Ë ¼ö ¾ø´Â ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
		return;
	}
}

function SetComment(form, index) {
	try {
		var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		var strURL, strSend;
		var strName = "";
		var strUrl = "";
		var strPwd = "";
		var intHidden = 0;

		if(typeof(eval("form.txtName" + index)) == "object") {
			strName = escape(eval("form.txtName" + index + ".value"));
		}
		if(typeof(eval("form.txtUrl" + index)) == "object") {
			strUrl = escape(eval("form.txtUrl" + index + ".value"));
		}
		if(typeof(eval("form.txtPassword" + index)) == "object") {
			strPwd = escape(eval("form.txtPassword" + index + ".value"));
		}
		if(eval("form.chkHidden" + index + ".checked") == true) {
			intHidden = 1;
		}
		
		strURL	= "/lib/setComment.asp";
		strSend = "userName=" + strName;
		strSend += "&userURL=" + strUrl;
		strSend += "&userPwd=" + strPwd;
		strSend += "&userComment=" + escape(eval("form.txtComment" + index + ".value"));
		strSend += "&hidden=" + intHidden;
		strSend += "&index=" + escape(index);

		xmlhttp.Open("POST", strURL, false);
		xmlhttp.setRequestHeader("Content-type:", "application/x-www-form-urlencoded");
		xmlhttp.send(strSend);

		//location.href= strURL + "?" + strSend;
		//return;

		if ( xmlhttp.status == 200 ) {
			var docXML = xmlhttp.responseXML;
			var intState = parseInt(docXML.documentElement.selectSingleNode("/userComment/error").text);
			if (intState == 0) {
				isCmtOpen = true;
				GetComment(form, 'cmt' + index, index);
				return;
			}
			else {
				alert("XML À» °¡Á®¿À´Â µµÁß ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
				return;
			}
		}
		else {
			alert("XML Åë½Å¿¡ ÀÌ»óÀÌ ÀÖ½À´Ï´Ù.");
			return;
		}
	}
	catch (e) {
		alert("¾Ë ¼ö ¾ø´Â ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
		return;
	}
}

function GetMoreContent(form, moreContent, index, blogIndex) {
	if (isMoreContentOpen == true) {
		try {
			var objXml;
			var objNodeList;
			var objNode;
			var intCount;
			var strMoreContent;
			var strTemp = "";

			objXml = GetMoreContentWithXML(index, blogIndex);
			objNodeList = objXml.documentElement.childNodes

			intCount = objNodeList.length;

			for (var i = 0; i < intCount - 3; i++) {
				objNode = objNodeList.item(i).childNodes;
				strMoreContent = objNode.item(0).text;
				
				strTemp += strMoreContent;				
			}
		}
		catch(e) {
			return;
		}

		eval("document.all." + moreContent + ".innerHTML = strTemp");
		eval("document.all." + moreContent + ".style.display=''");
		isMoreContentOpen = false;
	} else {
		eval("document.all." + moreContent + ".style.display='none'");
		isMoreContentOpen = true;
	}
}

function GetMoreContentWithXML(index, blogIndex) {
	try {
		var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		var strURL, strSend;

		strURL	= "/lib/getMoreContent.asp";
		strSend	= "index=" + index;
		strSend += "&blogIndex=" + blogIndex;

		xmlhttp.Open("POST", strURL, false);
		xmlhttp.setRequestHeader("Content-type:", "application/x-www-form-urlencoded");
		xmlhttp.send(strSend);
		
		//location.href=strURL + "?" + strSend;
		//return;

		if ( xmlhttp.status == 200 ) {
			var docXML = xmlhttp.responseXML;
			var intState = parseInt(docXML.documentElement.selectSingleNode("/moreContent/error").text);
			if (intState == 0) {
				return docXML;
			}
			else {
				alert("XML À» °¡Á®¿À´Â µµÁß ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
				return;
			}
		}
		else {
			alert("XML Åë½Å¿¡ ÀÌ»óÀÌ ÀÖ½À´Ï´Ù.");
			return;				
		}
	}
	catch (e) {
		alert("¾Ë ¼ö ¾ø´Â ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
		return;
	}	
}

function DeleteImgFile(fileName, blogIndex) {
	try {
		var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		var strURL, strSend;

		strURL	= "/lib/deleteImgFile.asp";
		strSend	= "fileName=" + escape(fileName) + "&blogIndex=" + escape(blogIndex);

		xmlhttp.Open("POST", strURL, false);
		xmlhttp.setRequestHeader("Content-type:", "application/x-www-form-urlencoded");
		xmlhttp.send(strSend);
		
		//location.href=strURL + "?" + strSend;
		//return;

		if ( xmlhttp.status == 200 ) {
			var docXML = xmlhttp.responseXML;
			var intState = parseInt(docXML.documentElement.selectSingleNode("/delete/error").text);
			if (intState == 0) {
				return true;
			}
			else {
				//alert("XML À» °¡Á®¿À´Â µµÁß ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
				return false;
			}
		}
		else {
			//alert("XML Åë½Å¿¡ ÀÌ»óÀÌ ÀÖ½À´Ï´Ù.");
			return false;				
		}
	}
	catch (e) {
		//alert("¾Ë ¼ö ¾ø´Â ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù.");
		return false;
	}
}

function DelComment(form, index, intBbsIndex, type) {
	if (confirm ("ÀÌ µ¡±ÛÀ» »èÁ¦ÇÏ½Ã°Ú½À´Ï±î?")) {
		if (type == "1") {
			form.action = "/blog/deleteCommentProc.asp";
			form.id.value = index;
			form.bid.value = intBbsIndex;
			form.submit();
			//location.href="/blog/deleteCommentProc.asp?id=" + index + "&bid=" + intBbsIndex;
		} else {
			openWindow("/blog/deleteComment.asp?id=" + index + "&bid=" + intBbsIndex, "deleteComment", 400, 150);
		}
	}
}

function Trim(strValue) {
	var reg1 = /^\s*|\s*$/g;
	var strTrimValue;
		
	strTrimValue = strValue.replace(reg1, "");

	return strTrimValue;
}

// ¿Ã¹Ù¸¥ ÇÑ±¹¾î ±ÛÀÚÀÎÁö Ã¼Å©
function IsCorrectName(inputStr) 
{	
	for (var i = 0; i < inputStr.length; i++) { 		
		var nCode = inputStr.charCodeAt(i);
		
		if (nCode >= 44032 && nCode <= 55203) {
		} 
		else {
			return false;
		}
	} 
	if (inputStr.length == 0)
		return false;
	return true;
}

// Email Validation Check
function isEmail(data)
{
	var reg = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/;
	
	if ( reg.test(data) == false )
	{
		return false;
	}
	return true;
}

// Bytes Check
function GetByte(strValue) {	
	var strString = "";
	var intLen=0;
	
	for(var i=0; i<strValue.length; i++) {
		strString = strValue.toUpperCase( ).charCodeAt(i);	
							
		if((strString < 256)) {		
			intLen = intLen + 1;
		}else{		
			intLen = intLen + 2;
		}	
	}	
	return intLen;	
}

function openWindow(url, name, width, height) {
	var intWidth = width;
	var intHeight = height;
	var intTop	= (window.screen.availHeight - intHeight) / 2;
	var intLeft	= (window.screen.availWidth - intWidth) / 2;
	var strUrl;
	var strFeatures;
	strUrl = url;
	strFeatures = 'width=' + intWidth + ',height=' + intHeight + ',top=' + intTop + ',left=' + intLeft + ',menubar=no,resizable=no,scrollbars=no,status=no,titlebar=no,toolbar=no,location=no';
	objWin = window.open(strUrl, name, strFeatures);
	objWin.focus();
}

function adjustImage(target_img)
{
	var newX, newY;
	var newHeight, newWidth;
	var newImg;

	var maxWidth	= defaultImgSize;
	var maxHeight	= defaultImgSize;

	newImg = new Image();
	newImg.src = target_img.src;
	imgw = newImg.width;
	imgh = newImg.height;

	if (imgw > maxWidth || imgh > maxHeight)
	{
		if(imgw > imgh)
		{
			if(imgw > maxWidth)
				newWidth = maxWidth;
			else
				newWidth = imgw;
			newHeight = Math.round((imgh*newWidth)/imgw);
		}
		else
		{
			if(imgh > maxHeight)
				newHeight = maxHeight;
			else
				newHeight = imgh;
			newWidth = Math.round((imgw*newHeight)/imgh);
		}
	}
	else
	{
		newWidth = imgw;
		newHeight = imgh;
	}
	newX = maxWidth/2 - newWidth/2;
	newY = maxHeight/2 - newHeight/2;

	target_img.onload = null;
	target_img.src = newImg.src;
	target_img.width = newWidth;
	target_img.height = newHeight;
}

function convertHtmlToText(str) {
	var strTemp = str;
	strTemp = strTemp.replace(/&/g, "&amp;");
	strTemp = strTemp.replace(/\'/g, "&#39;");
	strTemp = strTemp.replace(/\"/g, "&quot;");
	strTemp = strTemp.replace(/</g, "&lt;");
	strTemp = strTemp.replace(/>/g, "&gt;");
	strTemp = strTemp.replace(/\n/g, "<BR>");
	return strTemp;
}

function checkSpecialWord(str){
	//var m_Sp = /[$\\@\\\#%\^\&\*\(\)\[\]\+\_\{\}\`\~\=\|\<\>\?\,\.\/\:\"\;\ \'\!\-]/; full special word
	var m_Sp = /[\<\>]/;	// only prohibit tag
	var strLen = str.length;
	var m_char = str.charAt((strLen) - 1);
	var tmpStr = "";
	var count = 0;

	for (var i = 0; i < strLen; i++) {
		m_char = str.charAt(i);
		if(m_char.search(m_Sp) != -1) {
			count++
		}
	}

	if (count != 0) {
		return false;
	} else {
		return true;
	}
}

function copyString(str) {
	window.clipboardData.setData('Text', str);
	alert("Å¬¸³º¸µå·Î º¹»çµÇ¾ú½À´Ï´Ù.");
}