// JavaScript Document
// ÀÔ·ÂÇÑ ±ÛÀÚ¼ö¸¦ Ã¼Å©
function inTxtLen(strName){

    var ls_str      = strName.value;    // ÀÌº¥Æ®°¡ ÀÏ¾î³­ ÄÁÆ®·ÑÀÇ value °ª
    var li_str_len  = ls_str.length;    // ÀüÃ¼±æÀÌ

    // º¯¼öÃÊ±âÈ­
    var i = 0;              // for¹®¿¡ »ç¿ë
    var li_byte = 0;        // ÇÑ±ÛÀÏ°æ¿ì´Â 2 ±×¹Û¿¡´Â 1À» ´õÇÔ
    var ls_one_char = "";   // ÇÑ±ÛÀÚ¾¿ °Ë»çÇÑ´Ù

    for(i=0; i< li_str_len; i++){
        // ÇÑ±ÛÀÚÃßÃâ
        ls_one_char = ls_str.charAt(i);

        // ÇÑ±ÛÀÌ¸é 2¸¦ ´õÇÑ´Ù.
        if (escape(ls_one_char).length > 4){
            li_byte += 2;
        }

        // ±×¹ÜÀÇ °æ¿ì´Â 1À» ´õÇÑ´Ù.
        else{
        li_byte++;
        }
    }
    document.getElementById("txtLen").innerHTML= li_byte + "";
}

/******************************************************************************
* ¹®ÀÚ¿­ ÀÚ¸£±â
******************************************************************************/
function CutChar(ctrl, strLen) {
    var str, msg;
    var len = 0;
    var temp;
    var count;
    count = 0;

    msg = ctrl.value;
    str = new String(msg);
    len = str.length;

    for (k = 0; k < len; k++) {
        temp = str.charAt(k);

        if (escape(temp).length > 4) {
            count += 2;
        }
        else if (temp == '\r' && str.charAt(k + 1) == '\n') { // \r\nÀÏ °æ¿ì
            count += 2;
        }
        else if (temp != '\n') {
            count++;
        }
        if (count > strLen) {
            str = str.substring(0, k);
            break;
        }
    }
    ctrl.value = str;

    CheckStringCut(ctrl, strLen);
}

/******************************************************************************
* ¹®ÀÚ¿­ ±æÀÌ °Ë»ç (¹®ÀÚ¿­ ÀÚ¸§)
******************************************************************************/
function CheckStringCut(ctrl, strLen) {
    var str, msg;
    var len = 0;
    var temp;
    var count = 0;

    msg = ctrl.value;
    str = new String(msg);
    len = str.length;

    for (k = 0; k < len; k++) {
        temp = str.charAt(k);

        if (escape(temp).length > 4) {
            count += 2;
        }
        else if (temp == '\r' && str.charAt(k + 1) == '\n') { // \r\nÀÏ °æ¿ì
            count += 2;
        }
        else if (temp != '\n') {
            count++;
        }
    }

    if (count > strLen) {
        alert("ÇÑ±Û " + numOnMask(strLen / 2) + "ÀÚ(¿µ¹® " + numOnMask(strLen) + "ÀÚ)ÀÌ³»·Î ÀÛ¼ºÇØ ÁÖ¼¼¿ä.");
        CutChar(ctrl, strLen);
    }
}

/******************************************************************************
*¼ýÀÚ 3ÀÚ¸®¸¶´Ù ÄÞ¸¶
******************************************************************************/
function numOnMask(me) {
  var tmpH;

  me = me.toString();

  if (me.charAt(0) == "-") {	//À½¼ö°¡ µé¾î¿ÔÀ»¶§ '-'¸¦ »©°íÀû¿ëµÇ°Ô..
    tmpH = me.substring(0, 1);
    me = me.substring(1, me.length);
  }

  if (me.length > 3) {
    var c = 0;
    var myArray = new Array();

    for (var i = me.length; i > 0; i = i - 3) {
      myArray[c++] = me.substring(i - 3, i);
    }

    myArray.reverse();
    me = myArray.join(",");
  }

  if (tmpH) {
    me = tmpH + me;
  }
  return me;
}

//ÁÖ¹Î¹øÈ£Ã¼Å©
function vaildate(){
      var f1=document.form1.mem_ssn1.value.substring(0,1)
      var f2=document.form1.mem_ssn1.value.substring(1,2)
      var f3=document.form1.mem_ssn1.value.substring(2,3)
      var f4=document.form1.mem_ssn1.value.substring(3,4)
      var f5=document.form1.mem_ssn1.value.substring(4,5)
      var f6=document.form1.mem_ssn1.value.substring(5,6)
      var hap=f1*2+f2*3+f3*4+f4*5+f5*6+f6*7
      var s1=document.form1.mem_ssn2.value.substring(0,1)
      var s2=document.form1.mem_ssn2.value.substring(1,2)
      var s3=document.form1.mem_ssn2.value.substring(2,3)
      var s4=document.form1.mem_ssn2.value.substring(3,4)
      var s5=document.form1.mem_ssn2.value.substring(4,5)
      var s6=document.form1.mem_ssn2.value.substring(5,6)
      var s7=document.form1.mem_ssn2.value.substring(6,7)
      hap=hap+s1*8+s2*9+s3*2+s4*3+s5*4+s6*5
      hap=hap%11
      hap=11-hap
      hap=hap%10
      if(hap != s7){
      alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ ÀÔ´Ï´Ù.");
      document.form1.mem_ssn1.value=""
      document.form1.mem_ssn2.value=""
      document.form1.mem_ssn1.focus();
      }
    }
function autonext(vl, nextform, cleng) {
   if(vl.value.length == cleng) { //¸Å°³º¯¼ö this·Î ³Ñ°Ü¹ÞÀº ÀÚ·á ±æÀÌ¸¦ ÁöÁ¤µÈ Å©±â¿Í ºñ±³
	  nextform.focus();      //ÁöÁ¤µÈ name °ªÀÇ ÀÔ·Â ¾ç½ÄÀ¸·Î Æ÷Ä¿½º¸¦ ÀÌµ¿
	  nextform.select();     //Æ÷Ä¿½º¸¦ ¿Å±ä ÀÔ·Â ¾ç½ÄÀ» ¼±ÅÃ
   }
 }
 
 /* FLASH Include */
function ShowFlash(url, width, height){
        document.write(' <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="' + width + '" height="' + height + '" VIEWASTEXT>');
        document.write('<param name="movie" value="' + url + '">');
        document.write('<param name="quality" value="high">');
        document.write('<embed src="' + url + '" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="' + width + '" height="' + height + '"></embed>');
        document.write('</object>');
}

function ShowFlash2(url, width, height){
        document.write(' <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="' + width + '" height="' + height + '" VIEWASTEXT>');
        document.write('<param name="movie" value="' + url + '">');
        document.write('<param name="quality" value="high">');
		document.write('<param name="wmode" value="transparent">');
		document.write('<param name="allowScriptAccess" value="sameDomain" />');
        document.write('<embed src="' + url + '" wmode="transparent" quality="high" allowScriptAccess="sameDomain" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="' + width + '" height="' + height + '"></embed>');
        document.write('</object>');
}
				//±ÛÀÚ¼öÃ¼Å©1(Ç¥½Ã)
function checkMsg1(doc,dp_form,sByte)
{

        var str;
        var tmpStr;
        var temp=0;
        var onechar;
        var tcount;
        var sByte;
        tcount = 0;
		
		str = doc.value;
		
        tmpStr = new String(str);
        temp = tmpStr.length;

        for (k=0;k<temp;k++)
        {
                onechar = tmpStr.charAt(k);

                if (escape(onechar).length > 4) {
                        tcount += 2;
                }
                else if (temp == '\r' && str.charAt(k+1) == '\n') { // \r\nÀÏ °æ¿ì
                        tcount += 2;
                }
                else if (temp != '\n') {
                        tcount++;
                }
                else {
                        tcount++;
                }
        }
        dp_form.value = tcount+" / " + sByte + " byte";

        if (tcount > sByte) 
        {
			doc.blur();
            doc.focus();
            cutChar(doc,dp_form,sByte);
        }
}

//±ÛÀÚ¼öÃ¼Å©2(°ªÀü´Þ)
function checkMsg2(str)
{
        var str;
        var tmpStr;
        var temp=0;
        var onechar;
        var tcount;
        tcount = 0;
	

        tmpStr = new String(str);
        temp = tmpStr.length;

        for (k=0;k<temp;k++)
        {
                onechar = tmpStr.charAt(k);

                if (escape(onechar).length > 4) {
                        tcount += 2;
                }
                else if (temp == '\r' && str.charAt(k+1) == '\n') { // \r\nÀÏ °æ¿ì
                        tcount += 2;
                }
                else if (temp != '\n') {
                        tcount++;
                }
                else {
                        tcount++;
                }
        }
        return(tcount);
}

// ¹®ÀÚ¿­ÀÇ BYTE ±æÀÌ ±¸ÇÏ±â
function bytelength(pstr) 
{
	var i, ch;
	len = pstr.length;
	for (i = 0; i < pstr.length; i++) 
	{
		ch = pstr.substr(i,1).charCodeAt(0);
		if (ch > 127) { len++; }
	}
	return len;
}

//¼ýÀÚ ½ºÆ®¸µ Ã¼Å©
function digitstr(pstr) 
{
	var valid = "0123456789";
	return checkstr(pstr, valid, 0);
}

function checkstr(pstr, pvalid, han) 
{
	var valid = pvalid;
	var tmp;
	var flag = true;

	for (var i = 0; i < pstr.length; i++) 
	{
		flag = true;
		tmp = "" + pstr.substring(i, i+1);
			
		if (han != 1) 
		{
			if (valid.indexOf(tmp) == "-1") 
			{
				return false;
			}
		} 
		else 
		{
			ch = escape(pstr.charAt(i));        //ISO-Latin-1 ¹®ÀÚ¼ÂÀ¸·Î º¯°æ
			if (valid.indexOf(tmp) == "-1" && 
				strCharByte(ch) != 2) 
			{
				return false;
			}
		}
	}
	return true;;
}


/* ÇÑ±Û byte Ã¼Å© */
function strCharByte(chStr) 
{

	if (chStr.substring(0, 2) == '%u') 
	{
			
		/* alert(chStr.substring(2,6)); */
		if (chStr.substring(2,6) >= "AC00" && chStr.substring(2,6) <= "D7A3") 
		{
			return 2;			/* ÇÑ±Û */
		} 
		else 
		{
			return 1;
		}

			/* ±¸¹öÀü */
			/*
			if (chStr.substring(2,4) == '00')
				return 1;
			else
				return 2;
			*/

	} 
	else if (chStr.substring(0,1) == '%') 
	{
		if (parseInt(chStr.substring(1,3), 16) > 127)
			return 2;			/* ÇÑ±Û */
		else
			return 1;
	} 
	else 
	{
		return 1;
	}

}

/* ¹®ÀÚ¿­ÀÇ ¾çÂÊ(¿ÞÂÊ, ¿À¸¥ÂÊ) °ø¹é Á¦°Å */ 
function trim(pstr) 
{
	var search = 0
	while (pstr.charAt(search) == " ") 
	{
			search = search + 1
	}
	pstr = pstr.substring(search, (pstr.length))
	search = pstr.length - 1
	while (pstr.charAt(search) ==" ")
	{
		search = search - 1
	}
	return pstr.substring(0, search + 1)         
}

function igoods_indata(){
	var igoods_str;
	i = new Array();
	igoods_str = document.getElementById("imsi_goods").value;
	igoods_str = igoods_str + "<div style=width:100% id=ns" + i + "><table width=100% border=0 cellspacing=1 cellpadding=2>";
	igoods_str = igoods_str + "  <tr>";
	igoods_str = igoods_str + "	<td width=90% bgcolor=#F1F1F1><span class=black2>¸ÚÀïÀÌ ¸ðÀÚ</span></td>";
	igoods_str = igoods_str + "	<td width=10% class=center_td><img src=/images/btn_delete.gif width=10 height=10 style=cursor:pointer; onclick=igoods_del('');></td>";
	igoods_str = igoods_str + "  </tr>";
	igoods_str = igoods_str + "</table></div>";
	
	document.getElementById("imsi_goods").value = igoods_str;
	document.getElementById("div_igoods").innerHTML = igoods_str;
}

var oTbl;
//Row Ãß°¡
function insRow() {
  var rGoods_idx;
  rGoods_idx = document.form_contents.goods_idx.options[document.form_contents.goods_idx.selectedIndex].value;
  if(rGoods_idx==''){
	alert("»óÇ°À» ¼±ÅÃÇØÁÖ¼¼¿ä.");
	return false;  
  }else{
	  if(document.all('check_igoods[]').value == rGoods_idx){
		  alert("Áßº¹µÈ »óÇ°ÀÔ´Ï´Ù.");
		  return false;
	  }else{
  rGoods_text = document.form_contents.goods_idx.options[document.form_contents.goods_idx.selectedIndex].text;
  oTbl = document.getElementById("div_igoods");
  var oRow = oTbl.insertRow();
  oRow.onmouseover=function(){oTbl.clickedRowIndex=this.rowIndex}; //clickedRowIndex - Å¬¸¯ÇÑ RowÀÇ À§Ä¡¸¦ È®ÀÎ;
  var oCell = oRow.insertCell();

  //»ðÀÔµÉ Form Tag
  var frmTag = "<input type=text name=input_igoods value=" + rGoods_text + " class=black2 style=width:90%;height:21px;border:0;background-color:#F1F1F1;>";
  frmTag += "<input type=checkbox name=check_igoods value=" + rGoods_idx + " readonly checked style=display:none;>";
  frmTag += "<input style=margin-left:10px type=image src=/images/btn_delete.gif onClick='removeRow()'>";
  oCell.innerHTML = frmTag;
	  }
  }
}
//Row »èÁ¦
function removeRow() {
  oTbl.deleteRow(oTbl.clickedRowIndex);
}

function frmCheck()
{
  var frm = document.form_contents;
  
  for( var i = 0; i <= frm.elements.length - 1; i++ ){
     if( frm.elements[i].name == "addText[]" )
     {
         if( !frm.elements[i].value ){
             alert("ÅØ½ºÆ®¹Ú½º¿¡ °ªÀ» ÀÔ·ÂÇÏ¼¼¿ä!");
             frm.elements[i].focus();
             return;
          }
      }
   }
 }
 
//¼îÇÎ¸ô
// Trim ÇÔ¼ö ##################################################
// Ex) str = "    Å× ½ºÆ®   ".trim(); => str = "Å× ½ºÆ®";
String.prototype.trim = function() {
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

// ¹®ÀÚ¿­ °ø¹éÁ¦°Å ÇÔ¼ö ##################################################
// Ex) str = "    Å× ½º   Æ®   ".stripspace(); => str = "Å×½ºÆ®";
String.prototype.stripspace = function() {
	return this.replace(/ /g, "");
}

// ÀüÃ¼ ¹®ÀÚ¿­ ¹Ù²Ù±â ÇÔ¼ö ##################################################
// Ex) str = "aÅ×½ºÆ®bcdÅ×½ºÆ®efg".replaceAll("Å×½ºÆ®", ""); => str = "abcdefg";
String.prototype.replaceAll = function(a, b) {
	var s = this;
	var n1, n2, s1, s2;

	while (true) {
		if ( s=="" || a=="" ) break;
		n1 = s.indexOf(a);
		if ( n1 < 0 ) break;
		n2 = n1 + a.length;
		if ( n1==0 ) {
			s1 = b;
		}
		else {
			s1 = s.substring(0, n1) + b;
		}
		if ( n2 >= s.length ) {
			s2 = "";
		}
		else {
			s2 = s.substring(n2, s.length);
		}
		s = s1 + s2;
	}
	return s;
}

// Event Ãß°¡ ##################################################
function addEvent(obj, evt, exec) {
	if (window.attachEvent) obj.attachEvent('on'+evt, exec);
	else if (window.addEventListener) obj.addEventListener(evt, exec, false);
	else obj['on'+evt] = exec;
}

// ÆË¾÷ ##################################################
function openPopup(theURL, winName, width, height, remFeatures) {
	var features = "";
	if (typeof winName == "undefined") winName = "";
	if (typeof width != "undefined") features += ((features) ? "," : "")+"width="+width;
	if (typeof height != "undefined") features += ((features) ? "," : "")+"height="+height;
	if (typeof remFeatures != "undefined") features += ((features) ? "," : "")+remFeatures;
	if (features.indexOf("status") < 0) features += ",status=yes";

	var popup = window.open(theURL, winName, features);
	popup.focus();

	return popup;
}

// ÆË¾÷ - ÆË¾÷Ã¢ È­¸éÁß¾Ó ¿ÀÇÂ ##################################################
function openPopupCenter(theURL, winName, width, height, remFeatures) {
	var left = (screen.width/2) - (width/2);
	var top = (screen.availHeight/2) - (height/2);
	var features = "left="+left+",top="+top+",width="+width+",height="+height;
	if (typeof winName == "undefined") winName = "";
	if (typeof remFeatures != "undefined") features += ","+remFeatures;
	if (features.indexOf("status") < 0) features += ",status=yes";

	var popup = window.open(theURL, winName, features);
	popup.focus();

	return popup;
}

// ÆË¾÷ - ÆË¾÷Ã¢ »çÀÌÁî Á¶Á¤ ##################################################
function resizePopupWindow(width, height) {
	var strAgent = navigator.userAgent.toLowerCase();
	var bIE7 = (strAgent.indexOf("msie 7.0") != -1);
	window.resizeTo(width+10, height+(bIE7 ? 69 : 49));
}

// ÆË¾÷ - ÆË¾÷Ã¢ À§Ä¡ Á¶Á¤ ##################################################
function movePopupWindow(left, top) {
	window.moveTo(left, top);
}

// ¸ð´Þ ##################################################
function MM_openModal(theURL, obj, features) {
	window.showModalDialog(theURL, obj, features);
}

// Å° °ü·Ã ÇÔ¼ö ##################################################
function blockKey(e) {
	var e = window.event || e;
	if (window.event) {
		e.returnValue = false;
	}
	else {
		if (e.which != 8) e.preventDefault(); // 8 : Back Space
	}
}

function blockEnter(e) {
	var e = window.event || e;
	if (window.event) {
		if (e.keyCode == 13) e.returnValue = false;
	}
	else {
		if (e.which == 13) e.preventDefault();
	}
}

function blockNotNumber(e) {
	var e = window.event || e;
	if (window.event) {
		if (e.keyCode < 48 || e.keyCode > 57) e.returnValue = false;
	}
	else {
		if (e.which != 8 && (e.which < 48 || e.which > 57)) e.preventDefault(); // 8 : Back Space
	}
}

function onEnter(e, nextItem) {
	var e = window.event || e;
	var keyCode = (window.event) ? e.keyCode : e.which;
	if (keyCode == 13) {
		if (nextItem) nextItem.focus();
	}
}

// Áñ°ÜÃ£±â Ãß°¡ ##################################################
// ¿¹) <a href="javascript:;" onClick="addFavorites('È¨ÆäÀÌÁö', 'http://www.homepage.com');">Áñ°ÜÃ£±â µî·Ï</a>
function addFavorites(title, url) {
	if (document.all) { // IE
		window.external.AddFavorite(url, title);
	}
	else if (window.sidebar) { // Firefox
		window.sidebar.addPanel(title, url, "");
	}
	else { // Opera, Safari ...
		alert("ÇöÀç ºê¶ó¿ìÁ®¿¡¼­´Â ÀÌ¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.");
		return;
	}
}

// ½ÃÀÛÆäÀÌÁö ¼³Á¤ ##################################################
// ¿¹) <a href="javascript:;" onClick="setStartPage(this, 'http://www.homepage.com');">½ÃÀÛÆäÀÌÁö·Î</a>
function setStartPage(obj, url) {
	if (document.all && window.external) { // IE
		obj.style.behavior = "url(#default#homepage)";
		obj.setHomePage(url);
	}
	else { // Firefox, Opera, Safari ...
		alert("ÇöÀç ºê¶ó¿ìÁ®¿¡¼­´Â ÀÌ¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.");
		return;
    }
}

// ÆäÀÌÁö ÀÌµ¿ ##################################################
function gotoUrl(url) {
	if (url.stripspace() != "") {
		location.href = url;
	}
}

// ÆäÀÌÁö ÃÖ»ó´ÜÀ¸·Î ##################################################
function goTop() {
	window.scrollTo(0, 0);
}

// ÀÌ¹ÌÁö ¹Ì¸®º¸±â ##################################################
function previewImage(obj, imgId) {
	var objImg = document.getElementById(imgId);

	if (obj.value.stripspace() == "") return;

	var ext = getFileExt(obj.value).toUpperCase();

	if (ext == 'JPG' || ext == 'GIF' || ext == 'BMP' || ext == 'PNG') objImg.src = obj.value;
}

// ÀÌ¹ÌÁö »çÀÌÁî ÁÙÀÌ±â ##################################################
function resizeImage(objImg, limitId) {
	var objParent = objImg.parentNode;
	var imgWidth = parseInt(objImg.width, 10);
	var fixWidth = imgWidth;

	if (typeof limitId == 'undefined') return;

	while (objParent) {
		if (objParent && objParent.id == limitId) {
			fixWidth = objParent.clientWidth;
			break;
		}
		objParent = objParent.offsetParent;
	}

	if (imgWidth > fixWidth) {
		objImg.width = fixWidth;
	}
}

function resizeImageAll(limitId) {
	var objLimit = document.getElementById(limitId);
	if (objLimit) {
		var fixWidth = objLimit.clientWidth;
		var arrImgs = objLimit.getElementsByTagName("IMG");
		for (var i=0, len=arrImgs.length; i<len; i++) {
			if (parseInt(arrImgs[i].width, 10) > fixWidth) {
				arrImgs[i].width = fixWidth;
			}
		}
	}
}

// IFRAME RESIZE ÇÔ¼ö ##################################################
function resizeFrame(iframeWindow, minWidth, minHeight, fixWidth, fixHeight) {
	if (!iframeWindow.name) return false;

	var iframeElement = document.getElementById(iframeWindow.name);
	var resizeWidth = 0;
	var resizeHeight = 0;

	minWidth = (typeof minWidth != 'undefined') ? parseInt(minWidth, 10) : 0;
	minHeight = (typeof minHeight != 'undefined') ? parseInt(minHeight, 10) : 0;
	fixWidth = (typeof fixWidth != 'undefined') ? parseInt(fixWidth, 10) : 0;
	fixHeight = (typeof fixHeight != 'undefined') ? parseInt(fixHeight, 10) : 0;

	if (document.all) { // ie
		if (iframeWindow.document.compatMode && iframeWindow.document.compatMode != 'BackCompat') {
			resizeWidth = iframeWindow.document.documentElement.scrollWidth;
			resizeHeight = iframeWindow.document.documentElement.scrollHeight;
		}
		else {
			resizeWidth = iframeWindow.document.body.scrollWidth;
			resizeHeight = iframeWindow.document.body.scrollHeight;
		}
	}
	else {
		resizeWidth = iframeWindow.document.body.scrollWidth;
		resizeHeight = iframeWindow.document.body.scrollHeight;
	}

	if (minWidth > 0 && resizeWidth < minWidth) resizeWidth = minWidth;			// ÃÖ¼Ò Æø
	if (minHeight > 0 && resizeHeight < minHeight) resizeHeight = minHeight;		// ÃÖ¼Ò ³ôÀÌ

	if (fixWidth > 0) resizeWidth = fixWidth;		// °íÁ¤ Æø
	if (fixHeight > 0) resizeHeight = fixHeight;	// °íÁ¤ ³ôÀÌ

	if (fixWidth > -1) iframeElement.style.width = resizeWidth + 'px';
	if (fixHeight > -1) iframeElement.style.height = resizeHeight + 'px';
}

// ÇöÀç ÀÌº¥Æ®°´Ã¼ Index °¡Á®¿À±â ##################################################
function getDisObjIdx(obj) {
	var i = 0;
	var result = 0;

	var arrTag = document.getElementsByTagName('*');

	if (obj.sourceIndex) {
		while (arrTag[i].sourceIndex < obj.sourceIndex) {
			if (arrTag[i].id == obj.id) ++result;
			++i;
		}
	}
	else if (obj.compareDocumentPosition) {
		while ((arrTag[i].compareDocumentPosition(obj) & 6) - 3 > 0) {
			if (arrTag[i].id == obj.id) ++result;
			++i;
		}
	}

	return result;
}

// Ã¼Å©¹Ú½º ÀüÃ¼¼±ÅÃ ##################################################
function checkCbAll(cbList, isChecked) {
	if (cbList) {
		if (typeof(cbList.length) == "undefined") {
			if (!cbList.disabled) cbList.checked = isChecked;
		}
		else {
			for (var i=0; i<cbList.length; i++) {
				if (cbList[i].type.toUpperCase() == 'CHECKBOX') {
					if (cbList[i].value.stripspace() != "" && !cbList[i].disabled) {
						cbList[i].checked = isChecked;
					}
				}
			}
		}
	}
}

// ÅØ½ºÆ® ±æÀÌ È®ÀÎ (ÀÏ¹Ý) ##################################################
function checkTextLen(obj, mLen) {
	if (obj.value.length > mLen){
		alert("1~"+mLen+"ÀÚ±îÁö ÀÔ·ÂÀÌ °¡´ÉÇÕ´Ï´Ù.");
		obj.value = obj.value.substring(0, mLen);
		obj.focus();
		return false;
	}

	return true;
}

// ÅØ½ºÆ® ±æÀÌ È®ÀÎ (Byte) ##################################################
function checkTextLenByte(obj, mLen) {
	var i, len;
	var byteLen = 0;
	var value = obj.value;

	for (i=0, len=value.length; i<len; i++) {
		++byteLen;

		if ((value.charCodeAt(i) < 0) || (value.charCodeAt(i) > 127)) ++byteLen;

		if (byteLen > mLen) {
			alert("1~"+(mLen / 2)+"ÀÚÀÇ ÇÑ±Û, ¶Ç´Â 2~"+mLen+"ÀÚÀÇ ¿µ¹®, ¼ýÀÚ, ¹®Àå±âÈ£·Î ÀÔ·ÂÀÌ °¡´ÉÇÕ´Ï´Ù.");
			obj.value = value.substring(0, i);
			obj.focus();
			return false;
		}
	}

	return true;
}

// °´Ã¼ Offset °¡Á®¿À±â ##################################################
function getOffset(obj) {
	var objOffset = { left : 0, top : 0 };
	var objOffsetParent = obj.offsetParent;

	objOffset.left = parseInt(obj.offsetLeft, 10);
	objOffset.top = parseInt(obj.offsetTop, 10);

	while (objOffsetParent) {
		objOffset.left += parseInt(objOffsetParent.offsetLeft, 10);
		objOffset.top += parseInt(objOffsetParent.offsetTop, 10);

		objOffsetParent = objOffsetParent.offsetParent;
	}

	return objOffset;
}

// ÅØ½ºÆ® Byte ±æÀÌ °¡Á®¿À±â ##################################################
function getTextByte(value) {
	var i, len;
	var byteLen = 0;

	for (i=0, len=value.length; i<len; i++) {
		if (escape(value.charAt(i)).length >= 4) {
			byteLen += 2;
		}
		else if (escape(value.charAt(i)) != "%0D") {
			++byteLen;
		}
	}

	return byteLen;
}

// ÀÔ·Â ¹®ÀÚ±æÀÌ È®ÀÎÈÄ ´ÙÀ½Ç×¸ñÀ¸·Î Æ÷Ä¿½º ¿Å±â±â ##################################################
function goNextFocusChk(obj, len, next_item) {
	if (obj.value.stripspace().length == len){
		next_item.focus();
	}
}

// ¿µ¹® ¹®ÀÚ¿­ È®ÀÎ ##################################################
function strEngCheck(value){
	var i;

	for(i=0;i<value.length-1;i++){
		// ÇÑ±Û Ã¼Å© (ÇÑ±Û ASCIIÄÚµå : 12593ºÎÅÍ)
		if (value.charCodeAt(i) > 12592) return false;
		// °ø¹é Ã¼Å©
		if (value.charAt(i) == " ") return false;
	}
	return true;
}

// ÆÄÀÏ¸í È®ÀÎ ##################################################
function checkFileName(obj) {
	var result = false;

	if (obj.value.stripspace() != "") {
		var fidx = obj.value.lastIndexOf("\\")+1;
		var filename = obj.value.substr(fidx, obj.value.length);
		result = strEngCheck(filename);
	}

	if (!result) {
		alert("ÆÄÀÏ¸íÀ» ¹Ýµå½Ã ¿µ¹® ¶Ç´Â ¼ýÀÚ·Î ÇØÁÖ¼¼¿ä.");
		obj.focus();
		return false;
	}
	return true;
}

// ÆÄÀÏ È®ÀåÀÚ ##################################################
function getFileExt(value) {
	if (value != "") {
		var fidx = value.lastIndexOf("\\")+1;
		var filename = value.substr(fidx, value.length);
		var eidx = filename.lastIndexOf(".")+1;

		return filename.substr(eidx, filename.length);
	}
}

// ÆÄÀÏÈ®ÀåÀÚ È®ÀÎ ##################################################
function checkFileExt(obj, exts, errMsg) {
	var arrExt = exts.toLowerCase().split(",");
	var result = false;

	if (obj.value.stripspace() != "") {
		var ext = getFileExt(obj.value).toLowerCase();

		for (var i=0; i<arrExt.length; i++) {
			if (arrExt[i].trim() == ext) result = true;
		}
	}

	if (!result) {
		alert(errMsg);
		obj.focus();
		return false;
	}
	return true;
}

// ¿µ¹®/¼ýÀÚ È¥¿ë È®ÀÎ ##################################################
function checkEngNum(str) {
	var RegExpE = /[a-zA-Z]/i;
	var RegExpN = /[0-9]/;

	return (RegExpE.test(str) && RegExpN.test(str)) ? true : false;
}

// Æ¯¼ö¹®ÀÚ È®ÀÎ ##################################################
/*function checkSpecialChar(value) {
	var specialChar = "`~!@#$%^&*_+=|\\[]{}:;,<.>/?'\"";
	for (var i=0, len=specialChar.length; i<len; i++) {
		if (value.indexOf(specialChar.substr(i, 1)) != -1) return true;
	}
	return false;
}*/
function checkSpecialChar(expression)
{
	 var strSpecial = " `~!@#$%^&*()_+|\;\\/:=-<>.'\" ";   // Æ¯¼ö¹®ÀÚ
	
		 for(i=0;i<expression.length;i++)
			{
			for(j=0;j<strSpecial.length;j++)
			{
				if(expression.charAt(i) == strSpecial.charAt(j))
				{
				return false;
				}
		}
	 }
}

// ¾ÆÀÌµð È®ÀÎ ##################################################
function checkID(value, min, max) {
	var RegExp = /^[a-zA-Z0-9_]*$/i;
	var returnVal = RegExp.test(value) ? true : false;
	if (typeof(min) != "undefined" && value.length < min) returnVal = false;
	if (typeof(max) != "undefined" && value.length > max) returnVal = false;
	return returnVal;
}

// ºñ¹Ð¹øÈ£ È®ÀÎ ##################################################
function checkPass(value, min, max) {
	var RegExp = /^[a-zA-Z0-9]*$/i;
	var returnVal = RegExp.test(value) ? true : false;
	if (typeof(min) != "undefined" && value.length < min) returnVal = false;
	if (typeof(max) != "undefined" && value.length > max) returnVal = false;
	return returnVal;
}

// ¼ýÀÚ È®ÀÎ ##################################################
function checkNum(value, isDec) {
	var RegExp;

	if (!isDec) isDec = false;
	RegExp = (isDec) ? /^-?[\d\.]*$/ : /^-?[\d]*$/;

	return RegExp.test(value)? true : false;
}

// ÀÌ¸ÞÀÏ È®ÀÎ ##################################################
function checkEmail(email) {
	if (email.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1) {
		return true;
	}
	else {
		return false;
	}
}

// URL È®ÀÎ ##################################################
function checkUrl(url) {
	var exp = new RegExp("^(http|https)\:\/\/");
	if (exp.test(url.toLowerCase())) {
		return true;
	}
	else {
		return false;
	}
}

// °ø¹é È®ÀÎ ##################################################
function checkEmpty(obj) {
	if (obj.value.stripspace() == "") {
		return true;
	}
	else {
		return false;
	}
}

// Radio(CheckBox) ¼³Á¤°ª °¡Á®¿À±â ##################################################
function getRadioVal(obj) {
	var i, value = "";

	if (obj) {
		if (typeof(obj.length) == "undefined") {
			if (obj.checked) {
				value = obj.value;
			}
		}
		else {
			for (i=0; i<obj.length; i++) {
				if (obj[i].checked) {
					value = obj[i].value;
					break;
				}
			}
		}
	}
	return value;
}

// Radio ¼³Á¤ÇÏ±â ##################################################
function setRadioVal(obj, value) {
	var i;

	if (obj) {
		if (typeof(obj.length) == "undefined") {
			if (obj.value == value) {
				obj.checked = true;
			}
		}
		else {
			for(i=0; i<obj.length; i++) {
				if (obj[i].value == value) {
					obj[i].checked = true;
					break;
				}
			}
		}
	}
}

// Radio Disabled ¼³Á¤ÇÏ±â ##################################################
function setRadioDisabled(obj, value, disabled) {
	var i;

	if (obj) {
		if (typeof(obj.length) == "undefined") {
			if (obj.value == value) {
				obj.disabled = disabled;
			}
		}
		else {
			for(i=0; i<obj.length; i++) {
				if (obj[i].value == value) {
					obj[i].disabled = disabled;
					break;
				}
			}
		}
	}
}

// Form Disabled ÀüÃ¼ ¼³Á¤ÇÏ±â ##################################################
function setRadioDisabledAll(obj, disabled) {
	var i;

	if (obj) {
		if (typeof(obj.length) == "undefined") {
			obj.disabled = disabled;
		}
		else {
			for(i=0; i<obj.length; i++) {
				obj[i].disabled = disabled;
			}
		}
	}
}

// Select ¼³Á¤°ª °¡Á®¿À±â ##################################################
function getSelectVal(obj) {
	var value = "";
	var idx = obj.selectedIndex;

	if (idx >= 0){
		value = obj.options[idx].value;
	}

	return value;
}

// Select Option Ãß°¡ ##################################################
function selectAddList(obj, text, value) {
	var newOpt = document.createElement("OPTION");
	newOpt.text = text;
	newOpt.value = value;
	obj.options.add(newOpt);
}

// Select Option ÀüÃ¼»èÁ¦ ##################################################
function selectRemoveAll(obj) {
	for (var i=obj.length-1; i>=0; i--) {
		selectRemoveList(obj, i);
	}
}

// Select Option »èÁ¦ ##################################################
function selectRemoveList(obj, i) {
	obj.remove(i);
}

// Hidden Ãß°¡ ##################################################
function addHidden(f, name, value) {
	var input = document.createElement('INPUT');
	input.type = 'HIDDEN';
	input.name = name;
	input.value = value;
	f.appendChild(input);
}

// ¼ýÀÚ ¹®ÀÚ¿­¿¡¼­ ¹®ÀÚ¿­ Á¦°Å ##################################################
function stripCharFromNum(value, isDec) {
	var i;
	var minus = "-";
	var nums = "1234567890"+((isDec) ? "." : "");
	var result = "";

	for(i=0; i<value.length; i++) {
		numChk = value.charAt(i);
		if (i == 0 && numChk == minus) {
			result += minus;
		}
		else {
			for(j=0; j<nums.length; j++) {
				if(numChk == nums.charAt(j)) {
					result += nums.charAt(j);
					break;
				}
			}
		}
	}
	return result;
}

// ÄÞ¸¶(,) Á¦°Å ##################################################
function stripComma(str) {
    var re = /,/g;
    return str.replace(re, "");
}

// ¼ýÀÚ 3ÀÚ¸®¼ö¸¶´Ù ÄÞ¸¶(,) Âï±â ##################################################
function formatComma(num, pos) {
	if (!pos) pos = 0;  //¼Ò¼ýÁ¡ ÀÌÇÏ ÀÚ¸®¼ö
	var re = /(-?\d+)(\d{3}[,.])/;

	var strNum = stripComma(num.toString());
	var arrNum = strNum.split(".");

	arrNum[0] += ".";

    while (re.test(arrNum[0])) {
        arrNum[0] = arrNum[0].replace(re, "$1,$2");
    }

	if (arrNum.length > 1) {
		if (arrNum[1].length > pos) {
			arrNum[1] = arrNum[1].substr(0, pos);
		}
		return arrNum.join("");
	}
	else {
		return arrNum[0].split(".")[0];
	}
}

// °­Á¦ ¼Ò¼öÁ¡ ÀÌÇÏ 0Ã¤¿ì±â ##################################################
// num: ´ë»ó¼ýÀÚ, pos: Ãâ·ÂÀ» ¿øÇÏ´Â ¼Ò¼öÁ¡ÀÚ¸®¼ö
function setRoundZero(num, pos) {
	var strNum = stripComma(num.toString());
	var arrNum = strNum.split(".");

	if (arrNum.length <= 1) {
		num = arrNum[0]+".";
		for (var i=0; i<pos; i++) {
			num += "0";
		}
	}
	else {
		num = setRound(num, pos);
	}
	return num;
}

// ¼Ò¼öÁ¡ ÀÌÇÏ ¹Ý¿Ã¸² ##################################################
// num: ´ë»ó¼ýÀÚ, pos:Ãâ·ÂÀ» ¿øÇÏ´Â ¼Ò¼öÁ¡ÀÚ¸®¼ö
function setRound(num, pos) {
	if(!pos) pos = 0;
	return (Math.round(num*(Math.pow(10,pos))))/(Math.pow(10, pos));
}

// ¼Ò¼öÁ¡ ÀÌÇÏ ÀÚ¸®¼ö È®ÀÎ ##################################################
// num: ´ë»ó¼ýÀÚ, pos: Èñ¸Á ¼Ò¼öÁ¡ ÀÌÇÏÀÚ¸®¼ö
function checkRound(num, len) {
	var strNum = stripComma(num.toString());
	var arrNum = strNum.split(".");

	if (arrNum.length > 1 && arrNum[1].length > len) return false;
	else return true;
}

// ¼ýÀÚ ¹®ÀÚ¿­¿¡¼­ "0" ½ÃÀÛ¹®ÀÚ Á¦°Å ##################################################
function removePreZero(str) {
	var i, result;

	if (str == "0") return str;

	for (i = 0; i<str.length; i++) {
		if (str.substr(i,1) != "0") break;
	}

	result = str.substr(i, str.length-i);
	return result;
}

// ÅëÈ­ÇüÅÂ·Î º¯È¯ ##################################################
function toCurrency(obj) {
	if (obj.disabled) return false;

	var num = obj.value.stripspace();
	if (num == "") return false;

	if (!checkNum(stripComma(num))) {
		//alert ("¼ýÀÚ¸¸ ÀÔ·ÂÇØÁÖ¼¼¿ä.");
		num = stripCharFromNum(num, false);
		obj.blur(); obj.focus();
	}
	num = stripCharFromNum(stripComma(num), false);
	num = removePreZero(num);
	obj.value = formatComma(num);
}

// ¼ýÀÚÀÔ·Â È®ÀÎ ##################################################
function numberOnly(obj, isDec) {
	if (!isDec) isDec = false;
	if (obj.disabled) return false;

	var num = obj.value.stripspace();
	if (num == "") return false;

	if (!checkNum(num, isDec)) {
		//alert ("¼ýÀÚ¸¸ ÀÔ·ÂÇØÁÖ¼¼¿ä.");
		num = stripCharFromNum(num, isDec);
		obj.blur(); obj.focus();
	}
	num = stripCharFromNum(stripComma(num), isDec);

	var arrNum = num.split(".");
	if (arrNum.length > 1) {
		obj.value = arrNum[0]+"."+arrNum[1];
	}
	else {
		obj.value = arrNum[0];
	}
}

// ¼ýÀÚ Áõ°¨ Ã³¸® ##################################################
function controllNum(obj, mode, isminus) {
	var num = obj.value;
	if (!isminus) isminus = 0;

	num = (num.stripspace() == "") ? 0 : num;
	num = (isNaN(num)) ? 0 : parseInt(num, 10);

	if (mode == '+') ++num;
	else --num;

	if (isminus != 1 && num < 0) num = 0;

	obj.value = num;
}


function initMoving(target, position, topLimit, btmLimit) {
	if (!target)
		return false;
	if (document.getElementById('waterMark').scrollHeight.value < 600)
	    return false;
	var obj = target;
	obj.initTop = position;
	obj.topLimit = topLimit;
	obj.bottomLimit = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight) - btmLimit - obj.offsetHeight;

	obj.style.position = "absolute";
	obj.top = obj.initTop;
	obj.left = obj.initLeft;

	if (typeof(window.pageYOffset) == "number") {
		obj.getTop = function() {
			return window.pageYOffset;
		}
	} else if (typeof(document.documentElement.scrollTop) == "number") {
		obj.getTop = function() {
			return Math.max(document.documentElement.scrollTop, document.body.scrollTop);
		}
	} else {
		obj.getTop = function() {
			return 0;
		}
	}

	if (self.innerHeight) {
		obj.getHeight = function() {
			return self.innerHeight;
		}
	} else if(document.documentElement.clientHeight) {
		obj.getHeight = function() {
			return document.documentElement.clientHeight;
		}
	} else {
		obj.getHeight = function() {
			return 500;
		}
	}

	obj.move = setInterval(function() {
		if (obj.initTop > 0) {
			pos = obj.getTop() + (obj.initTop-100);
			//pos = obj.getTop() + obj.initTop;
		} else {
			pos = obj.getTop() + obj.getHeight() + obj.initTop;
			//pos = obj.getTop() + obj.getHeight() / 2 - 15;
		}

		if (pos > obj.bottomLimit)
			pos = obj.bottomLimit;
		if (pos < obj.topLimit)
			pos = obj.topLimit;

		interval = obj.top - pos;
		obj.top = obj.top - interval / 3;
		obj.style.top = obj.top + "px";
	}, 30)
}
