 String.prototype.trim = function() {
  return this.replace(/\s/g, "");
 }
 
 String.prototype.otrim = function() {

    return this.ltrim().rtrim();
 }


 String.prototype.ltrim = function() {

  var i, j = 0;
  var objstr

  for (i = 0; i < this.length; i++) {

   if (this.charAt(i) == ' ') j = j + 1;
   else if (this.charAt(i) == '\r') j = j + 1;
   else if (this.charAt(i) == '\n') j = j + 1;
   else break;
  }

  return this.substr(j, this.length - j + 1)  
 }

 String.prototype.rtrim = function() {

  var i, j = 0;

  for (i = this.length - 1; i >= 0; i--) {

   if (this.charAt(i) == ' ') j = j + 1;
   else if (this.charAt(i) == '\r') j = j + 1;
   else if (this.charAt(i) == '\n') j = j + 1;   
   else break;
  }

  return this.substr(0, this.length - j);
 }

function GetData(www,data,resultFunc)
{
   var myAjax = new Ajax.Request(
    www,
    {method: 'get', parameters: data, onComplete: resultFunc}
    );
}

function FormSerialize(frmname)
{
	var obj = $(frmname);
	var params = Form.serialize(obj);
	return params;
}

function PostData(www,data,resultFunc)
{
   var myAjax = new Ajax.Request(
    www,
    {method: 'post', parameters: data, onComplete: resultFunc}
    );
}

function CreateObj(name)
{
	return document.createElement(name);
}

function GetCtrl(objid, parentobj)
{
	if(parentobj == "undefined" || !parentobj)
	{
		return document.getElementById(objid);
	}
	
	var childs = parentobj.childNodes;
	return childs[objid];
}

function nplace(src, from, to)
{
	return src.replace(eval('/' + from + '/g'), to);
}

function EscapeQuot(str)
{
	return nplace(str,"'","\\'");
}

/*
function GetProxyResponse(url,param,OnSuccessFunc)
{
    var oparam = "req=" + encodeURIComponent( url ) ;
    oparam += "&params=";
    param = encodeURIComponent( param ) ;
    oparam += param;

    PostData("/ajax/ResponseProxy.aspx",oparam,OnSuccessFunc);
}
*/

var onloadObj = new Array;
function onloadFunc()
{
	var ii=0;
	for(ii=0;ii<onloadObj.length;ii++)
	{
		var x = onloadObj[ii];
		try
		{
			x();
		}catch(ex)
		{
			// none;
		}
	}
}
window.onload = onloadFunc;
var arrIndex = 0;
function AddOnloadFunc(o)
{
		onloadObj[arrIndex++] = o;
}

var onResizeObj = new Array;
function onResizeFunc()
{
	for(i=0;i<onResizeObj.length;i++)
	{
		var x = onResizeObj[i];
		x();
	}
}
window.onresize = onResizeFunc;
var arrResizeIndex = 0;
function AddResizeFunc(o)
{
		onResizeObj[arrResizeIndex++] = o;
}

AddResizeFunc(resizeBgLayer);
function resizeBgLayer()
{
	if($('divBG'))
	{
		$('divBG').style.width = Screen.getDocumentWidth() +'px';
		$('divBG').style.height= Screen.getDocumentHeight() +'px';
	}
}

function ChangeParam(param, val, fullurl)
{
	var ret = "";
	
	var xparam;
	
	var adds;
	
	if(fullurl == null)	
		adds = location.href;
	else
		adds = fullurl;
		
	var n;
	
	var flag = false;
	
	xparam = "&" + param + "=";	
	n = adds.indexOf(xparam);
		
	if(n >= 0)
				flag = true;

	if(!flag)
	{
		xparam = "?" + param + "=";	
		n = adds.indexOf(xparam);
			
		if(n >= 0)
					flag = true;
	}
	
	// url doesn't have specific parameter;
	if(!flag)
	{
		if(0 <= adds.indexOf("?"))
			ret = adds + "&" + param + "=" + val;
		else
			ret = adds + "?" + param + "=" + val;			
			
		return ret;
	}

	// get its end point
	var len = xparam.length;	
	var endpt = adds.indexOf("&",len+n)
	var makeurl = adds.substring(0,n);

	if(endpt < 0)
	{
		if(makeurl.indexOf("?") < 0)
			makeurl += "?";
		else
			makeurl += "&";
			
		makeurl += param;
		makeurl += "=";
		makeurl += val;
		ret = makeurl;
		return ret;
	}

	if(makeurl.indexOf("?") < 0)
		makeurl += "?";
	
	// attach tail url
	var tail = adds.substring(endpt,adds.length);
	makeurl += tail;
	makeurl += "&";
	makeurl += param;
	makeurl += "=";
	makeurl += val;
	ret = makeurl;
	return ret;
}

function bigImg(isrc)
{
    // ÀÌ¹ÌÁö Å©°Ôº¸±â
    var awin = window.open("/bigimg.aspx?url="+isrc,"bigimg","width=400,height=400,scrollbars=yes,resizable=yes");
    awin.focus();
}

function DownloadFile(type,path)
{
    window.open("http://userimg.monario.com/download.aspx?type="+type+"&url="+path,"downloadfile");
}

function CalcBytes(n)
{
	var kb = 0;
	var mb = 0;
	
	var keyv = 1000000;
	if(n >= keyv)
	{
		mb = n / keyv;
		var str = String(mb);
		var ret = str.indexOf(".");
		if(ret > 0)
		{
			return str.substr(0,ret+2) + "MB";
		}
		else
			return str + "MB";		
	}

	keyv = 1000;
	if(n >= keyv)
	{
		mb = n / keyv;
		var str = String(mb);
		var ret = str.indexOf(".");
		if(ret > 0)
		{
			return str.substr(0,ret+2) + "KB";
		}
		else
			return str + "KB";
	}
	
	return n + "B";
}