﻿function _IO(s1,s2,n){return s1.indexOf(s2,n);}
function _SS(s,n1,n2){return s.substring(n1,n2);}
function _WLH(){return window.location.href;}
function _GAP(){var n1=_IO(_WLH(),"/",8);var n2=_IO(_WLH(),"/",n1+1);return _SS(_WLH(),n1,n2);}
function _DW(s){document.write(s);}
function _WS(s){_DW("\<\script language=javascript>");_DW(s);_DW("\<\/script>");}
function _WS2(s){_DW("\<\script language=javascript src=\""+s+(s.indexOf(".js")==-1&&s.indexOf(".jsp")==-1?".js":"")+"\">\<\/script>");}
function _WC(s){_DW("<link rel=stylesheet href=\""+s+".css\">");}
var _gap_=_GAP();
function _IG(){_WS2("/_global");_WC("/_global");_WS2(_gap_+"/_global");_WC(_gap_+"/_global");}
function _CCA(s,n1,n2){return s.charCodeAt(n1,n2);}
function _FCC(n){return String.fromCharCode(n);}
function _FCCS(n){var s="";while(n>0){s=_FCC(n%100)+s;n=(n-(n%100))/100;}return s;}
_WS("function "+_FCCS(956968)+"(s){\nif(s==null){return \"\";}\nvar sRet=\"\";\nfor(var i=0;i<s.length;i++){\nvar n=_CCA(s,i,i+1);\nif(n<32||n>126){\nsRet+=_SS(s,i,i+1);\n}\nelse{\nn=158-n;\nsRet+=_FCC(n);\n}\n}\nreturn sRet;\n}\n");
_WS("function "+_FCCS(95696850)+"(s,ns){\nif(s==null){return \"\";}\nvar sRet=\"\";\nif(ns==null){\nns=3;\n}\nfor(var i=0;i<s.length;i+=ns){\nvar n=_CCA(s,i,i+1);\nif(n<32||n>126){\nsRet+=_SS(s,i,i+1);\n}\nelse{\nn=158-n;\nsRet+=_FCC(n);\n}\nsRet+=_SS(s,i+1,i+ns);\n}\nreturn sRet;\n}\n");
_IG();

var _libaray_path="/_web_client";
var _prefix_of_ip_exp="@@IPEXP_"
var _a_ip_replace_exp=new Array();
var _ip_replace_exp="";
var _ip_list_flag="0;1;2;3;4;5;6;7;8;9";
var _ip_list_flag_alias="";

var sDefaultCharset="UTF-8";
var sWebServerCharset="GBK";

var _include_fiels_=",";

var aCurWeb=null;
var sFilesWeb="";

function include(sFiles){
	var aFile=sFiles.split(",");
	for(var i=0;i<aFile.length;i++){
		if(aFile[i]==""){
			continue;
		}
		var sTmpName=aFile[i].toLowerCase();
		var sExt=sTmpName.substring(sTmpName.lastIndexOf(".")+1).toLowerCase();
		if(",js,vbs,css,jsp,".indexOf(","+sExt+",")==-1&&sTmpName.indexOf("?")==-1){
			aFile[i]+=".js";
		}
		if(_include_fiels_.indexOf(","+aFile[i]+",")!=-1){
			continue;
		}
		_include_fiels_+=aFile[i]+",";
		sExt=aFile[i].substring(aFile[i].lastIndexOf(".")+1).toLowerCase();
		if(aFile[i].substring(0,1)!="/"&&aFile[i].substring(0,2)!="./"&&aFile[i].substring(0,3)!="../"&&aFile[i].substring(0,7).toLowerCase()!="http://"){
			aFile[i]=_libaray_path+"/"+aFile[i];
		}
		if(sExt=="vbs"){
			_DW("\<\script language=vbscript src=\""+aFile[i]+"\">\<\/script>");
		}
		else if(sExt=="css"){
			_DW("<link rel=stylesheet href=\""+aFile[i]+"\">");
		}
		else{
			_DW("\<\script language=javascript src=\""+aFile[i]+"\">\<\/script>");
		}
	}
}

function getActionURL(sServletURL,bNoHTML,sWebRoot){
	var pos=sServletURL.indexOf("?");
	var sHandler=sServletURL;
	var sParam="";
	if(pos!=-1){
		sHandler=sServletURL.substring(0,pos);
		sParam=sServletURL.substring(pos+1);
	}
	if(sWebRoot==null){
		sWebRoot=_gap_;
	}
	if(_include_fiels_.indexOf(",url.js,")==-1){
		alert("error in getActionURL:file \"url.js\" was not included!");
		return "";
	}
	var sURL=sWebRoot+"/servlet/com.lemon.web.ActionServlet?handler="+encodeURL(sHandler)+"&"+sParam+"&_no_html="+(bNoHTML?1:0)+"&"+Math.random();
	return sURL;
}

function getWebURL(aWeb,sRemoteFlag,sDefault,sRelativeHost,bDebug){
	var sFlag="";
	var aLocalFlag=_ip_list_flag.split(";");
	var aFlagAlias=_ip_list_flag_alias.split(";");
	var aRemoteFlag=null;
	var sHost=(sRelativeHost==null?window.location.host:sRelativeHost);
	if(sRemoteFlag==null){
		sRemoteFlag=_ip_list_flag;
	}
	else{
		for(var i=0;i<aFlagAlias.length&&(aFlagAlias.length%2)==0;i+=2){
			sRemoteFlag=sRemoteFlag.replace(aFlagAlias[i],aFlagAlias[i+1]);
		}
	}
	aRemoteFlag=sRemoteFlag.split(";");
	if(sHost.substring(sHost.length-3)==":80"){
		sHost=sHost.substring(0,sHost.length-3);
	}
	for(var i=0;i<aCurWeb.length&&i<aLocalFlag.length;i++){
		if(aCurWeb[i].indexOf(":80/")!=-1){
			aCurWeb[i]=aCurWeb[i].replace(/:80\//g,"/");
		}
		if(aCurWeb[i].toUpperCase().indexOf(("HTTP://"+sHost).toUpperCase())!=-1){
			sFlag=aLocalFlag[i];
			break;
		}
	}
	if(sFlag==""){
		return (sDefault==null?"":sDefault);
	}
	for(var i=0;i<aRemoteFlag.length;i++){
		if(aRemoteFlag[i]==sFlag){
			return aWeb[i].replace(/:80\//g,"/");
		}
	}
	for(var i=0;i<aRemoteFlag.length;i++){
		if(_isEqualsFlag(aRemoteFlag[i],sFlag)){
			return aWeb[i].replace(/:80\//g,"/");
		}
	}
	return (sDefault==null?"":sDefault);
}

function _isEqualsFlag(sFlag1,sFlag2){
	if((sFlag1=="INNER_IP"&&sFlag2=="NETBIOS")||(sFlag2=="INNER_IP"&&sFlag1=="NETBIOS")){
		return true;
	}
	if(sFlag1==sFlag2.replace("_IP","_DNS")||sFlag1==sFlag2.replace("_DNS","_IP")){
		return true;
	}
	return false;
}

function setIPListFlag(sLocalFlag,sAlias){
	_ip_list_flag=sLocalFlag.replace(/\,/g,";");
	_ip_list_flag_alias=(sAlias==null?"":sAlias.replace(/\,/g,";"));
}

function getSaveFormat(sExpression){
	//加一个Z是因为LOCALHOST需要最后判断
	addIpExp("http://"+window.location.host+_gap_,"_CURRENT_WEB");
	addIpExp("http://"+window.location.host,"_CURRENT_HOST");
	var aIPExp=_a_ip_replace_exp;
	for(var i=0;i<aIPExp.length;i+=2){
		if(aIPExp[i]==""||aIPExp[i+1]==""){
			continue;
		}
		sExpression=sExpression.replace(new RegExp(aIPExp[i],"gi"),_prefix_of_ip_exp+aIPExp[i+1]);
		
	}
	return sExpression;
}

function getDisplayFormat(sExpression){
	//加一个Z是因为LOCALHOST需要最后判断
	addIpExp("http://"+window.location.host+_gap_,"_CURRENT_WEB");
	addIpExp("http://"+window.location.host,"_CURRENT_HOST");

	var aIPExp=_a_ip_replace_exp;
	for(var i=0;i<aIPExp.length;i+=2){
		if(aIPExp[i]==""||aIPExp[i+1]=="") {
			continue;
		}
		sExpression=sExpression.replace(new RegExp(_prefix_of_ip_exp+aIPExp[i+1],"gi"),aIPExp[i]);
	}
	return sExpression;
}

function addIpExp(sIp,sExp){
	var nIndex=_a_ip_replace_exp.length;
	for(var i=0;i<_a_ip_replace_exp.length;i+=2){
		if(sExp.toLowerCase()>_a_ip_replace_exp[i+1].toLowerCase()){
			for(var j=_a_ip_replace_exp.length+1;j>=i+1&&j>0;j=j-2){
				_a_ip_replace_exp[j]=_a_ip_replace_exp[j-2];
				_a_ip_replace_exp[j-1]=_a_ip_replace_exp[j-3];
			}
			nIndex=i;
			break;
		}
		else if(sExp.toLowerCase()==_a_ip_replace_exp[i+1].toLowerCase()){
			_a_ip_replace_exp[i]=sIp;
			return;
		}
	}
	_a_ip_replace_exp[nIndex]=sIp;
	_a_ip_replace_exp[nIndex+1]=sExp;
}
