String.prototype.trim = function() {
	return this.replace(/(^[ \f\n\r\t]*)|([ \f\n\r\t]*$)/g, ""); 
}

function checkSearchInfo(stext, page) {
	if (stext.value.trim() == "") {
		alert("°Ë»ö¾î¸¦ ÀÔ·ÂÇØ ÁÖ½Ê½Ã¿À.");
		stext.focus();
		return false;
	}
	page.value = "1";
	return true;
}

function checkSpace(txt) {
	for (var k = 0; k <= (txt.length - 1); k++) {
		if (txt.indexOf(" ") >= 0 ) return true;
	}
	return false;
}

function checkLetter(txt) {
	var i, j, idcheck;
	var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";
	for (i = 0; i < txt.length; i++) {
		idcheck = txt.charAt(i);
		for (j = 0;  j < str.length; j++) {
			if (idcheck == str.charAt(j)) break;
		}
		if (j == str.length) return true;
	}
	return false;
}

function checkNumber(num) {
	if (num.trim() != "") {
		for (var i = 0; i < num.length; i++) {
			var ch = num.substring(i, i + 1);
			if (ch < "0" || ch > "9") return false;
		}
	}
	return true;
}

function checkJuminNumber(reg_no) {
	var i, sum = 0;
	var buf = new Array(13);
	var multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
	for (i = 0; i < 13; i++) {
		buf[i] = parseInt(reg_no.charAt(i));
	}
	for (i = 0; i < 12; i++) {
		sum += (buf[i] *= multipliers[i]);
	}
	sum = 11 - (sum % 11);
	if (sum == 11) sum = 1;
	else if (sum == 10) sum = 0;
	if (sum != buf[12]) return false;
	else return true;
}

function checkForeignNumber(reg_no) {
	var i, sum = 0, odd = 0;
	var buf = new Array(13);
	var multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
	for (i = 0; i < 13; i++) {
		buf[i] = parseInt(reg_no.charAt(i));
	}
	odd = buf[7]*10 + buf[8];
	if (odd % 2 != 0) return false;
	if ((buf[11] != 6) && (buf[11] != 7) && (buf[11] != 8) && (buf[11] != 9)) return false;
	for (i = 0, sum = 0; i < 12; i++) {
		sum += (buf[i] *= multipliers[i]);
	}
	sum = 11 - (sum % 11);
	if (sum >= 10) sum -= 10;
	sum += 2;
	if (sum >= 10) sum -= 10;
	if (sum != buf[12]) return false;
	else return true;
}

function checkBusinessNumber(reg_no) {
	var i, sum = 0;
	var getlist = new Array(10);
	var chkvalue = new Array("1","3","7","1","3","7","1","3","5");
	for (i = 0; i < 10; i++) {
		getlist[i] = reg_no.substring(i, i + 1);
	}
	for (i = 0; i < 9; i++) {
		sum += getlist[i] * chkvalue[i];
	}
	sum = sum + parseInt((getlist[8] * 5) / 10);
	sidliy = sum % 10;
	sidchk = 0;
	if (sidliy != 0) sidchk = 10 - sidliy;
	else sidchk = 0;
	if (sidchk != getlist[9]) return false;
	return true;
}

function setSelected(objSource, select_value) {
	var i, lenlist = objSource.length;
	for (i = 0; i < lenlist; i++) {
		if (objSource.options[i].value == select_value) {
			objSource.options[i].selected = true;									
			break;
		}
	}
}

function setChecked(objSource, check_value) {
	var i, lenlist = objSource.length;
	if (lenlist > 1) {
		for (i = 0; i < lenlist; i++) {
			if (objSource[i].value == check_value) {
				objSource[i].checked = true;
				break;
			}
		}
	} else {
		if (objSource.value == check_value) {
			objSource.checked = true;
		}
	}
}

function setMultipleChecked(objSource, check_value) {
	var i, j, list_val = check_value.split(",");
	for (i = 0; i < list_val.length; i++) {
		for (j = 0; j < objSource.length; j++) {
			if (objSource[j].value == list_val[i]) objSource[j].checked = true;
		}
	}
}

function setOnOffChecked(objSource, check_value) {
	var i;
	for (i = 0; i < check_value.length; i++) {
		if (check_value.substr(i, 1) == "1") objSource[i].checked = true;
	}
}

var all_flag = "F";
function selectAll(objSource) {
	if (objSource != null) {
		var count = objSource.length;
		if (count > 1) {
			if (all_flag == "F") {
				for (i = 0; i < count; i++) {
					objSource[i].checked = true;
				}
				all_flag = "T";
			} else {
				for (i = 0; i < count; i++) {
					objSource[i].checked = false;
				}
				all_flag = "F";
			}
		} else {
			if (all_flag == "F") {
				objSource.checked = true;
				all_flag = "T";
			} else {
				objSource.checked = false;
				all_flag = "F";
			}
		}
	}
}

function getOneValue(element) {
	var retval = "";
	if (element != null) {
		var count = element.length;
		if (count > 1) {
			for (i = 0; i < count; i++) {
				if (element[i].checked == true) {
					if (!retval) retval += element[i].value;
					else {
						retval = "over";
						break;
					}
				}
			}
		} else if (element.checked == true) retval += element.value;
	}
	return retval;
}

function getSelectedText(element) {
	var retval = "";
	if (element != null) {
		var count = element.length;
		if (count > 1) {
			for (i = 0; i < count; i++) {
				retval += element[i].value + "|@*@|";
			}
		} else retval += element.value + "|@*@|";
		if (retval) retval = retval.substring(0, retval.length - 5);
	}
	return retval;
}

function getSelectedValue(element) {
	var retval = "";
	if (element != null) {
		var count = element.length;
		if (count > 1) {
			for (i = 0; i < count; i++) {
				if (element[i].checked == true) retval += element[i].value + ",";
			}
		} else if (element.checked == true) retval += element.value + ",";
		if (retval) retval = retval.substring(0, retval.length - 1);
	}
	return retval;
}

function getOnOffValue(element) {
	var retval = "";
	if (element != null) {
		var count = element.length;
		if (count > 1) {
			for (i = 0; i < count; i++) {
				if (element[i].checked == true) retval += "1";
				else retval += "0";
			}
		} else {
			if (element.checked == true) retval += "1";
			else retval += "0";
		}
	}
	return retval;
}

function getMultipleValue(element1, element2) {
	var retval = "";
	if (element1 != null) {
		var count = element1.length;
		if (count > 1) {
			for (i = 0; i < count; i++) {
				if (element1[i].checked == true) retval += element2[i].value + ",";
			}
		} else if (element1.checked == true) retval += element2.value + ",";
		if (retval) retval = retval.substring(0, retval.length-1);
	}
	return retval;
}

function updateCharLen(msg, limit) {
	var length = calculateMsgLen(msg.value);
	document.getElementById(msg.name + "_limit").innerText = length;
	if (length > limit) {
		alert("ÃÖ´ë " + limit + "byteÀÌ¹Ç·Î ÃÊ°úµÈ ±ÛÀÚ¼ö´Â ÀÚµ¿À¸·Î »èÁ¦µË´Ï´Ù.");
		msg.value = msg.value.replace(/\r\n$/, "");
		msg.value = assertMsgLen(msg, limit);
	}
}

function calculateMsgLen(msg) {
	var nbytes = 0;
	for (i = 0; i < msg.length; i++) {
		var ch = msg.charAt(i);
		if (escape(ch).length > 4) nbytes += 2;
		else if (ch == '\n' && msg.charAt(i-1) != '\r') nbytes += 1;
		else if (ch == '<' || ch == '>') nbytes += 4;
		else nbytes += 1;
	}
	return nbytes;
}

function assertMsgLen(message, max) {
	var inc = 0;
	var nbytes = 0;
	var msg = "";
	var msglen = message.value.length;
	for (i = 0; i < msglen; i++) {
		var ch = message.value.charAt(i);
		if (escape(ch).length > 4) inc = 2;
		else if (ch == '\n' && message.value.charAt(i-1) != '\r') inc = 1;
		else if (ch == '<' || ch == '>') inc = 4;
		else inc = 1;
		if ((nbytes + inc) > max) break;
		nbytes += inc;
		msg += ch;
	}
	document.getElementById(message.name + "_limit").innerText = nbytes;
	return msg;
}

function setNextDay(syy, smm, sdd, eyy, emm, edd, interval) {
	if (syy.value.trim() != "" && smm.value.trim() != "" && sdd.value.trim() != "") {
		var sdate = new Date(syy.value, smm.value - 1, sdd.value);
		var edate = new Date();
		var newtime = sdate.getTime() + (interval * 24 * 60 * 60 * 1000);
		edate.setTime(newtime);
		var edate_yy, edate_mm, edate_dd;
		edate_yy = edate.getYear();
		if (edate.getMonth() + 1 < 10) edate_mm = "0" + (edate.getMonth() + 1);
		else edate_mm = edate.getMonth() + 1;
		if (edate.getDate() < 10) edate_dd = "0" + edate.getDate();
		else edate_dd = edate.getDate();
		setSelected(eyy, edate_yy);
		setSelected(emm, edate_mm);
		setDayList(eyy, emm, edd);
		setSelected(edd, edate_dd);
	}
}

function setDayList(yearObject, monthObject, dayObject) {
	var yr = parseInt(yearObject.options[yearObject.selectedIndex].text);
	var mth = parseInt(monthObject.options[monthObject.selectedIndex].text);
	var tempDate = new Date(yr, mth, 0, 0, 0, 0, 0);
	var lastDay = tempDate.getDate();
	for (i = dayObject.length - 1; i >= 0; i--) {
		dayObject.options[i] = null;
	}
	dayObject.options[0] = new Option("--", "");
	for (i = 1; i <= lastDay; i++) {
		var temp = i;
		if (temp < 10) temp = "0" + temp;
		dayObject.options[i] = new Option(temp, temp);
	}
}

function setHourList(ampmObject, hourObject) {
	var ampm = ampmObject.options[ampmObject.selectedIndex].value;
	for (i = hourObject.length - 1; i >= 0; i--) {
		hourObject.options[i] = null;
	}
	if (ampm == "mid1" || ampm == "mid2") hourObject.options[0] = new Option("12", "12");
	else {
		hourObject.options[0] = new Option("--", "");
		for (i = 1; i <= 11; i++) {
			var temp = i;
			if (temp < 10) temp = "0" + temp;
			hourObject.options[i] = new Option(temp, temp);
		}
	}
}

function getCommaFormat(num) {
	var rtn = "";
	num = new String(num);
	if (checkNumber(num)) {
		var i, val = "", j = 0;
		for (i = num.length; i > 0; i--) {
			if (num.substring(i, i - 1) != ",") val = num.substring(i, i - 1) + val;
		}
		for (i = val.length; i > 0; i--) {
			if (j % 3 == 0 && j != 0) rtn = val.substring(i, i - 1) + "," + rtn; 
			else rtn = val.substring(i, i - 1) + rtn;
			j++;
		}
	}
	return rtn;
}

function setCommaFormat(num) {
	var i, rtn = "", val = "", j = 0;
	for (i = num.value.length; i > 0; i--) {
		if (num.value.substring(i, i - 1) != ",") val = num.value.substring(i, i - 1) + val;
	}
	for (i = val.length; i > 0; i--) {
		if (j % 3 == 0 && j != 0) rtn = val.substring(i, i - 1) + "," + rtn; 
		else rtn = val.substring(i, i - 1) + rtn;
		j++;
	}
	num.value = rtn;
}

function setCommaFormat1(num) {
	var i, rtn = "", val = "", j = 0;
	for (i = num.length; i > 0; i--) {
		if (num.substring(i, i - 1) != ",") val = num.substring(i, i - 1) + val;
	}
	for (i = val.length; i > 0; i--) {
		if (j % 3 == 0 && j != 0) rtn = val.substring(i, i - 1) + "," + rtn; 
		else rtn = val.substring(i, i - 1) + rtn;
		j++;
	}
	return rtn;
}

function getImagePath(img_url) {
	var str = "";
	if (!(img_url.length > 7 && img_url.substring(0, 7) == "http://")) {
		var newURL = "file://";
		newURL += img_url.charAt(0);
		newURL += ":";
		img_url = img_url.substring(3);
		dir = img_url.split("\\");
		for(i = 0 ; i < dir.length ; i++) {
			newURL += "/" + dir[i];
		}
		str = newURL;
	}
	return str;
}

function calculateFileSize(attach, attach_size, total) {
	var img = new Image();
	img.src = getImagePath(attach.value);
	if (img.fileSize > 0) {
		total.value = img.fileSize;
		attach_size.innerText = Math.round(img.fileSize / 1024);
	}
}

function addColumn(column, item) {
	var option = new Option(item.value, 0);
	if (item.value.trim() == "") {
		alert("Ç×¸ñÀ» ÀÔ·ÂÇØ ÁÖ½Ê½Ã¿À.");
		item.focus();
		return;
	}
	column.options[column.length] = option;
	item.value = "";
	item.focus();
}

function deleteColumn(column, del_no) {
	var index = column.selectedIndex;
	if (index == -1) {
		alert("»èÁ¦ÇÏ·Á´Â Ç×¸ñÀ» ¼±ÅÃÇØ ÁÖ½Ê½Ã¿À.");
		column.focus();
		return;
	}
	if (del_no && column.options[index].value) del_no.value += column.options[index].value + ","; 
	column.options[index] = null;
}

function changeColumn(row, item) {
	var index = row.selectedIndex;
	if (item.value.trim() == "") {
		alert("¼öÁ¤ÇÏ½Ç Ç×¸ñÀ» ÀÔ·ÂÇØ ÁÖ¼¼¿ä.");
		item.focus();
		return;
	}
	if (index == -1) {
		alert("¼öÁ¤ÇÏ½Ç Ç×¸ñÀ» ¼±ÅÃÇØ ÁÖ½Ê½Ã¿À.");
		row.focus();
		return;
	}
	row.options[index].text = item.value;
	item.value = "";
}

function moveColumn(row, type) {
	var index = row.selectedIndex;
	if (index == -1) {
		alert("¼ø¼­¸¦ ¹Ù²Ù½Ç Ç×¸ñÀ» ¼±ÅÃÇØ ÁÖ½Ê½Ã¿À.");
		row.focus();
		return;
	}
	if (type == "up") moveListUp(row);
	else if (type == "down") moveListDown(row);
}

function moveListUp(row) {
	var i;
	for (i = 0; i < row.options.length; i++) {
		if (row.options[i].selected && row.options[i] && row.options[i] != row.options[0]) {
			var tmpval = row.options[i].value;
			var tmpval2 = row.options[i].text;
			row.options[i].value = row.options[i - 1].value;
			row.options[i].text = row.options[i - 1].text
			row.options[i - 1].value = tmpval;
			row.options[i - 1].text = tmpval2;
			row.options[i - 1].selected = true;
			break;
		}
	}
}

function moveListDown(row) {
	var i;
	for (i = 0; i < row.options.length; i++) {
		if (row.options[i].selected && row.options[i] && row.options[i + 1] != row.options[row.options.length]) {
			var tmpval = row.options[i].value;
			var tmpval2 = row.options[i].text;
			row.options[i].value = row.options[i + 1].value;
			row.options[i].text = row.options[i + 1].text
			row.options[i + 1].value = tmpval;
			row.options[i + 1].text = tmpval2;
			row.options[i + 1].selected = true;
			break;
		}
	}
}

function pickColor(obj_color, obj_preview) {
	var oTColor, oColor = obj_color.value;
	if (oColor == null && oColor.trim() == "") oTColor = colorPicker.ChooseColorDlg();
	else oTColor = colorPicker.ChooseColorDlg(oColor);
	oTColor = oTColor.toString(16);
	if (oTColor.length < 6) {
		var sTempString = "000000".substring(0, 6 - oTColor.length);
		oTColor = sTempString.concat(oTColor);
	}
	if (obj_color != null) obj_color.value = oTColor;
	if (obj_preview != null) obj_preview.style.backgroundColor = oTColor;
}

function gotoURL(link) {
	link = link.trim();
	if (link != "") {
		if (link.substr(0, 7) == "http://") window.open(link);
		else window.open("http://" + link);
	}
}

function resizeIframe(type) {
	if (type == "magazineFrame") {
		try{
			var oBody	=	magazineFrame.document.body;
			var oFrame	=	document.getElementById("magazineFrame");
			oFrame.style.height = oBody.scrollHeight + (oBody.offsetHeight - oBody.clientHeight);
		} catch (e) {}
	}
}