String.prototype.trim = function(){
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

function containsCharsOnly(input,chars) {
	for (var inx = 0; inx < input.value.length; inx++) {
		if (chars.indexOf(input.value.charAt(inx)) == -1)
			return false;
	}
	return true;
}

function containsChars(input,chars) {
	for (var inx = 0; inx < input.value.length; inx++) {
		if (chars.indexOf(input.value.charAt(inx)) != -1)
			return true;
	}
	return false;
}

function isNum(input) {
	
	var chars = "0123456789-";
	return containsCharsOnly(input,chars);
}

function isAlNum(input) { 
 var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    return containsCharsOnly(input,chars);
}

function isUserId(input) { 
 var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_";
    return containsCharsOnly(input,chars);
}

function isEmail(str) {
	var supported = 0;
	
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		
		if (tempReg.test(tempStr)) supported = 1;
	}
	
	if (!supported) 
		return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
		
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	
	return (!r1.test(str) && r2.test(str));
} 

function CheckLogin( frm )
{
	if( frm.fID.value.length < 4 || !isAlNum(frm.fID) )
	{
		alert('ID ¸¦ Á¤È®È÷ ÀÔ·ÂÇØ ÁÖ¼¼¿ä');
		return false;		
	}
	
	if( frm.fPW.value.length < 4 || !isAlNum(frm.fPW) )
	{
		alert('ºñ¹Ð¹øÈ£¸¦ Á¤È®È÷ ÀÔ·ÂÇØ ÁÖ¼¼¿ä');
		return false;		
	}

	return true;
}

function CheckSearch( frm )
{
	if( frm.searchstring.value.length < 2 )
	{
		alert('°Ë»ö¾î¸¦ 2ÀÚ ÀÌ»ó ÀÔ·ÂÇØÁÖ¼¼¿ä.');
		return false;
	}

	return true;
}

function CheckALL( frm, checkobj, groups )
{
	var objs = frm[groups];

	if( typeof objs == "undefined" ) return;
	if( typeof objs.length == "undefined" )
	{
		objs.checked = checkobj.checked;
		return;
	}

	if( checkobj.checked )
	{
		for( i=0; i<objs.length;i++ )
		{
			objs[i].checked = true;	
		}
	}
	else
	{
		for( i=0; i<objs.length;i++ )
		{
			objs[i].checked = false;	
		}
	}
}

function CheckALL2( frm, bcheck, groups )
{
	var objs = frm[groups];

	if( typeof objs == "undefined" ) return;
	if( typeof objs.length == "undefined" )
	{
		objs.checked = bcheck;
		return;
	}

	if( bcheck )
	{
		for( i=0; i<objs.length;i++ )
		{
			objs[i].checked = true;	
		}
	}
	else
	{
		for( i=0; i<objs.length;i++ )
		{
			objs[i].checked = false;	
		}
	}
}

function OpenCenterWindow( url , cw, ch , wname)
{
	sw=screen.availWidth;
	sh=screen.availHeight;
	
	px=(sw-cw)/2;
	py=(sh-ch)/2;

	test=window.open(url,wname,'left='+px+',top='+py+',width='+cw+',height='+ch+',toolbar=no,menubar=no,status=no,scrollbars=yes,resizable=no');
}

function OpenCenterWindowOpt( url , cw, ch , wname, opt )
{
	sw=screen.availWidth;
	sh=screen.availHeight;
	
	px=(sw-cw)/2;
	py=(sh-ch)/2;

	test=window.open(url,wname,'left='+px+',top='+py+',width='+cw+',height='+ch+',' + opt);
}

function GoAfterConfirm(url,message)
{
	if(confirm(message)){
	
	window.location=url;
	return true;
	}
return false;
}

function m2c(data)
{
    var i1 = i2 = i3 = j = k = ptr1 = 0, last_len;
    var real_val = "", str1, str2, div = 3, head, tail;
	var minus = 0;
	if ( data < 0 ) {
		minus = 1;
		data = data * (-1) + "";
	}

    if ( data.indexOf(".") ) {
        head = data.substring ( 0 , data.indexOf(".") );
        tail = data.substring ( data.indexOf(".") + 1, data.length );
        last_len = tail.length;
    }
    if ( head.length == 0 ) {
        head = tail; tail = ""; last_len = 0;
    }

    i1 = head.length / div; // 5/div
    i2 = head.length % div;

    if ( i2 == 0 ) {
            i2 = div;
            k = Math.floor ( i1 ) - 1;
    }
    else
            k = Math.floor ( i1 );

    real_val = head.substring ( 0, i2 );

    for ( j = 0; j < k ; j++ )
    {
        i3 = ( j * div ) + i2;
        real_val = real_val + "," + head.substring ( i3, i3 + div );
    }

    if ( last_len > 0 )
        real_val = real_val + "." + tail;

	if ( minus == 1 )
		real_val = "-" + real_val;

    return real_val;
}

function c2m ( price_tmp, deli )
{
    var i, real_val = "";

    for ( i=0 ; i < price_tmp.length ; i++ ) {
        if ( price_tmp.charAt(i) != "," && price_tmp.charAt(i) != " " ) {
            real_val = real_val + price_tmp.charAt(i);
        }
    }

   return real_val;
}

function FindCompany()
{
	OpenCenterWindowOpt( '/com/p_company_addr.php',800,600,'FindCompany','toolbar=no,menubar=no,status=no,scrollbars=1,resizable=no');
}

function FindCustomer()
{
	OpenCenterWindowOpt( '/com/p_person_addr.php',800,700,'FindCustomer','toolbar=no,menubar=no,status=no,scrollbars=1,resizable=no');
}

//use option 2 when you need only name
function FindCompany2()
{
	OpenCenterWindowOpt( '/com/p_company_addr2.php',800,600,'FindCompany','toolbar=no,menubar=no,status=no,scrollbars=1,resizable=no');
}

function FindCustomer2()
{
	OpenCenterWindowOpt( '/com/p_person_addr2.php',800,700,'FindCustomer','toolbar=no,menubar=no,status=no,scrollbars=1,resizable=no');
}

function FindCharge( num )
{
	if( num.length == 12 || num.length == 10)
	{
		OpenCenterWindowOpt( '/com/p_search_charge.php?Number=' + num ,800,510,'FindCharge','toolbar=no,menubar=no,status=no,scrollbars=1,resizable=no');
	}
	else if( num.length == 0 )
	{
		alert('°Å·¡Ã³¸¦ ¼±ÅÃÇÏ½Ã°í »ç¿ëÇÏ¼¼¿ä');
	}
	else
	{
		alert('°³ÀÎ°Å·¡Ã³¿¡¼­´Â ´ã´çÀÚ¸¦ ¼±ÅÃÇÒ ¼ö ¾ø½À´Ï´Ù');
	}
}

	function ClearMemo( obj,clflag )
	{
		if(clflag==1)
		{
			if( obj.value == obj.defaultValue )
				obj.value="";
		}
		else if(clflag==2)
		{
			if( obj.value == "" || obj.value == obj.defaultValue )
				obj.value = obj.defaultValue;
		}
	}
	
function SignFail()
{
   if ( confirm( '°øÀÎÀÎÁõ¼­ ÇÁ·Î±×·¥ÀÌ ¼³Ä¡µÇÁö ¾Ê¾Ò½À´Ï´Ù.\n°øÀÎÀÎÁõ¼­ ÇÁ·Î±×·¥À» ¼³Ä¡ÇÏ½Ã°Ú½À´Ï±î?' ))
   {
			location.href = "http://download.signgate.com/download/ews/ewsinstaller_full.exe";
   }
}	

function SendSMS( msg, cell, callback )
{
	OpenCenterWindow( '/sms/sms_send.php?charge='+cell+"&callback=" + callback + "&msg=" +msg ,400,200,'GabiaSMS');
}