//定义信息提示函数
function msgbox(v){alert(v)}
//定义选择信息提示
function beforeSelect(){return true}
//定义事件之前的时间
function beforeAct(){return true}
//定义事件之后的事件
function afterAct(){}
//定义登录之后的函数
function afterLogin(){}
//定义登录之前的hanshu 
function beforeLogin(){}
//定义全局变量
var SET={},F={},EC={control:{},search:{}};
//给SET变量赋值
SET.js=["/js/info_menu.js"];
SET.soap="http://schemas.xmlsoap.org/soap/envelope/";
SET.space="http://zoneonline/";
SET.x=SET.space;
SET.soap="http://schemas.xmlsoap.org/soap/envelope/";
SET.xsi="http://www.w3.org/2001/XMLSchema-instance";
SET.xsd="http://www.w3.org/2001/XMLSchema";
//给变量F赋值
F.getDomain = function()
{
    //获取域名
	var host = document.location.hostname;
	//对域名进行分割,分别获取
	var segments = host.split(".");
	var domain = "";
	
	//eg:xxx.com,
	if (segments.length<=2){return host;}
		
    //通过循环判断对domain进行赋值
	for (var i=0;i<segments.length;i++)
	{
	//判断域名中是否包含com.cn的扩展名
		if ( host.indexOf("com.cn") >0 )
		{
			//eg,www.xxx.com.cn,www.abc.xxx.com.cn
			if (i >= (segments.length-3) ){	domain += "." + segments[i];}						  
		}
		else
		{
			//eg,www.xxx.com,www.abc.xxx.com
			if (i >= (segments.length-2) ){domain += "." + segments[i];}
		}
	}

	//去除"."
	if (domain.indexOf(".")==0){domain = domain.substring(1);}
	return domain;
};
//得带cookie值

F.getCookie=function(n)
{
  var c=document.cookie,v="";

  n=n+"=";
  if(c.length > 0)
  { 
    var a=c.indexOf(n);
    if(a!=-1)
    { 
      a+=n.length;
      var b=document.cookie.indexOf(";",a);
      if (b==-1) b=c.length;
      v=unescape(c.substring(a,b))
    }
  }
  return v;
};
//设置cookie的值
F.setCookie=function(n,v,h)
{
  var e = "";
  if(h!=null)
  {
    e=new Date((new Date()).getTime() + h * 3600000);
    e=";domain="+F.getDomain()+";expires=" + e.toGMTString();
  }
  document.cookie=n+"="+escape(v)+";path=/"+e;
}
//得到cookie中的登录者的姓名
F.cnCookie=function(n)
{	var s="",l=F.getCookie(n).split("|");
	for(var i=0;i<l.length;i++)
	{
		s+=String.fromCharCode(parseInt(l[i],16));
	}
	return s;
};
F.delCookie=function(n) { //删除名称为n的Cookie 
	var e = new Date(); 
	e.setTime(e.getTime() - 1); 
	document.cookie = n + "=;path=/;domain="+F.getDomain()+";expires="+e.toGMTString(); 
}; 
//判断真正的IE
F.realIE=window.ActiveXObject!=null?true:false;
//判断IE和OPERA
F.IE=window.attachEvent!=null?true:false;
//生成网页元素


//取出空格
String.prototype.trim=function(){ return this.replace(/(^\s*)|(\s*$)/g,""); }
F.xmlInbox=function(s){return s.toString().replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}
F.xmlUnbox=function(s){return s.replace(/&quot;/g,'"').replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&")}
F.htmInbox=function(s){return s.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\n/g,"<br>")}
F.htmUnbox=function(s){return s.replace(/&amp;/g,"&").replace(/&quot;/g,'"').replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&nbsp;/g," ").replace(/<br>/g,"\n")}

if (window.Document){Document.prototype.selectSingleNode = function(n){return(this.evaluate(n,this,function(e){return SET[e]},0,null)).iterateNext()};}
F.gen=function(s){return document.createElement(s)};
//添加css和js
F.addHead=function(){
		F.addcss("/css/css.css");
		var u=location.pathname,n=u.match(/\w*\./);
		if(!n)n="index.";
		F.addcss(n+"css");
};
//添加js
F.addjs=function(url){
		var s=document.getElementsByTagName("HEAD")[0].appendChild(F.gen("script"));
		s.src=url;
		s.type="text/javascript";
		return s;
};
//替换js
F.swapjs=function(id,url){
		var s=document.getElementById(id);
		if(s)
		{
			document.removeChild(s);
			s=F.addjs(url);
			s.id=id;
		}
};
//显示替换
F.tran=function(s,d)
{
	var t;
	if(t=F.id(s))t.style.display="none";
	if(t=F.id(d))t.style.display="block";
}
//添加css
F.addcss=function(url){
		var s=document.getElementsByTagName("HEAD")[0].appendChild(F.gen("link"));
		s.type="text/css";
		s.rel="stylesheet";
		s.href=url;
};
//成生xmlhttp
F.xmlHttp=function(){
	if(window.XMLHttpRequest)return new XMLHttpRequest();
	if (window.ActiveXObject)return new ActiveXObject("Microsoft.XMLHTTP");
	throw {message:"对不起，您的浏览器不支持XMLHttp！"};
}; 
//生成xmldom
F.dom=function(s){
	if(window.DOMParser)return (new DOMParser()).parseFromString(s,'text/xml');
	if(window.ActiveXObject)
	{	var x=new ActiveXObject("Microsoft.XMLDOM");
		x.async=false;
		x.loadXML(s);
		return x
	}
	throw {message:"对不起，您的浏览器不支持XMLDom！"};
};
//标签包含
F.wrap=function(s,q,a){
	if(!s)return "";
	var e,b=q==null?"<":q;
	switch(b)
	{	case "<": e=">"; break;
		case '"': e='"';break;
		case "'": e="'";break;
		case "{": e="}";break;
		default: e="</" + b + ">"; b =(a==null?"<" + b + ">":"<" + b + " " + a + ">");
	}
	//alert("内容:"+s+";e="+e+";b="+b);
	return (b+s+e);
};
F.selectKey=function(n,b){
	var l=F.tagTypeId(F.id(n),"INPUT","checkbox","key");
	if(b)for(var i=0;i<l.length;i++) l[i].checked=true;
	else for(var i=0;i<l.length;i++) l[i].checked=false;
};
F.selectAll=function(n,o){
	F.selectKey(n,o.checked==true?true:false);
	o.blur();
};
F.showSelect=function(b){
	if(!F.IE)return;
	var l=F.tag(document,"SELECT");
	for(var i=0;i<l.length;i++)l[i].style.display=(b?"":"none");
};
F.pop=function(){
	F.showSelect(false);
	var o=F.id("mask"),p=F.id("pop"),q=F.id("close"),t;w=document.body.clientWidth,h=document.body.clientHeight;
	if(!o||!p) return;
	if(q){q.onclick=F.unpop;t=F.id("bar")}
	if(t){
		if(F.IE)
		{
			t.onmousedown=function(){
			t.x=event.x-parseInt(p.style.pixelLeft);
			t.y=event.y-parseInt(p.style.pixelTop);
			t.setCapture();
			document.onmousemove=function(){
				p.style.pixelLeft=parseInt(event.x-t.x);
				p.style.pixelTop=parseInt(event.y-t.y);
				}
			};
			t.onmouseup=function(){t.releaseCapture();document.onmousemove=null;};
		}
		else
		{
			t.onmousedown=function(e){
				t.x=e.clientX-parseInt(p.style.left.replace("px",""));
				t.y=e.clientY-parseInt(p.style.top.replace("px",""));
				window.captureEvents(Event.MOUSEMOVE);
				window.onmousemove=function(){
					p.style.left=e.clientX-t.x+"px";
					p.style.top=e.clientY-t.y+"px";
				}
			};
			t.onmouseup=function(){window.releaseEvents(Event.MOUSEMOVE);window.onmousemove=null;};
		}
	}
	if(h<screen.height)h=screen.height;
	if(F.IE) o.style.pixelHeight=parseInt(h);
	else o.style.height=h+"px";
	if(w>1004){
		if(F.IE) o.style.pixelWidth=parseInt(w);
		else o.style.width=w+"px";
	}
	if(w>screen.width)w=screen.width;
	h=screen.height-150;
	o.style.display=p.style.display="block";
	if(F.IE)
	{	function f(){
			var l=document.documentElement.scrollLeft,t=document.documentElement.scrollTop,x,y;
			if(l==0)l=document.body.scrollLeft;
			if(t==0)t=document.body.scrollTop;
			p.style.pixelLeft=parseInt(l+(w-p.offsetWidth)/2);
			if(F.IE)
				p.style.pixelTop=parseInt(t+(h-p.offsetHeight)/2);
			else
				p.style.pixelTop=parseInt(600-p.offsetHeight)/2;
		}
	}
	else
	{	function f(){
			var l=document.documentElement.scrollLeft,t=document.documentElement.scrollTop,x,y,h=document.body.clientHeight;
			if(l==0)l=document.body.scrollLeft;
			if(t==0)t=document.body.scrollTop;
			p.style.left=(l+(w-p.offsetWidth)/2)+"px";
			p.style.top=F.IE?(t+(h-p.offsetHeight)/2)+"px":(600-p.offsetHeight)/2+"px";
		}
	}
	f();
	//if(F.IE)window.onscroll=f;
};
F.unpop=function(){
	var o=F.id("mask"),p=F.id("pop")
	if(!o||!p) return;
	if(F.IE)window.onscroll=null;
	o.style.display=p.style.display="none";
	F.showSelect(true);
};
//调用web服务方法
//call(action,para,ancsy(b),ncfution,controlname)
//主要通过soap协议
F.call=function(a,p,b,f,c){
	var i=a.indexOf("."),n=i<0?"main":a.substring(0,i);a=i<0?a:a.substring(i+1,a.length),h=F.xmlHttp(),
	z=function(a,c){
		if(!h.responseXML) throw{message:"调用Web服务程序产生错误！"};
		var d=F.IE?"":"x:",p1=h.responseText.indexOf("<"+a+ "Result>")+a.length+8,p2=h.responseText.indexOf("</"+a+ "Result>");
		if (p2==-1) 
		{	
			var x=h.responseXML.selectSingleNode("/soap:Envelope/soap:Body/soap:Fault/"+d+"faultstring");
			if(x) 
			{	var s=x.childNodes[0].nodeValue;
				if(s){s=s.substring(s.indexOf("--->"),s.indexOf("   at ")).replace(/--->/g,"");s=s.substr(s.indexOf(": ")).replace(/: /g,"");}
				throw {message:s};
			}
			throw {message:"接收的Soap消息格式不正确！"};
		}
		var m=F.dom(F.wrap(F.xmlUnbox(h.responseText.substring(p1,p2)),"root")),t=m.documentElement.childNodes,c=EC.control[c],d={},p={},x={},u;
		
		for(var i=0;i<t.length;i++)
		{
			var e=t[i],n=e.nodeName,l=e.childNodes;
			if(l.length==0) d[n]=null;
			else if(l.length==1 && l[0].nodeName=="#text")//如果结点是单个字符串
			{
				if(c&&d[n])
				{	p[n]=d[n];
					delete d[n];
				}
				d[n]=l[0].nodeValue;
			}
			else if(n=="none")
			{
				for(var j=0;j<l.length;j++)
				{	var a=l[j].attributes;
					for(var k=0;k<a.length;k++)
						d[a[k].nodeName]=a[k].nodeValue;
				}
			}
			else if(!c||!(u=c.table[n])||!u.father)
			{
				var g=d[n]=[],y;
				if(u)y=x[n]={};
				for(var j=0;j<l.length;j++)
				{	var a=l[j].attributes,o={};
					for(var k=0;k<a.length;k++)
					{	var v=a[k].nodeValue;
						if(k==0&&u)y[v]=o;
						o[a[k].nodeName]=v;
					}
					g[j]=o;
				}
			}
			else
			{
				var q=x[u.father],g=[],y=x[n]={},w=-1;
				for(var j=0;j<l.length;j++)
				{	var a=l[j].attributes,o={};
					for(var k=0;k<a.length;k++)
					{	var v=a[k].nodeValue;
						if(k==0)
						{	
							if(!q[v])break;
							if(v!=w)
							{
								w=v;
								q[v][n]=g=[];
							}
						}
						if(k==1)y[v]=o;
						o[a[k].nodeName]=v;
					}
					g[g.length]=o;
				}
			}
		}
		delete(h);
		if(d.unlogin)beforeLogin();else if(d.login)afterLogin();
		if(c&&!F.empty(p)&&f)f(p);
		if(f) f(d);
		return d;
	}
	if (b==true) h.onreadystatechange=function(){
		if (h.readyState<4) return;
		if (h.status!=200) throw{message:"调用Web服务程序产生错误！"+h.status};
		z(a,c);
	}; 
	else b=false; 
	//alert(p);
	//调用Serv中的webservice方法 
	h.open("POST","http://"+location.host+"/serv/"+(SET.dir?SET.dir+"/":"")+n+".asmx",b);
	h.setRequestHeader("SOAPAction", SET.space + a);
	h.setRequestHeader("Content-Type", "text/xml;charset=utf-8");
	h.setRequestHeader("Content-Length",1000000);
	h.send("<?xml version='1.0'?><soap:Envelope xmlns:soap='"+SET.soap+"'><soap:Body>" + F.wrap((p==null?"":p),a,"xmlns='"+SET.space+"'") + "</soap:Body></soap:Envelope>");
	if (!b) return z(a,c);
};
F.empty=function(o){for(var e in o)return false;return true};
F.id=function(n){return document.getElementById(n)};
F.top=function(o,t){
	if (t==null)t="TR";
	var f=o.parentNode;
	while (f.tagName!=t)f=f.parentNode;
	return f;
};
//获取指定属性,例如：节点、节点属性、文本节点.
F.ga=function(o,n){
 //n代表标记名称,0代表节点属性名称
	var t;
	try{
		if(o[n])
		{
			t=o[n];
			//if(n=="need")alert(n+":"+t);
		}
		else if(o.nodeType==1) t=o.getAttribute(n);
		if(t) return t;
	}
	catch(e){}
};
//设置指定属性，也就是设置节点
F.sa=function(o,n,v){
	if(o[n]||typeof(v)=="object") o[n]=v;
	else o.setAttribute(n,v);
};
//删除指定属性
F.da=function(o,n){
	if(o[n])o[n]=void(0);
	else o.removeAttribute(n);
};
//删除事件oTarget：目标；sEventType：事件名称；funName：事件触发的函数名；
F.removeEvent=function(oTarget,sEventType,funName){
 //document.getElementById("dd").attachEvent
    if(oTarget.removeEventListener){//for DOM;
  oTarget.removeEventListener(sEventType,funName, false);
 }else if(oTarget.detachEvent){
  oTarget.detachEvent("on"+sEventType,funName);
 }else{
  oTarget["on"+sEventType]=null;
 }
 oTarget.detachEvent('on'+sEventType,funName);
 oTarget.setAttribute("on"+sEventType,"")
};
//插入事件
F.insertE=function(o,n,f){
	if(o["on"+n]&&!o["old"+n])
	{ o["old"+n]=o["on"+n];	eval("o.on"+n+"=function(){f();o.old"+n+"()}");}
	else o["on"+n]=function(){f()};
};
//添加事件
F.addE=function(o,n,f){
	if(window.attachEvent) o.attachEvent("on"+n,function(){f(o)});
	else o.addEventListener(n,function(){f(o)},false)
};
//设置属性上一级
F.top=function(o,t){
	if (!t) t="TR";
	var f=o.parentNode;
	while(f&&f.tagName!=t)f=f.parentNode;
	return f;
};
F.loop=function(l,f){
	for(var i=0;i<l.length;i++)if(l[i].nodeType==1)f(l[i]);
};
//获取指定id数组
F.getId=function(o,n){
	var a=[];
	function f(o){
		if(F.ga(o,"id")==n) return a[a.length]=o;
		F.loop(o.childNodes,f);
	}
	F.loop(o.childNodes,f);
	return a;
};
//获取指定name数组
F.name=function(o,n){
	var a=[];
	function f(o){
		var t=F.ga(o,"name");
		if(!n&&t||n&&t==n) return a[a.length]=o;
		F.loop(o.childNodes,f);
	}
	F.loop(o.childNodes,f);
	return a;
};
//获取指定tag数组
F.tag=function(o,n){return o.getElementsByTagName(n)};
F.tagId=function(o,n,t){
	if(!n)return F.tag(o,n);
	var a=F.tag(o,n);
	for(var i=0;i<a.length;i++) if(a[i].id==t) return a[i];
}
//获取指定tag和type数组
F.tagType=function(o,n,t){
	if(!t) return F.tag(o,n);
	var a=F.tag(o,n),b=[];
	for(var i=0;i<a.length;i++) if(a[i].type==t) b[b.length]=a[i];
	return b;
};
F.tagTypeId=function(o,n,t,id){
	if(!id) return F.tagType(o,n,t);
	var a=F.tag(o,n),b=[];
	for(var i=0;i<a.length;i++) if(a[i].type==t) b[b.length]=a[i];
	return b;
}
F.isPost=function(o){
	return F.isInput(o)||F.isSelect(o)||o.getAttribute("post")!=null?true:false;
};
F.isInput=function(o){
	if(o.tagName=="TEXTAREA")return true;
	if(o.tagName=="INPUT"&&(o.type=="text"||o.type=="password"||o.type=="hidden"))return true;
	return false;
};
F.isSelect=function(o){
	return o.tagName=="SELECT"?true:false;
};
F.err=function(o){
  return typeof(o)=="object"?true:false;
};
//获取data
F.assign=function(o,c,r){
	if(o.gd)return;
	if(o.id=="key")
	{
		if(o.tagName=="INPUT" && o.type=="checkbox")
		{	
			o.gd=function(){if(o.checked)return o.data}
		}
		else
			o.gd=function(){return o.data};
	}
	else if(F.isSelect(o))
		o.gd=function(){return o.value};
	else if(o.type=="checkbox")
		o.gd=function(){if(o.checked!=o.defaultChecked)return o.checked?o.value:void(0)};
	else
		o.gd=function(){
			var s=o.data;
			if(F.err(s))throw s;
			if(!s&&o.tagName=="SELECT"&&o.selectedIndex==-1){var t=F.ga(o,"need");if(t) throw {message:t};}
			return o.old==void(0)?s:(s==o.old?void(0):s);
		};

	var g=F.ga(o,"group"),t;
	if(g&&(t=F.ga(o,"outbox"))){eval("o.outbox="+t); o.removeAttribute("outbox")}
	switch(g)
	{	case "select":
			o.className="input";
			o.kid=[];
			var nn=F.ga(o,"init"),ol=F.ga(o,"left"),ot=F.ga(o,"top"),g=F.gen("input"),w=parseInt(o.style.width.replace("px",""))+7;
			if(!F.IE)
			{
				ol++;ot--;
			}
			else
			{
				ot-=2;w--;
			}
			g.className="seltxt";
			g.style.height=o.style.height;
			g.style.width=w-25+"px";
			if(F.ga(o,"readonly"))g.readOnly=true;
			o.appendChild(g);
			var p=F.gen("img");
			p.src="/js/pic/sel.gif";
			p.className="selpic";
			o.appendChild(p);
			F.addE(o,"click",function(){
				var e=o.kid[0];
				if(e)
				{
					e.style.left=ol+"px";
					e.style.top=ot+"px";
					e.style.display="";
				}
			});
			function f0(){
				for(var i=0;i<o.kid.length;i++) o.kid[i].style.display="none";
				return true;
			}
			F.addE(document.body,"mouseup",f0);
			o.sd=function(v){
				if(!v)return;
				if(typeof(v)!="object")
				{
					if(o.option[v])
					{
						o.data=o.old=v;
						g.value=o.option[v];
					}
					return;
				}
				for(var i=0;i<o.kid.length;i++)
					document.body.removeChild(o.kid[i]);
				o.kid=[];
				o.option=v;
				var l=document.body.appendChild(o.kid[o.kid.length]=F.gen("table")),d=F.ga(o,"col"),i=0,q;
				l.className="seltbl";
				l.style.display="none";
				l.width=w;
				d=d==null?1:parseInt(d);
				if(nn)
				{	var x=l.insertRow(-1).insertCell(-1);
					if(d>1)x.colSpan=d;
					F.addE(x,"mouseover",function(m){m.style.backgroundColor="#EEE"});
					F.addE(x,"mouseout",function(m){m.style.backgroundColor="#FFF"});
					o.data=x.data=0;
					g.value=x.innerHTML=nn;
					F.addE(x,"mousedown",function(m){o.data=0;g.value=nn;m.style.backgroundColor="#FFF";f0()});
				}
				else if(nn=F.ga(o,"need")) o.data={message:nn};
				for(var e in v)
				{
					if(i%d==0) q=l.insertRow(-1);
					var x=q.insertCell(-1);
					if(d>1) x.width=(w-d+1)/d;
					F.addE(x,"mouseover",function(m){m.style.backgroundColor="#EEE"});
					F.addE(x,"mouseout",function(m){m.style.backgroundColor="#FFF"});
					if(typeof(v[e])=="object")
					{
						var m=document.body.appendChild(o.kid[o.kid.length]=F.gen("table")),j=0,u;
						m.className="seltbl";
						for(var k in v[e])
						{
							x.innerHTML=g;
							for(var h in v[e][k])
							{
								if(j%d==0) u=m.insertRow(-1);
								var y=u.insertCell(-1);
								if(d>1) y.width=(w-d+1)/d;
								y.inerHTML=v[e][k][h];
								F.addE(x,"mouseover",function(m){m.style.backgroundColor="#EEE"});
								F.addE(x,"mouseout",function(m){m.style.backgroundColor="#FFF"});
								F.addE(x,"mousedown",function(m){o.data=m.data;g.value=m.innerHTML;m.style.backgroundColor="#FFF";f0()});
								j++;
							}
						}
						while (j%d++!=0)u.insertCell(-1);
					}
					else
					{
						x.data=e;
						x.innerHTML=v[e];
						F.addE(x,"mousedown",function(m){o.data=m.data;g.value=m.innerHTML;m.style.backgroundColor="#FFF";f0()});
					}
					i++;
				}
				while (i%d++!=0)q.insertCell(-1);
			}
			var s=F.ga(o,"option");
			if(s) o.sd(eval(s));
			return;
		case "radio":
			o.sd=function(v){o.data=o.old=v;if(o.kid[v])o.kid[v].checked=true};
			o.kid={};
			var l=F.tagType(o,"INPUT","radio");
			for (var i=0;i<l.length;i++) 
			{	F.addE(l[i],"click",function(e){o.data=e.value;if(o.outbox)o.outbox()});
				o.kid[l[i].value]=l[i];
				if(l[i].checked)o.data=l[i].value;
			}
			return;
		case "checkbox":
			o.kid={};
			var l=F.tagType(o,"INPUT","radio");
			if (F.ga("digit"))
			{	o.data=0;
				o.sd=function(v){
					o.data=o.old=v=parseInt(v);
					for (var e in o.kid)
					o.kid[e].checked=(v&Math.pow(2,parseInt(e)-1)==0?false:true);
				};
				for (var i=0; i<l.length; i++) 
				{	F.addE(l[i],"click",function(e){o.data=(e.checked?o.data|Math.pow(2,parseInt(e.value)-1):o.data &(~Math.pow(2,parseInt(e.value)-1)));if(o.outbox)o.outbox()});
					o.kid[l[i].value]=l[i];
					o.data=(l[i].checked?o.data|Math.pow(2,parseInt(l[i].value)-1):o.data &(~Math.pow(2,parseInt(l[i].value)-1)));
				}
			}
			else
			{
				o.sd=function(v){
					o.data=o.old=v;
					for (var e in o.kid)o.kid[e].checked=false;
					var l=v.split(",");
					for (var i=0; i<l.length; i++)
						if (o.kid[l[i]])o.kid[l[i]].checked=true;
				};
				for (var i=0; i<l.length; i++) 
				{	F.addE(l[i],"click",function(e){
						o.data=(e.checked?(o.data==null||o.data==""?e.value:o.data+","+e.value):("," + (o.data==null?"":o.data) + ",").replace("," + e.value + ",",",").replace(/^,|,$/g,""));
						if (o.data=="") o.data=void(0);
						if(o.outbox)o.outbox()
					});
					o.kid[l[i].value]=l[i];
					o.data=(l[i].checked?(o.data==null||o.data==""?l[i].value:o.data+","+l[i].value):("," + (o.data==null?"":o.data) + ",").replace("," + l[i].value + ",",",").replace(/^,|,$/g,""));
				}
			}
			return;
		case "sort":
			c.all["sort"]=o;
			o.data="";
			var l=F.name(o);
			for (var i=0;i<l.length;i++) 
			{	F.addE(l[i],"click",function(e){
					var s=F.ga(e,"sort"),n=F.ga(e,"name");
					if(s)s=s=="desc"?"asc":"desc";
					else
					{	s="desc";
						if(o.pre)
						{
							o.pre.style.backgroundImage="none";
							F.da(o.pre,"sort");
							if(o.pre.unorder)o.pre.unorder();
						}
					}
					o.pre=e;
					F.sa(e,"sort",s);
					e.style.backgroundImage="url(/js/pic/"+s+".gif)";
					if(e.order)e.order();
					o.data=n.indexOf(",")>=0?n.replace(","," "+s+",")+" "+s:n+" "+s;
					c.select();
				});
				var s=F.ga(l[i],"sort");
				if(s)
				{	l[i].style.backgroundImage="url(/js/pic/"+s+".gif)";
                 	var n=F.ga(l[i],"name");
					o.data=n.indexOf(",")>=0?n.replace(","," "+s+",")+" "+s:n+" "+s;
					o.pre=l[i];
				}
			}
			return;
	}
	if((t=F.ga(o,"inbox"))&&typeof(t)=="string"){F.da(o,"inbox");eval("o.inbox="+t)}
	if(t=F.ga(o,"equal")){o.removeAttribute("equal");o.equal=document.getElementsByName(t)[0];}
	//一般性输入检查
	function f(){
		var v=o.value.trim(),a=F.ga(o,"label"),t=F.ga(o,"need");
		if(!a)a="";
		if (v=="")
		{	if(t!=null) return o.data={message:t=="true"?a+"不能为空！":t};
			o.data=void(0);
		}
		if (o.tagName!="TEXTAREA") o.value=o.value.trim(); else v=o.value;
		var m=F.ga(o,"min"),n=F.ga(o,"max");
		//if(o.tagName=="SELECT"){alert(m);if(m){if(o.selectedIndex<m){return o.data={message:t=="true"?a+"不能为空！":t};}}}
		if ( m&&v.length<m||n&&v.length>n) 
			return o.data={message:a+"长度必须" + (m==null?"":"大于" + m +"个字符 ") + (m!=null && n!=null?"，":"") + (n==null?"":"小于" + n + "个字符") + "！"};
		if ( n&&v.length>n ) 
			return o.data={message:a+"不能超过" + n + "个字符！"};
		if ( o.equal&&o.value!=o.equal.value)
			return o.data={message:"两次" + a + "校验不相同，请重新输入!"};
		t=F.ga(o,"init");
		if (t&&v=="") o.value=o.init;
		o.data=v;
	}
	function f9(){
		if (F.err(o.data)) o.style.color="#F00";
		else if (o.old&&o.data!=o.old) o.style.color="#00F";
		else o.style.color="";
		var e=document.getElementById("info_"+F.ga(o,"name"));
		if (e)e.innerHTML=F.err(o.data)?("<font color=#FF0000><b>" + o.data.message + "</b></font>"):e.old;
	}
	t=F.ga(o,"kind");
	if(t) o.sd=function(v){o.value=o.data=o.old=v;if(o.inbox)o.inbox(v);};
	switch(t)
	{	case "red":
			return o.sd=function(v){o.innerHTML=F.htmInbox(v).replace(/&lt;font color=([^&]+)&gt;/g,"<font color=$1>").replace(/&lt;\/font&gt;/g,"</font>").replace(/&lt;b&gt;/g,"<b>").replace(/&lt;\/b&gt;/g,"</b>");o.title=v.replace(/<font[^>]*>|<\/font>|<b>|<\/b>/g,"");};
		case "money":
			t=F.ga(o,"scale");
			F.sa(o,"scale",t==null?2:t);
		case "num":
			o.style.imeMode="disabled";
			t=F.ga(o,"zero");
			if (t) o.title="０表示" + t;
			function f1(){
				var v=o.value.trim(),z=F.ga(o,"zero");
				if(v=="") return o.data=void(0);
				if (v==z) return o.data=0;
				v=parseFloat(v);
				var a=F.ga(o,"label"),e=F.ga(o,"err");
				if(a==null)a="";
				if (isNaN(v)) return o.data={message:(e!=null?e:a+"含有不正确字符，请输入数字！")}; 
				if (v==0){
				if(z){o.value=z;o.data=0;return}
					return o.data={message:a+"不能为零！"}
				}
				if (!F.ga(o,"neg"))v=Math.abs(v);
				var t=F.ga(o,"lower");
				if (t&& v<parseFloat(t)) return data={message:a+"数值不能小于"+t+"！"};
				t=F.ga(o,"upper");
				if (t&&v>parseFloat(t)) return o.data={message:a+"数值不能大于"+t+ "！"};
				var s=F.ga(o,"scale");
				if (!s||parseInt(s)<=0) return o.data=o.value=parseInt(v);
				var r=v.toString(),p=r.indexOf("."),l=0;
				p<0?r+=".":l=r.length-1-p;
				for (var i=0;i<(s-l);i++) r+="0";
				o.data=o.value=r;
				f();
			}
			o.exam=function(){f1();f9()};
			f1();
			break;
		case "en":
			function f4()
			{
			var v=o.value.trim();
			if(v.match(/^\w+$/i)==null)
			return o.data={message:"只能输入字母、数字和下划线！"};
			o.data=v;f();
			}
			o.exam=function(){f4();f9()};f4();break;
		case "email":
			function f2(){
				var v=o.value.trim();
				if(v.match(/^[\w.-]+@([0-9a-z][\w-]+\.)+[a-z]{2,3}$/i)==null)
					return o.data={message:"请输入正确的Email地址！"};
				o.data=v;
				f();
			}
			o.exam=function(){f2();f9()};
			f2();
			break;
		case "date":
			//这段函数我没有检查，准备更改
			function f3(){
				var v=o.value.trim(),e=F.ga(o,"err");
				if (v=="") return;
				v=v.replace(/[^0-9\-]/g,"");
				try{
					var a=o.label==null?"":o.label,year=parseInt(v.substring(0,4)),month=Math.abs(v.match(/-\d{1,2}/)[0]),day=null;
					if (v.length>7) day=Math.abs(v.match(/-\d{1,2}$/)[0]);
					if (o.lower!=null && year<o.lower ) return o.data={message:a+"不能小于" + o.lower + "年！"};
					if (o.upper!=null && year>o.upper ) return o.data={message:a+"不能大于" + o.upper + "年！"};
					if ( month<=0 || month>12 || day!=null && (day<=0 || day>31)) return o.data={message:(e!=null?o.message:"输入的日期不合法！")};
					o.value=o.data=year+"-"+month+(day==null?"-1":"-"+day);
				}catch(ex){return o.data={message:(e!=null?e:"请输入正确的日期！")}}
			}
			o.exam=function(){f3();f9()};
			f3();
			break;
	}
	if(F.isInput(o))
	{
		o.sd=function(v){o.value=o.data=o.old=v;if(o.inbox)o.inbox(v)};
		if(!o.exam){f();o.exam=function(){f();f9()}}
		F.insertE(o,"blur",function(){o.exam()});
		F.addE(o,"focus",function(m){m.style.color="#000"});
	}
	else if (F.isSelect(o))
	{
		o.sd=function(v){
			if(typeof(v)=="object"||typeof(v)=="array")
			{
				var t=F.ga("start")
				o.length=t?parseInt(t):0;
				for(var i=0;i<v.length;i++)
				{	var p=0;
					for(var e in v[i])
					{	if(p==1){o.options[o.length]=new Option(v[i][e],t);break;}
						t=v[i][e];
						p++;
					}
				}
			}
			else
			{
				o.value=o.data=o.old=v;
				if(o.inbox)o.inbox(v);
			}
		}
		F.insertE(o,"change",function(){o.data=o.value});
		o.data=o.value;
	}
	else if(o.type=="checkbox")
	{
		if(o.id=="key")
		o.sd=function(v){o.checked=false;o.value=o.data=v;if(o.inbox)o.inbox(v)};
		else
		o.sd=function(v){
			o.defaultChecked=o.checked=(o.value==v?true:false);
			if(o.inbox)o.inbox(v);
		};
	}
	else 
	{	if(o.inbox)o.sd=function(v){o.inbox(v)};
		else
		switch(o.tagName)
		{
			case "IMG":
				o.sd=function(v){o.src=v}
				break;
			case "A":
				o.sd=function(v){o.href=o.href.replace(/\?(.*)$/g,"")+"?id="+escape(v)};
				break;
			default:
				if(o.id.indexOf("info_")>=0)
					o.sd=function(v){o.innerHTML="<font color=#ff0000><b>" + F.htmInbox(v) + "</b></font>"};
				else
					o.sd=function(v){o.innerHTML=F.htmInbox(v)};
		}
	}

};
//分解url
F.split=function(s){
	var o={};
	if(!s||s=="")return o;	
	try
	{	var l=s.split("&");
		for (i=0; i<l.length; i++)
		{	var t=l[i].split("=");
			if(t.length!=2) continue;
			o[t[0].trim()]=unescape(t[1].trim());
		}
	}catch(e){}
	return o;
};

//获取url中传递的变量
F.query=F.split(location.search.replace("?",""));
F.cookie=F.split(F.getCookie("params"));
//初始化
function init(o){
	if(F.getCookie("s_entry")=="")beforeLogin();else afterLogin();
	if(!o)o=document.body;

	function f(o){
		var n;
		if(n=F.ga(o,"control")){F.Control(n,o);}
		else if(n=F.ga(o,"search")){F.Search(n,o);}
		else {F.loop(o.childNodes,f);}
	}
	f(o);
	F.delCookie("params");
};
F.reset=function(o){
	if(o.old) o.sd(o.old);
	else if(o.tagName=="INPUT")
	{
		if(o.type=="checkbox"||o.type=="radio")
			o.checked=o.defaultChecked;
		else o.data=o.value=o.defaultValue;
	}
	else if (o.tagName=="TEXTAREA")
		o.data=o.value=o.defaultValue;
};
F.clear=function(o){
	if(o.old)o.old=void(0);
	if(o.value)o.value=o.defaultValue;
	if(o.checked)o.checked=o.defaultChecked;
	if(o.data)o.data=void(0);
};
//------------------------------------------------------------------------------
F.Search=function(n,o){
	if(!n)n="common";
	var s=EC.search[n];
	if(!s){
		EC.search[n]=s={
		name:n,
		type:"search",
		all:{},
		control:{},
		hide:false,
		select:function(){	//执行查询
			try	{
				var o=s.all;
				var p=s.xml();
				for (var e in s.control) {s.control[e].select(p);};
			}
			catch(e){alert(e.message)}
		},
		reset:function(){for(var e in s.all) F.reset(s.all[e])},
		xml:function(){
			var o=s.all,p="";
			for(var e in o)
			{	if(s.hide&&F.ga(o[e],"auto")) continue;
				if(o[e].exam)o[e].exam();
				var t=o[e].gd();
				if(t)p+="<"+e+">"+ F.xmlInbox(t)+"</"+e+">";
			}
			return p;
		},
		para:function(){		//提取查询对象
				var o=s.all,p={};
				for(var e in o)
				{	if(s.hide&&F.ga(o[e],"auto")) continue;
					if(o[e].exam)o[e].exam();
					var t=o[e].gd();
					if (t)o[e]=t;
				}
				return p;
		},
		cookie:function(){F.setCookie("params",s.url())},
		url:function(){
				var o=s.all,p="";
				for(var e in o)
				{	if(s.hide&&F.ga(o[e],"auto")) continue;
					if(o[e].exam)o[e].exam();
					var t=o[e].gd();
					if (t)p+=e+"="+escape(t)+"&";
				}
				return p==""?"":p.substring(0,p.length-1);		
		},
		add:function(o){	   //添加成员
			var n=F.ga(o,"name"),t;
			if(F.ga(o,"stat")=="hide") s.hide=true;
			if(t=F.ga(o,"para"))
			{
				eval("t="+t);
				for(var e in t)
				{	var v=t[e];
					s.all[e]={gd:function(){return v}};
				}
			}
			if(t=F.ga(o,"act"))
			{
				switch(t)
				{
					case "reset":
						return F.addE(o,"click",function(){s.reset()});
					case "auto":
						return F.addE(o,"click",function(){s.hide=s.hide?false:true});					
					default:
						F.addE(o,"click",function(){s.select()});
				}
			}
			if(n)
			{
				F.assign(o,s);
				s.all[n]=o;
				var t=F.query[n];
				if(t)
				{	
					o.sd(t);
					o.old=void(0);
				}
				var t=F.cookie[n];
				if(t)
				{	
					o.sd(t);
					o.old=void(0);
				}
			}
		},
		init:function(o){		//初始化
			s.add(o);
			if(F.ga(o,"group"))return;
			F.loop(o.childNodes,s.init);
		}};
	}
	if(!o) return s;
	if(!F.ga(o,"name")) s.init(o); else s.add(o);
	return s;
};

//------------------------------------------------------------------------------
F.Control=function(n,o,b){
	var c=EC.control[n];
	if(!c){
		c={
		name:n,
		type:"control",
		busy:false,
		hide:false,
		all:{},
		para:{},
		info:{},
		auto:false,
		cache:{},
		control:{},
		table:{},
		init:function(o){		//初始化
				var m=F.ga(o,"name"),t,k;
				if(o.id&&o.id.indexOf("info_")>=0)
				{	o.old=o.innerHTML;
					(c.info[o.id]=o).sd=function(v){this.innerHTML=v};
				}
				if(t=F.ga(o,"search")) F.Search(t,o);
				if(t=F.ga(o,"act"))
				{
					switch(t)
					{
						case "submit":
							return F.addE(o,"click",function(){o.blur();c.submit(o)});
						case "reset":
							return F.addE(o,"click",function(){if(beforeAct(o))c.reset()});
						case "auto":
							F.addE(o,"click",function(){if(beforeAct(o))c.hide=c.hide?false:true});	
							break;
						case "freeM":
							//var p9 = cc.indexOf(".");
							//var funcc = cc.substring(p9+1);
							var cc=F.ga(o,"cmd"),z=F.ga(o,"para"),p="";
							if(z){
								eval("z="+z);
								for(var e in z)
								{
									p+="<" + e + ">" + z[e] + "</" + e + ">";
								}
							}
							z=p;
							return F.addE(o,"click",function(){
							var p=t=="key"?c.key.data:c.keylist();
							if(beforeAct(o,p) && cc){
								//userfreeset(F.xmlInbox(p),funcc);
								var d=F.call(cc,"<useridlist>"+F.xmlInbox(p)+"</useridlist>"+z,false);
								c.adapt(d);
								afterAct(o,d);
							}
							});
							break;
						case "key":
						case "keylist":
							var cc=F.ga(o,"cmd"),z=F.ga(o,"para"),p="";
							if(z){
								eval("z="+z);
								for(var e in z)
								{
									p+="<" + e + ">" + z[e] + "</" + e + ">";
								}
							}
							z=p;
							return F.addE(o,"click",function(){
							var p=t=="key"?c.key.data:c.keylist();
							if(beforeAct(o,p)&&cc)
							{
								var d=F.call(cc,"<id>"+F.xmlInbox(p)+"</id>"+z,false);
								c.adapt(d);
								afterAct(o,d);
							}
							});
					}
				}
				if(F.ga(o,"list"))
				{	c.all[m]=F.List(m,o,c);
					if(o.tHead)F.loop(o.tHead.childNodes,c.init);
					if(o.tFoot)F.loop(o.tFoot.childNodes,c.init);
				}
				//分页内容
				else
				{ 
					if(t=F.ga(o,"group"))
					switch(t)
					{
						case "page":
							var s="<table width=100% align=right border=0 cellspacing=0 cellpadding=0 style='letter-spacing:2px;cursor:pointer'><tr><td align=right style='padding:0px 4px 0px 0px'>";
							s+=(t=F.ga(o,"info"))?t:"符合条件的记录有";
							s+="<span name=maxcount style='margin:0px 2px 0px 2px;font-weight:bold'>0</span>条";
							if((t=F.ga(o,"pagesize"))!="false")
								s+="，每页显示<span name=pagesize style='margin:0px 2px 0px 2px;font-weight:bold'>"+(t?t:20)+"</span>条";
							if(F.ga(o,"maxpage")!="false")
								s+="，共<span name=maxpage style='margin:0px 2px 0px 2px;font-weight:bold'>0</span>页";
							s+="&nbsp;第</td><td width=45 style='padding:0px 1px 0px 0px'><input   type=text name='page' style='position:relative;top:-2px;font-size:11px;border:1px solid #999999;padding-left:3px;width:45px' maxlength=6 value=1></td><td width=9 style='padding:0px'><table width=9 border=0 cellspacing=1 cellpadding=0 bgcolor=#999999 style='position:relative;top:-2px'><tr style='height:7px'> <td bgcolor=#EEEEEE style='padding:0px'><img src='/js/pic/tri_up.gif' width=9 height=7 border=0></td></tr><tr style='height:7px'><td bgcolor=#EEEEEE style='padding:0px'><img src='/js/pic/tri_down.gif' width=9 height=7 border=0></td></tr></table></td><td width=16 style='padding:0px 0px 0px 4px'>页</td></tr></table>";
							o.innerHTML=s;
							F.loop(F.name(o),function(o){
								if(o.tagName=="INPUT")
								{	o.gd=function(){return o.value};
									o.sd=function(v){o.value=v;}
								}
								else
								{
									o.gd=function(){return o.innerHTML};
									o.sd=function(v){o.innerHTML=v}
								}
								c.all[F.ga(o,"name")]=o;
							});
							var l=F.tag(o,"IMG");
							for(var i=0;i<l.length;i++)
							{
								F.addE(l[i].parentNode,"mousedown",function(e){e.bgColor="#FF9900"});
								F.addE(l[i].parentNode,"mouseup",function(e){e.bgColor="#EEEEEE"});
							}
							F.addE(l[0],"click",function(){c.page(parseInt(c.all.page.gd())+1)});
							F.addE(l[1],"click",function(){c.page(parseInt(c.all.page.gd())-1)});
							return;
						case "pageturn":
							var q=(k=F.ga(o,"scale"))?parseInt(k):5,free=F.ga(o,"free");
							function ee(s,p,b){
								var g=o.appendChild(F.gen(b?"span":"a"));
								if(b)
								{
									g.style.fontWeight="bold";
									g.style.color="#F00";
								}
								else
								{
									g.className="link";
									g.href=".";
									g.onclick=function(){c.page(p);return false};
								}
								g.innerHTML=s;
								o.appendChild(document.createTextNode(" "));
							}
							o.sd=function(p,m,m){
								if (!m||m==0) return o.innerHTML="";
								if (m==1) return o.innerHTML="<font color=#ff0000>共 1 页</font>";
								var p1=p-q<1?1:p-q,p2=p+q>m?m:p+q;
								o.innerHTML="";
								if(free)ee("首页",1);
								if(p>1)ee("上一页",p-1);
								for(var i=p1;i<p;i++) ee("["+i+"]",i);
								ee("["+p+"]",p,true);
								for(var i=p+1;i<=p2;i++) ee("["+i+"]",i);
								if(p<m)ee("下一页",p+1);
								if(free)ee("尾页",m);
							}
							c.all[t]=o;
							return;
						default:
							c.add(o);
					}
					else c.add(o);
					if(o.id=="key") c.key=o;
					F.loop(o.childNodes,c.init);
				}
		},
		keylist:function(n){
			var s="";
			for(var e in c.table){if(n&&e==n||!n&&!c.table[e].father) return s=c.table[e].gd();}
			return s;
		},
		submit:function(o){
			if(c.busy) return;
			c.busy=true;
			try
			{
				var a=c.all,p={};
				for(var e in a)
				{	if(c.hide&&F.ga(a[e],"auto")) continue;
					if(a[e].exam)a[e].exam();
					
					//filter null
					if(a[e] && a[e].gd && a[e].gd()) {p[e]=a[e].gd();}
				}
				
				if(!beforeAct(o,p))return c.busy=false;
				var s=""
				for(var e in p){ s+=" " + e + "=\"" + F.xmlInbox(p[e]) + "\"";}
				if(s=="")throw {message:"您还没有填写任何信息，不能提交空表单！"}
				var d=F.call(F.ga(o,"cmd"),"<Xmlstr>"+F.xmlInbox("<row "+s+"/>")+"</Xmlstr>",false,c.adapt,n);
				afterAct(o,d);
			}
			catch(e){c.busy=false;alert(e.message)}
		},
		page:function(p){
			p=parseInt(p);
			var t=parseInt(c.all.page.gd());
			if(isNaN(p)||p<=1)p=1;
			else
			{
				var z=(z=c.all.pagesize)?parseInt(z.gd()):20,n=parseInt(c.all["maxcount"].gd()),m=parseInt((n-1)/z)+1;
				if(p>m)p=m;		
			}
			if(p!=t) c.fresh(p);
		},
		add:function(o){	   //添加成员
				var n=F.ga(o,"name");
				if(n)
				{
					F.assign(o,c);
					c.all[n]=o;
					if (o.id=="key") c.key=function(){return c.all[n].gd()}
				}
		},
		abort:function(e){
			var l=c.table;
			for(var i in l) 
			if(l[i].async) l[i].wait();
			alert(e.message);
		},
		preload:function(){//预载
			c.busy=true;
			try
			{
				F.call(c.pre,"<para>"+c.paraxml()+"</para>",false,c.adapt,n);
			}
			catch(e)
			{	c.busy=false;
				c.abort(e);
			}
		},
		fresh:function(p){ //执行刷新
			if(c.busy)return;
			c.busy=true;
			if(!beforeSelect()) return;
			var t;
			
			if(p)
			{
				if(t=c.all.page)t.sd(p);
				var l=c.table;
				for(var e in l)l[e].wait();
			}
			
			function f(){
				var s="";
				for(var e in c.all)
					switch(e)
					{	case "page":
						case "pagesize":
						case "maxcount":
						case "sort":
							s+=F.wrap(c.all[e].gd(),e);			
					}
					
				return s;
			}
			try
			{
			//alert("F5="+c.oldpara+f());
				F.call(c.cmd,"<para>"+c.oldpara+f()+"</para>",true,c.adapt,n);
			}
			catch(e)
			{	c.busy=false;
				c.abort(e);
			}
		},
		paraxml:function(){
			var p="";
			for(var e in c.para)
			{
				p+="<"+e+">"+c.para[e]+"</"+e+">";
			}
			return p;
		},
		select:function(s){	//执行查询,好难找啊，终于找到了啊    哈哈哈哈哈哈
			if(c.busy)return;
			try
			{
				if(!s) s=c.search?c.search.xml():"";
				s+=c.paraxml();
				c.oldpara=s;
				if(t=c.all.maxcount)t.sd(0);
				c.fresh(1);
			}
			catch(e){alert(e.message);}
		},
		reset:function(){
			for(var e in c.all)F.reset(c.all[e]);
			for(var e in c.info)F.reset(c.info[e]);
		},
		clear:function(){
			for(var e in c.all)F.clear(c.all[e]);
			for(var e in c.info)F.clear(c.info[e]);
		},
		adapt:function(d){
			var t;
			for(var e in d)
			{	switch(e)
				{ case "alert":
					alert(d[e]);
					break;
				  case "msgbox":
				    msgbox(d[e]);
				    break;
				  case "script":
				    eval(d[e]);
				    break;
				  default:
					if(t=c.all[e])t.sd(d[e]);
				}
			}
			if(d.page&&c.all.page)
			{
				var p=parseInt(c.all.page.gd()),z=(z=c.all.pagesize)?parseInt(z.gd()):20,n=parseInt(c.all["maxcount"].gd()),m = Math.ceil(parseInt(n)/z);
				
				if(t=c.all.maxpage)t.sd(m);
				if(t=c.all.pageturn)t.sd(p,n,m);
			}
			else if(t=c.all.pageturn)t.sd();
			if(t=c.all.validcode)
			{	t.value=t.data="";t.focus();
				/*
				if(t=c.all.validpic)
				{	var s=t.src.trim().replace(/rnd=.*$/,"");
					switch(s.indexOf("?"))
					{
						case -1:s+="?";break;
						case s.length:break;
						default:
							s+="&";
					}
					t.src=s+"rnd="+Date.parse(new Date());
				}
				*/
			}
			c.busy=false;
		}
		};
		if(!b) EC.control[n]=c;
	}
	if(!o) return c;
	if(!F.ga(o,"name"))
	{
		var t;
		if(t=F.ga(o,"cmd"))c.cmd=t;
		if(t=F.ga(o,"select")){c.cmd=t;c.auto=true;}
		if(t=F.ga(o,"pre"))c.pre=t;
		if(t=F.ga(o,"para"))eval("c.para="+t);
		if(F.ga(o,"stat")=="hide") c.hide="true";
		if(c.cmd&&!c.search)
		{
			if(!(t=F.ga(o,"query")))t="common";
			if(t!="none") (c.search=F.Search(t)).control[n]=c;
		}
		c.init(o);
		if(c.pre) c.preload();
		if(c.cmd&&c.auto) c.select();	
	}
	else c.add(o);
	return c;
}
//------------------------------------------------------------------------------------------------------
//List(name, object , table, parent)
//n o c p z t s l z h
F.List=function(n,o,p){
	var t={
		name:n,
		type:"list",
		table:p.table,
		ref:o,
		layout:F.ga(o,"layout"),
		base:[],//源文件TR的结构
		key:[],	//存储所有的主键
		col:1,  //每行显示几个单元
		row:[],	//共有多少行，一行可以包含多个tr
		all:[],	//每行的控件集合
		wait:function(b){
			var s=o.tBodies;
			if(s[1]||s[2])
			{
				if(s[2])s[2].style.display=b?"none":"";
				s[0].style.display=b==1?"":"none";
				s[1].style.display=b==2?"":"none";
			}
		},
		kind:F.ga(o,"list"),
		init:function(o,k){
			var a=this.all[k]=[];
			function add(o)
			{
				if(m=F.ga(o,"act"))
				{
					var r=t.all[k];
					var c=F.ga(o,"cmd"),p;
					switch(m)
					{
						case "submit":
							return F.addE(o,"click",function(){
								var p={};
								for(var e in r)
								{	if(r[e].id=="key") p[e]=r[e].data;
									else{
									var ee=r[e].gd();
									if (ee)p[e]=ee;}
								}
								if(beforeAct(o,p,t.all[k])&&c)
								{
									var s="";
									for(var e in p)s+=" " + e + "=\"" + F.xmlInbox(p[e]) + "\"";
									var d=F.call(c,"<Xmlstr>"+F.xmlInbox("<row "+s+"/>")+"</Xmlstr>",false);
									t.adapt(d,r);
									afterAct(o,d,t.all[k]);
								}
								});
						case "key":
							var z=F.ga(o,"para"),p="";
							if(z){
								eval("z="+z);
								for(var e in z)
								{
									p+="<" + e + ">" + z[e] + "</" + e + ">";
								}
							}
							z=p;
							return F.addE(o,"click",function(){
								var p=t.key[k].data;
								if(beforeAct(o,p,t.all[k])&&c)
								{				
									var d=F.call(c,"<id>"+F.xmlInbox(p)+"</id>"+z,false);
									t.adapt(d,r);
									afterAct(o,d,t.all[k]);
								}
								});
					}
				}
				var n=F.ga(o,"name");
				if (n)
				{
					F.assign(o);	 //分配检测事件
					if(F.ga(o,"list"))
					{	a[n]=F.List(n,o,t);
						if(o.tHead)F.loop(o.tHead.childNodes,t.init);
						if(o.tFoot)F.loop(o.tFoot.childNodes,t.init);
					}
					else
					{
						if(o.id=="key") t.key[t.key.length]=o;
						a[n]=o;
						if(F.ga(o,"group"))return;
					}
				}
				F.loop(o.childNodes,add);
			}
			add(o);
		},
		adapt:function(d,r){
			var o;
			for(var e in d)
			{	switch(e)
				{ case "alert":
					alert(d[e]);
					break;
				  case "msgbox":
				    msgbox(d[e]);
				    break;
				  case "script":
				    eval(d[e]);
				    break;
				  default:
					if(o=r[e])o.sd(d[e]);
				}
			}
		},
		gen:function(m){
				var b=t.base,u=t.row.length,c=t.col;
				if(t.kind=="grid")
				{
					for(var i=u;i<m;i++)
					{	var k=Math.floor(i/c);
						if(k>=t.row.length)	t.row[k]=[b[0].root.appendChild(b[0].ref.cloneNode(true))];
						t.init(t.row[k].appendChild(b[0].sub.cloneNode(true)),i);
					}
				}
				else
				{
					for(var i=u;i<m;i++)
					{	t.row[i]=[];
						for(var j=0;j<b.length;j++)
						{	var tr=b[j].root.appendChild(b[j].ref.cloneNode(true));
							tr.className=i%2==0?"r1":"r2";
							t.init(t.row[i][j]=tr,i);
						}
					}
				}
		},
		data:function(){
			var p="",q="";
			for(var i=0;i<t.all.length;i++)
			{
				var a=t.all[i];
				for(var e in a)
				{	var t=a[e].gd();
					if(t)q+=" " + e + "=\"" + F.xmlInbox(t) + "\"";
				}
				if(q!="") p+="<row"+q+"/>";
			}
			if(p=="")throw {message:"您还没有填写任何信息，不能提交空表单！"};
		},
		gd:function(){
			var p="",s;
			for(var i=0;i<t.key.length;i++)
			{
				if(s=t.key[i].gd()) p+=s+",";
			}
			return p.substring(0,p.length-1);
		},
		sd:function(v){
				
				if(!v||!v.length||v.length==0)	return t.wait(2);
				var a=t.all,r=t.row,c=t.col,l=v.length,i=0;
				
				if(a.length<l) this.gen(l);
				for(;i<l;i++) for(var e in v[i]) if(a[i][e])a[i][e].sd(v[i][e]);
				if(t.layout=="fix")
				{
					for(;i<a.length;i++)for(var e in a[i])F.reset(a[i][e]);
				}
				else
				{
					l=Math.floor((l-1)/c)+1;
					for(;i<l*c;i++)for(var e in a[i])F.reset(a[i][e]);
					var k=0;
					for(;k<l;k++)for(var j=0;j<r[k].length;j++) r[k][j].style.display="";
					for(;k<r.length;k++)for(var j=0;j<r[k].length;j++) r[k][j].style.display="none";
					for(;k<t.key.length;k++)t.key[k].sd("");
				}
				t.wait(1);
		}
	}
	var h=o.tBodies[0],l=h.childNodes,b=h.rows[0].bgColor,w=h.rows[0].cells.length;
	switch(t.kind)
	{	case "flat": //横向平铺，base取每个tr的第二个cell
			for(var i=0;i<l.length;i++)
			{	if(l[i].nodeType==1)
					t.base[t.base.length]={root:l[i],ref:l.removeChild(l[i].cells[1])};
			}
			break;
		case "fixgrid": //单元格平铺，取每一个cell
			var tr=h.rows,k=0;
			for(var i=0;i<tr.length;i++)
			{	t.row[i]=[tr[i]];
				var td=tr[i].cells;
				for(var j=0;j<td.length;j++){t.init(td[j],k);k++}
				if(i==0)t.col=td.length;
			}
			break;
		case "grid":
			t.col=parseInt(F.ga(o,"col"));
			while(l.length>0)
			{
				var e=h.removeChild(l[0]);
				if(e.nodeType==1)
				t.base[0]={root:h,ref:e,sub:e.removeChild(e.cells[0])};
			}
			t.gen(1);
			break;
		case "fix":
			var tr=h.rows,k=parseInt(F.ga(o,"row"));
			if(isNaN(k))k=1;
			for(var i=0;i<tr.length;i++)
			{	var j=Math.ceil(i/k);
				if(j>=t.row.length)t.row[j]=[];
				t.row[j][i%k]=tr[i];
				t.init(tr[i],j); 
			}
			break;
		case "auto":
			while(l.length>0)
			{	var e=h.removeChild(l[0]);
				if(e.nodeType==1)
					t.base[t.base.length]={root:h,ref:e};
			}
			t.gen(1);
			break;
	};
	if(!p.select) t.father=p.name;
	//显示查询的动态
	else if(F.ga(o,"loading"))
	{
		var u=o.tBodies.length,m=(m=F.ga(o,"min"))?parseInt(m):200,
		f=function(s){
			var p=o.insertBefore(F.gen("tbody"),o.tFoot),v=p.appendChild(F.gen("tr")).appendChild(F.gen("td"));
			p.style.display="none";
			v.colSpan=w;
			v.style.backgroundColor="white";
			v.vAlign="middle";
			v.align="center";
			v.style.height=m+"px";
			v.innerHTML=s;
		};
		if(u<2)f("<div style='font-size:20px;font-weight:bold;color:#999;letter-spacing:15px;line-height:40px;text-align:center'>没有相关数据记录</div>");
		if(u<3)f("<div style='letter-spacing:1px;line-height:24px'>服务器正在传送数据，请稍候..<br/><img src='/js/pic/loading.gif' width=187 height=10></div>");
	}
	if(!p.table[n])p.table[n]=t;
	return t;
}
////设置菜单项目
function setbill(fn,linkstr,width,height,o)
{
	var tmp="";
	if(fn.indexOf("resource")>0) tmp=tmp + fn;
	else{
		var tmp="/resource/";
		var y=fn.substring(0,4);
		var m=fn.substring(4,6);
		var d=fn.substring(6,8);
		tmp+=y+"/"+m+ "/"+d+"/P/"+fn;
	}
	
	var ob=document.getElementById(o)?document.getElementById(o):o;

	if(fn.indexOf(".swf")>0)
	{
	ob.innerHTML="<embed src='"+tmp+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+width+"' height='"+height+"'></embed>";
	}
	else
	{
	ob.innerHTML="<a href='"+linkstr+"' target=_blank><img src='"+tmp+"' width="+width+" height="+height+" border=0></a>";
	}
}
//设置默认的视屏
function setDefaultBill(o,pic,width,height)
{	
var ob=document.getElementById(o)?document.getElementById(o):o;
if(ob.innerHTML=="")
	{	
		if(pic.indexOf(".swf")>0)
		{
			ob.innerHTML="<embed src='"+pic+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+width+"' height='"+height+"'></embed>";
		}
		else
		ob.innerHTML="<img src='"+pic+"' width='"+width+"' height='"+height+"' >";
	}
}
//不同类型的退出，事件 
function exit(flag){
if(flag==null){

		F.delCookie("s_id");F.delCookie("s_rname");F.delCookie("s_areacode");F.delCookie("s_entry");
		if(F.id("login")&&F.id("logined")){
		document.getElementById("logined").style.display="none";
		document.getElementById("login").style.display="";
		try{	document.getElementById("welcome").innerText="欢迎你，来宾！";}catch(e){}
		document.all("username").value="";
		document.all("password").value="";
		try{F.call("corp.LoginOut","",false,function(){});}catch(e){}
		}
}
else if(flag==1){//admin
	F.delCookie("s_entry");F.delCookie("aName");F.delCookie("aId");F.delCookie("aUser");F.delCookie("aFlag");F.delCookie("css");
	try{F.call("Admin.LoginOut","",false,function(){});}catch(e){}
	location.href="/admin/index.htm";
				
}
else if(flag==2){//agent
	F.delCookie("s_entry");F.delCookie("s_agentid");F.delCookie("s_grade");F.delCookie("s_areacode");F.delCookie("s_name");F.delCookie("css");
	try{F.call("Agent.LoginOut","",false,function(){});}catch(e){}
	location.href="/agent/index.htm";
}
else if(flag==3){//corp
	F.delCookie("s_id");F.delCookie("s_rname");F.delCookie("s_areacode");F.delCookie("css");
	try{F.call("corp.LoginOut","",false,function(){});}catch(e){}
	location.href="/agent/corpindex.htm";
}
}
function refreshValidPic()
{
	var rnd = Math.random();
	document.getElementById("validpic").src = "/inc/getcode.aspx?rnd="+rnd;
	document.write("<input type='password' name='visitFlag' id='visitFlag' value='"+rnd+"' style='display:none;'>");

}
//找回密码,通过js打开找回密码的ForgetPassword.aspx页面
function forgetPwd(){window.open("http://"+document.location.hostname+"/xqt/ForgetPassword.aspx","forgetpwd","width=420,height=140");}

//首页资讯幻灯效果默认图
try{if (imgUrl && imgUrl.length>0){}else{var imgUrl=[["/img/news2.jpg","#"],["/img/news3.jpg","#"]];}}catch(e){var imgUrl=[["/img/news2.jpg","#"],["/img/news3.jpg","#"]];}

//加载站广告
function loadForeignSiteAd(o)
{
	
	if(window.parent.document.location.href.toLowerCase().indexOf("ad.htm")<=0)
	{
		var ob=document.getElementById(o)?document.getElementById(o):o;
		ob.appendChild( document.getElementById('in_' + o) );
	}
	else
	{
		document.getElementById('in_' + o).style.display = "none";	
	}
}
//小区搜索
function search()
{
   if(document.getElementById("area1").value==""){alert('必须选择一个大类进行查询');document.getElementById("area1").focus();return false;}
   if (document.getElementById("area2").value==""){alert('必须选择一个小类进行查询');document.getElementById("area2").focus();return false;}
   if (document.getElementById("zonekey").value!="" && document.getElementById("zonekey").value!="关键字")
   {
      window.open("/info/search.aspx?key="+document.getElementById("zonekey").value+"&area1="+document.getElementById("area1").value+"&area2="+document.getElementById("area2").value+"&type=zone","search");
   }
   else 
   {
     alert("请输入关键字");
	 document.getElementById("zonekey").focus();return false;
   }
}
//招贴搜索
function postsearch(){
	if(document.getElementById("kind11").value==""){alert('必须选择一个大类进行查询');document.getElementById("kind11").focus();return false;}
   if (document.getElementById("kind22").value==""){alert('必须选择一个小类进行查询');document.getElementById("kind22").focus();return false;}
   if (document.getElementById("postkey").value!="" && document.getElementById("postkey").value!="关键字")
   {
      window.open("/info/search.aspx?key="+document.getElementById("postkey").value+"&postc1="+document.getElementById("kind11").value+"&postc2="+document.getElementById("kind22").value+"&type=post","search");
   }
   else 
   {
     alert("请输入关键字");
	 document.getElementById("postkey").focus();return false;
   }
}