﻿ // JScript 文件
 //作者：LC
 // XML格式为
 // <param funname="函数名">
 //     <item>参数1</item>
 //     ...
 //     <item>参数n</item>
 // </param>
 //////////////////////////////////////////////////
//用于运行服务器端代码
//funFullName 函数全名，包括空间+函数名
//callBack:回调函数，异步处理的回调函数,如果callBack为false或者空，则是同步调用
function exeServerFun(funFullName,callBack,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p,p12,p13,p14,p15)
{
	var sUrl  = GetCommonFolderUrl() + "/Agents/ExeFunCommon.aspx";
	var sXml="<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\n";
	sXml = sXml +"<param funname=\""+funFullName+"\">\n";   
	
	sXml = sXml +_createParamXml(p1);
	sXml = sXml +_createParamXml(p2);
	sXml = sXml +_createParamXml(p3);
	sXml = sXml +_createParamXml(p4);
	sXml = sXml +_createParamXml(p5);
	sXml = sXml +_createParamXml(p6);
	sXml = sXml +_createParamXml(p7);
	sXml = sXml +_createParamXml(p8);
	sXml = sXml +_createParamXml(p9);
	sXml = sXml +_createParamXml(p10);
	sXml = sXml +_createParamXml(p11);
	sXml = sXml +_createParamXml(p12);
	sXml = sXml +_createParamXml(p13);
	sXml = sXml +_createParamXml(p14);
	sXml = sXml +_createParamXml(p15);

	sXml = sXml +"</param>\n";

	var sReturn="";

	if (callBack && callBack!="") 
	{
	    PostDataToServer(sUrl, sXml,callBack);
	}
	else
	{
	    sReturn=PostDataToServer(sUrl, sXml);
	}
	 
	
  if (sReturn.indexOf(",,,")<0) {
   return sReturn;
   }
   var sType = strLeft(sReturn,",,,");
   var sVal = strRight(sReturn,",,,");
   if (sType=="bool") 
   {
       if (sVal==1) {
       return true;
       }
       else
       {
        return false;
       }
   }
   else
   {
    return sReturn;
   }
}

function _createParamXml(p)
{
    var sXml="";
    if (typeof(p)!="undefined") 
    {
        var sVal =p;
        if(p=="")
        {
        
        }
        else if (p==true) {
            sVal="1";
        }
        else if(p==false){
            sVal="0";
        }
        sXml ="<item>"+XmlEncode(sVal+"")+"</item>\n";
    }
    return sXml;
}

//根据枚举全名来获取枚举值
function GetEnumValue(sEnuName,callBack)
{
   return exeServerFun("SouthDigital.Common.ExeServerCodeHelper.GetEnumVal",callBack,sEnuName);
}
//根据枚举全名来获取枚举值
function GetVarValue(sVarName,callBack)
{
   return exeServerFun("SouthDigital.Common.ExeServerCodeHelper.GetVarValue",callBack,sVarName);
}
