/**
 * Title: common.js
 * Description: ÀÏ¹Ý JavaScript Function
 * Copyright: Copyright (c) 2004
 * Company: dntech7
 * @author cto@dnt7.com
 * @version 1.0
 */


/**
* ºê¶ó¿ìÁ®ÀÇ Å¸ÀÔÀ» ¼³Á¤
*/
var ns = (document.layers)? true:false;
var ie = (document.all)? true:false;
var doc = (ie)? document.all : document;

/**
  * ÀÔ·Â °ªÀÌ Object ÀÎÁö¸¦ ¹ÝÈ¯.
  * returns true if a is an object, and array, or a function.
  * It returns false if a is a string, a number, a boolean, or null, or undefined.
  */
function isObject(input) {
	    return (input && typeof input == 'object') || isFunction(input);
}

/**
  * ÀÔ·Â °ªÀÌ Function ÀÎÁö¸¦ ¹ÝÈ¯.
  */
function isFunction(input) {
	    return typeof input == 'function';
}

/**
* ÇÑ±ÛÀ» 2byte ·Î ÀÎ½ÄÇØ¼­ ±æÀÌ¸¦ ±¸ÇÔ
*/
function getByteLength(value) {
	var byteLength = 0;
	for(var inx = 0; inx < value.length; inx++){
		var oneChar = escape(value.charAt(inx));
		if(oneChar.length == 1) byteLength ++;
		else if(oneChar.indexOf("%u") != -1) byteLength += 2;
		else if(oneChar.indexOf("%") != -1) byteLength += oneChar.length/3;
	}
	return byteLength;
}

/**
* ÀÔ·Â°ªÀÌ NULLÀÎÁö Ã¼Å©
*/
function isNull(value) {
   if (value == null || value == "") {
       return true;
   }
   return false;
}

/**
* ÀÔ·Â°ª¿¡ ½ºÆäÀÌ½º ÀÌ¿ÜÀÇ ÀÇ¹ÌÀÖ´Â °ªÀÌ ÀÖ´ÂÁö Ã¼Å©
*/
function isEmpty(value) {
   if (value == null || value.replace(/ /gi,"") == "") {
       return true;
   }
   return false;
}

/**
* ÀÔ·Â°ª¿¡ Æ¯Á¤ ¹®ÀÚ(chars)°¡ ÀÖ´ÂÁö Ã¼Å©
* Æ¯Á¤ ¹®ÀÚ¸¦ Çã¿ëÇÏÁö ¾ÊÀ¸·Á ÇÒ ¶§ »ç¿ë
* ex) if (containsChars(form.name,"!,*&^%$#@~;")) {
*         alert("ÀÌ¸§ ÇÊµå¿¡´Â Æ¯¼ö ¹®ÀÚ¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.");
*     }
*/
function containsChars(value,chars) {
   for (var inx = 0; inx < value.length; inx++) {
      if (chars.indexOf(value.charAt(inx)) != -1)
          return true;
   }

   return false;
}

/**
* ÀÔ·Â°ªÀÌ Æ¯Á¤ ¹®ÀÚ(chars)¸¸À¸·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
* Æ¯Á¤ ¹®ÀÚ¸¸ Çã¿ëÇÏ·Á ÇÒ ¶§ »ç¿ë
* ex) if (!containsCharsOnly(form.blood,"ABO")) {
*         alert("Ç÷¾×Çü ÇÊµå¿¡´Â A,B,O ¹®ÀÚ¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.");
*     }
*/
function containsCharsOnly(value,chars) {
   for (var inx = 0; inx < value.length; inx++) {
      if (chars.indexOf(value.charAt(inx)) == -1)
          return false;
   }
   return true;
}

/**
* ÀÔ·Â°ªÀÌ ¾ËÆÄºªÀÎÁö Ã¼Å©
* ¾Æ·¡ isAlphabet() ºÎÅÍ isNumComma()±îÁöÀÇ ¸Þ¼Òµå°¡
* ÀÚÁÖ ¾²ÀÌ´Â °æ¿ì¿¡´Â var chars º¯¼ö¸¦
* global º¯¼ö·Î ¼±¾ðÇÏ°í »ç¿ëÇÏµµ·Ï ÇÑ´Ù.
* ex) var uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
*     var lowercase = "abcdefghijklmnopqrstuvwxyz";
*     var number    = "0123456789";
*     function isAlphaNum(input) {
*         var chars = uppercase + lowercase + number;
*         return containsCharsOnly(input,chars);
*     }
*/
function isAlphabet(value) {
   var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ªÀÌ ¾ËÆÄºª ´ë¹®ÀÚÀÎÁö Ã¼Å©
*/
function isUpperCase(value) {
   var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ªÀÌ ¾ËÆÄºª ¼Ò¹®ÀÚÀÎÁö Ã¼Å©
*/
function isLowerCase(value) {
   var chars = "abcdefghijklmnopqrstuvwxyz";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ª¿¡ ¼ýÀÚ¸¸ ÀÖ´ÂÁö Ã¼Å©
*/
function isNumber(value) {
   var chars = "0123456789";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ªÀÌ ¾ËÆÄºª,¼ýÀÚ·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
*/
function isAlphaNum(value) {
   var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ªÀÌ ¼ýÀÚ,´ë½Ã(-)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
*/
function isNumDash(value) {
   var chars = "-0123456789";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ªÀÌ ¼ýÀÚ,ÄÞ¸¶(,)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
*/
function isNumComma(value) {
   var chars = ",0123456789";
   return containsCharsOnly(value,chars);
}

/**
* ÀÔ·Â°ª¿¡¼­ ÄÞ¸¶¸¦ ¾ø¾Ø´Ù.
*/
function removeComma(value) {
   return value.replace(/,/gi,"");
}

/**
* ÀÔ·Â°ªÀÌ »ç¿ëÀÚ°¡ Á¤ÀÇÇÑ Æ÷¸Ë Çü½ÄÀÎÁö Ã¼Å©
* ÀÚ¼¼ÇÑ format Çü½ÄÀº ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ 'regular expression'À» ÂüÁ¶
*/
function isValidFormat(value,format) {
   if (value.search(format) != -1) {
       return true; //¿Ã¹Ù¸¥ Æ÷¸Ë Çü½Ä
   }
   return false;
}

/**
* ÀÔ·Â°ªÀÌ ÀÌ¸ÞÀÏ Çü½ÄÀÎÁö Ã¼Å©
*/
function isValidEmail(value) {
   var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
   return isValidFormat(value, format);
}

/**
* ÀÔ·Â°ªÀÌ ÀüÈ­¹øÈ£ Çü½Ä(¼ýÀÚ-¼ýÀÚ-¼ýÀÚ)ÀÎÁö Ã¼Å©
*/
function isValidPhone(value) {
   var format = /^(\d+)-(\d+)-(\d+)$/;
   return isValidFormat(value,format);
}

/**
* ÀÔ·Â°ªÀÇ ±æÀÌ¸¦ Ã¼Å©ÇÔ
* minÀÌ»ó max ÀÌÇÏÀÌ¸é true ¹ÝÈ¯
*/
function isLength(value, min, max)
{
	var length=value.length;

	if(length<min)
		return false;
	else if(length>max)
		return false;
	else
		return true;
}


/**
 * alert and redirect 
 */
function alertAndRedirect(message, ojumpurl)
{
	alert(message);
	self.location=ojumpurl;
}


/**
 * Scroll bar °¡ ¾ø´Â À©µµ¿ì¸¦ openÇÑ´Ù. 
 */
function open_window(url,popNm,width,height)
{
    window.open(url,popNm,"width="+width+",height="+height+",scrollbars=no");
}

/**
 * Scroll bar °¡ ÀÖ´Â À©µµ¿ì¸¦ openÇÑ´Ù. 
 */
function open_window_scroll(url,popNm,width,height)
{
    window.open(url,popNm,"width="+width+",height="+height+",scrollbars=yes");
}

/**
 * confirm ÇÑ ÈÄ¿¡, ÁÖ¾îÁø url ·Î ºÐ±âÇÑ´Ù. 
 */
function myconfirm(msg,url){
    if(confirm(msg)){
	    self.location = url;
	}
}

/**
 * blink()ÀÇ subfunction À¸·Î ´Üµ¶À¸·Î ½ÇÇàµÇÁö ¾Ê´Â´Ù.
 * 150ms ´ÜÀ§·Î ½ÇÇàµÇ¸ç 's' ¶ó´Â object ¸¦ blink ½ÃÅ²´Ù 
 */
function _count() {

	var now = new Date();
	var seconds = now.getSeconds();
	if(seconds%2==1) {
		s.style.visibility="visible";
	} else { 
		s.style.visibility="hidden";
	}

	setTimeout("_count()",150);
}
/**
 * Text ¸¦ ±ôºýÀÌ¸ç, _count() ¿Í ¿¬µ¿µÇ¾î µ¹¾Æ°£´Ù. ( Netscape ÀÇ <blink> ÅÂ±×¸¦ simulate ) 
 */
function blink(text) {
	if(document.layers) {
		document.write('<span class=normal><blink>'+text+'</blink></span>');
	} 
	else { 
		document.write('<span class=normal id="s">'+text+'</span>');
	}
	_count();
}

/**
 * Cookie ¸¦ ¼ÂÆÃÇÑ´Ù. 
 */
function setCookie (name, value){  
	var argv = setCookie.arguments;  
	var argc = setCookie.arguments.length;  
	var expires = (argc > 2) ? argv[2] : null;  
	var path = (argc > 3) ? argv[3] : null;  
	var domain = (argc > 4) ? argv[4] : null;  
	var secure = (argc > 5) ? argv[5] : false;  

	document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) +  ((domain == null) ? "" : ("; domain=" + domain)) +    ((secure == true) ? "; secure" : "");
}

/**
 * Cookie °ªÀ» °¡Á®¿Â´Ù. 
 */
function getCookie(name){
    var nameOfCookie = name + "=";
    var x = 0;
    while (x <= document.cookie.length){
        var y = (x+nameOfCookie.length);
        if ( document.cookie.substring( x, y ) == nameOfCookie ) {
            if ( (endOfCookie=document.cookie.indexOf( ";", y )) == -1 )
                endOfCookie = document.cookie.length;
            return unescape( document.cookie.substring( y, endOfCookie ) );
        }
        x = document.cookie.indexOf( " ", x ) + 1;
        if ( x == 0 )
            break;
    }
    return "";
}

/**
 * ÀÌ¹ÌÁöÀÇ src¸¦ ¿øº»À¸·Î º¹¿øÇÑ´Ù.  
 */
function restore(object){
	if(object){
		object.src=object.altsrc;
		object.altsrc=null;
	}
}

/**
 * ÀÌ¹ÌÁöÀÇ src ¸¦ º¯°æÇÑ´Ù. 
 */
function change(object, dest){
	if(object){
		object.altsrc = object.src;
		object.src = dest;
	}
}

/**
 * ÁÖ¾îÁø ÅØ½ºÆ®¸¦ Å¬¸³º¸µå·Î º¹»çÇÑ´Ù. ÀÍ½ºÇÃ·Î¾î¿¡¼­¸¸ µ¿ÀÛ 
 */
function copy(copyStr){
	if(window.clipboardData.setData) {
		fResult = window.clipboardData.setData("Text", copyStr);
	}
}

/**
* ¹Ý¿Ã¸²ÇÑ´Ù -- ¼Ò¼ýÁ¡ X ÀÚ¸®±îÁö ³²±è( X+1 ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸² )
*/
function round(number,X){
	return Math.round(number*Math.pow(10,X))/Math.pow(10,X);
}

/**
* Á¤¼ö¸¦ °¡°ÝÇüÅÂ·Î Ãâ·ÂÇÑ´Ù. 3ÀÚ¸®¸¶´Ù , »ðÀÔ
*/
function getPriceString(price){

	var rstr="";
	var length=0;

	price=""+price;
	length=price.length;

	if(price=='') return rstr;

	for(i=length-1; i>=0; i--)
	{
		rstr+=price.charAt(length-i-1);
		
		if(i!=0 && i%3==0)
			rstr+=",";

	}

	return rstr;
}


/**
* ±ÛÀÚ¼ö ±æÀÌ Ã¼Å©
*/
function fc_chk_byte(aro_name,ari_max)
{
	var ls_str = aro_name.value;
	var li_str_len = ls_str.length;
	var li_max = ari_max;
	var i = 0;
	var li_byte = 0;
	var li_len = 0;
	var ls_one_char = "";
	var ls_str2 = "";

	for(i=0; i< li_str_len; i++)
	{
		ls_one_char = ls_str.charAt(i);
		if (escape(ls_one_char).length > 4)
		{
			li_byte += 2;
		}else{
			li_byte++;
		}

		if(li_byte <= li_max){
			li_len = i + 1;
		}
	}

	if(li_byte > li_max){
		alert(" ±ÛÀÚ¸¦ ÃÊ°ú ÀÔ·ÂÇÒ¼ö ¾ø½À´Ï´Ù. \n ÃÊ°úµÈ ³»¿ëÀº ÀÚµ¿À¸·Î »èÁ¦ µË´Ï´Ù. ");
		ls_str2 = ls_str.substr(0, li_len);
		aro_name.value = ls_str2;
	}
	aro_name.focus(); 
}

/**
* ¸ÞÀÏ ¼±ÅÃ ÆË¾÷Ã¢ 
*/
function mailedit(){
	window.open("/servlet/dntech7.basis.ControlServlet?command=forward&forward_page=/cscenter/counsel/email.jsp","mailEdit","width=440,height=260,scrollbars=no");
}

/**
* ¼ýÀÚ¸¸ ÀÔ·ÂµÇµµ·Ï Á¦ÇÑ
*/
function onlynum(){
	var objEv = event.srcElement;
   	var chars = "0123456789";
	if(!containsCharsOnly(objEv.value,chars))
	{
		alert("¼ýÀÚ¸¸ ÀÔ·ÂÇØ ÁÖ¼¼¿ä!");
		objEv.value="";
		objEv.focus();
		return false;
	}
}
function onlynumField(objEv){
	var numPattern = /([^0-9])/;
	numPattern = objEv.value.match(numPattern);
	if(numPattern != null){
		alert("¼ýÀÚ¸¸ ÀÔ·ÂÇØ ÁÖ¼¼¿ä!");
		objEv.value="";
		objEv.focus();
		return false;
	}
}



function addComma (Cost) {

	// Cost°ªÀÌ 0º¸´ÙÀÛÀ¸¸é(À½¼öÀÌ¸é) Cost¸¦ ¾ç¼ö·Îº¯°æÇÏ°í minus°ªµµ º¯°æ
	if (Cost < 0) { Cost *= -1; var minus = true; }
	else var minus = false;


	// Cost°ª¿¡¼­ ¼Ò¼ýÁ¡À§¿Í ¾Æ·¡¸¦ ºÐ¸®ÇÏ¿© dotU/dotDº¯¼ö¿¡ÀúÀå
	// Cost°¡ ¼ýÀÚÀÌ±â ¶§¹®¿¡ ¹®ÀÚ·Î º¯È¯ÇÏ±â À§ÇØ (Cost + "") ¿¡¼­ ""À» ºÙ¿©ÁÜ
	// splitÇÔ¼ö»ç¿ë¿¹     
	// AF = abcdefg.split("c")
	// AF[0] =>ab
	// AF[1] =>defg
	var dotPos = (Cost + "").split (".");
	var dotU = dotPos [0];
	var dotD = dotPos [1];

	// dotU(¼Ò¼öÁ¡À§)¸¦ 3À¸·Î³ª´©¾î ±× ³ª¸ÓÁö¸¦ CommaFlag¿¡ÀúÀå
	// µ·¿¡ ÄÞ¸¶¸¦ Ç¥½ÃÇÒ¶§ 3ÀÚ¸® ´ÜÀ§·Î Ç¥½ÃÇÏ±â¶§¹®¿¡...
	var CommaFlag = dotU.length % 3;

	// ³ª¸ÓÁö°¡ ÀÖÀ»°æ¿ì (¿¹: 12345 ¶Ç´Â 12345678 ...)
	if (CommaFlag) {
		// out¿¡ dotU¾ÕÀÚ¸®¸¦ CommaFlag±æÀÌ¸¸Å­ ´ëÀÔ
		var out = dotU.substring (0, CommaFlag);
		// dotUÀÇ ±æÀÌ°¡ 3ÀÚ¸® ÃÊ°úÀÌ¸é out¹®ÀÚ³¡¿¡ ÄÞ¸¶¸¦ Ãß°¡
		if (dotU.length > 3) out += ",";
	} 

	// ³ª¸ÓÁö°¡ ¾øÀ»°æ¿ì(¿¹: 123  ¶Ç´Â 123456 ...)
	else var out = "";

	// dotU¹®ÀÚ¿¡¼­ CommaFlag¸¸Å­ ÀÌµ¿ÇÑÈÄ ¼¼±ÛÀÚ ´ÜÀ§·Î ÄÞ¸¶¸¦ ÂïÀ½
	for (var i = CommaFlag; i < dotU.length; i += 3) {
		out += dotU.substring (i, i + 3);
		if (i < dotU.length - 3) out += ",";
	}

	// À½¼öÀÏ°æ¿ì out º¯¼ö°ª¾Õ¿¡ "-"¸¦ Ãß°¡
	if (minus) out = "-" + out;

	// ¼Ò¼ýÁ¡ÀÌÇÏ°ªÀÌ ÀÖÀ¸¸é outº¯¼ö°ª¿¡ ¼Ò¼ýÁ¡À» Ãß°¡ÇÏ¿© ¸®ÅÏ
	if (dotD) return out + "." + dotD;
	else return out;
}





// ±Ý¾×¿¡¼­ ÄÞ¸¶¸¦ Á¦°ÅÇÑÈÄ ±×°ªÀ» µ¹·ÁÁÖ´ÂÇÔ¼ö

function delComma (Cost) {
	var retValue = "";

	// Costº¯¼ö¿¡¼­ ÄÞ¸¶ ¹®ÀÚ°¡ ÀÖÀ»°æ¿ì ÄÞ¸¶¹®ÀÚ¸¦ Á¦°ÅÇÔ
	for (i = 0; i < Cost.length; i++) {

		if (Cost.charAt (Cost.length - i -1) != ",") {
			retValue = Cost.charAt (Cost.length - i -1) + retValue;
		}
	}

	return retValue;
}

// ÀÔ·ÂÃ¢¿¡¼­ ÀÚµ¿À¸·Î ¼ýÀÚÇ¥±â(,) ·Î º¯È¯
function change_price(obj)
{
	var value=obj.value;		// ÇöÀç °´Ã¼ÀÇ °ªÀ» ±¸ÇÔ
	value=delComma(value);		// ÇöÀç °ª¿¡¼­ , ¸¦ Á¦°Å
	obj.value=addComma(value);	// ÀÚ¸´¼ö¿¡ ¸ÂÃß¾î , Ãß°¡
}

//ÆË¾÷Ã¢ Å©±â ÀÚµ¿ ¸®»çÀÌÁî
function resizePopup(){
	var winBody = window.document.body;

	// »õÃ¢ÀÇ »çÀÌÁî¿¡ ´õÇØÁÙ marginWidth¿Í marginHeight
	var marginHeight = parseInt(winBody.topMargin)+parseInt(winBody.bottomMargin);
	var marginWidth = parseInt(winBody.leftMargin)+parseInt(winBody.rightMargin);

	// »õÃ¢ÀÇ »çÀÌÁî ¼³Á¤
	var wid = winBody.scrollWidth + (winBody.offsetWidth - winBody.clientWidth) + marginWidth-5;
	var hei = winBody.scrollHeight + (winBody.offsetHeight - winBody.clientHeight) + marginHeight+10;

	// »çÀÌÁî ÀçÁ¶Á¤
	window.resizeTo(wid, hei); 
}

// parent ÁÖ¼Ò ¹Ù²Ù±â
function goParent(url)
{
	parent.location=url;
}


/**
  * ¹®ÀÚ¿­ÀÇ ¿ÞÂÊ °ø¹éÀ» Á¦°Å
  */
function left_trim(str)
{
    i = 0;
    
    // ¿ÞÂÊºÎÅÍ space °¡ ³ª¿ÀÁö ¾ÊÀ»¶§±îÁö trace
    while (i<=str.length && str.substring(i,i+1) == ' ') {
        i = i + 1;
    }
 
    return str.substring(i);
}
 
/**
  * ¹®ÀÚ¿­ÀÇ ¿À¸¥ÂÊ °ø¹éÀ» Á¦°Å
  */
function right_trim(str)
{
    i = str.length - 1;
        
    // ¿À¸¥ÂÊºÎÅÍ space °¡ ³ª¿ÀÁö ¾ÊÀ»¶§±îÁö trace
    while (i >= 0 && str.substring(i,i+1) == ' ') {
        i = i - 1;
    }
    
    return str.substring(0,i+1);
}
 
/**
  * ¹®ÀÚ¿­ÀÇ ÁÂ/¿ì °ø¹éÀ» Á¦°Å
  */
function trim(str)
{
    return left_trim(right_trim(str));
}

