function showObject(obj)
{
		var description="";
		for (var i in obj){
			var property=obj[i];
			description+=i+" = "+property+"\n";
		}
		return description;
}

function el(elId)
{
	return document.getElementById(elId);
}

function els(elName)
{
	return document.getElementsByName(elName);
}


function setCookie(name,value)
{
	//alert("setCookie "+caller.toString());
	//alert("util.js setCookie ="+name);
    //var Days = 30;
    //var exp  = new Date();    
    //exp.setTime(exp.getTime() + Days*24*60*60*1000);
    //document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString()+ ";path=/";
	document.cookie = name + "="+ escape (value) + ";path=/";
}

function getCookie(name)   
{
	if (name=="login_uid")
		//alert("getCookie cookie = "+document.cookie);	
	
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
    //alert("cookie "+name+" "+unescape(arr[2]));
	
    if(arr != null) 
    	return unescape(arr[2]);
    //alert(arr);
    return null;

}
function delCookie(name)
{
	//alert("util.js delCookie ="+name);
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval=getCookie(name);
    if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString()+ ";path=/";
}


function getUrlArgs()
{
	
    var url = document.URLUnencoded ;
    
    var arrurl  = url.split("?") ;
    var arrArg;  
    var arrItem; 
		var ret=new Array();

    if(arrurl.length ==2)
    {

        arrArg =arrurl[1].split("&");
       for(var i = 0 ; i<arrArg.length ;i++)
       {
        arrItem = arrArg[i].split("=");
				ret.push(arrItem[0]);
				ret.push(arrItem[1]);		
       } 
    }   
	return ret;
};

function getUrlArgByName(na){
	
	var args=getUrlArgs();
	for(var i = 0 ; i<args.length/2 ;i++){
		if (args[i*2]==na){
			return args[i*2+1];
		}
	}
	return "";
}

function addRowToTable(strTableId, arrTdText)
{
	var objTable = el(strTableId);
	if(objTable == null) {
		return;
	}

/*
	var objTableBody = objTable.getElementsByTagName("TBODY")[0];
	var row = document.createElement("TR")
	for(var i = 0; i < arrTdText.length; i++) {
		var col = document.createElement("TD")
		col.appendChild(document.createTextNode(arrTdText[i]))
		row.appendChild(col);
	}
	objTableBody.appendChild(row);
	*/
	oTR=objTable.insertRow(objTable.rows.length);
	tmpNum=oTR.rowIndex;
	for(var i = 0; i < arrTdText.length; i++) {
  	oTD=oTR.insertCell(0);
  	oTD.innerHTML=arrTdText[i];
	}
}


function deleteRowFromTable(strTableId,sIndex){//删除表格的一行
	var objTable = el(strTableId);
  if(sIndex=='')
    sIndex=objTable.rows.length-1;
  else
    sIndex=parseInt(sIndex)-1;
   
 	objTable.deleteRow(sIndex);
}

function getElValue(elId){
	obj=el(elId);
	tagName=obj.tagName;
	if (tagName=="INPUT" || tagName=="SELECT" || tagName=="TEXTAREA")
	{
		switch(obj.type){
			case 'text':
			case 'select-one':
			case 'textarea':
				return obj.value;
			case 'checkbox':
				if (obj.checked)	
					return obj.value;
				else
					return undefined;	
			case 'radio':
				rl=els(elId);
				for(i=0;i<rl.length;i++)
				{
					if (rl[i].checked)
						return rl[i].value;
				}
				return undefined;
				break;
			default:
			  return obj.value;
		}
	}
	else if(tagName=="DIV" || tagName=="SPAN"){
		return obj.innerHTML;
	}
	return undefined;
}

function setElValue(elId,val){
	obj=el(elId);
	tagName=obj.tagName;
	if (tagName=="INPUT" || tagName=="SELECT" || tagName=="TEXTAREA")
	{
		switch(obj.type){
			case 'text':
			case 'select-one':
			case 'textarea':
				obj.value=val;
				break;	
			case 'checkbox':
				if (obj.value==val)
					obj.checked=true;
				else
					obj.checked=false;	
				break;		
			case 'radio':
				rl=els(elId);
				for(i=0;i<rl.length;i++)
				{
					if (rl[i].value==val)
						rl[i].checked=true;						
				}
				break;
				
		}
	}
	else if(tagName=="DIV" || tagName=="SPAN"){
		obj.innerHTML=val;
	}
	
}


function getRpcUri(uri,func_name,args,return_type){

		if (uri.indexOf("?") == -1) 
			uri += "?rs=" + escape(func_name);
		else
			uri += "&rs=" + escape(func_name);
		uri += "&rsrnd=" + new Date().getTime();
		
		for (i = 0; i < args.length; i++) 
			uri += "&rsargs[]=" + escape(args[i]);

		uri +="&return=return_type";
		
		return uri;		
}