function killerror()
{
	return true;	
};
//indow.onerror = killerror;
// addevent begin
var UA = navigator.userAgent.toLowerCase();
var isOpera  = (UA.indexOf('opera') != -1);
var isFF = (UA.indexOf('firefox')!= -1);
var isIE = document.all ? true : false;
var version;
if (isIE)
{
	version = navigator.appVersion.match(/MSIE\s+([^\s]+);\s/i)[1];
}
function isUndefined(s)
{
	if ("undefined" == typeof(s))
	{
		return true
	}
	return false;
}
function inArray(needle, haystack) {
	if(typeof needle == 'string') {
		for(var i in haystack) {
			if(haystack[i] == needle) {
				return true;
			}
		}
	}
	return false;
}

var nav=navigator.appVersion; 
var BrwVer;
if (-1 != nav.indexOf('MSIE'))
{
	BrwVer = "ie" + nav.substr(nav.indexOf('MSIE') + 5,3);
}
else
{
	BrwVer = "other";
}

try{document.execCommand("BackgroundImageCache", false, true);
}catch(e){}


var randNum = Math.random();
function $(id)
{
	return document.getElementById(id);
}
var addEvent = function(o, t, f)
{
var d = 'addEventListener', n = 'on' + t, rO = o, clean = (t != 'unload');
if (o[d]) o[d](t, f, false);
else if (o.attachEvent) o.attachEvent(n, f);
else
{
clean = false;
if (!o._evts) o._evts = {};
if (!o._evts[t])
{
o._evts[t] = o[n] ? { b: o[n] } : {};
o[n] = new Function('e', 'var r = true, o = this, a = o._evts["' + t + '"], i; for (i in a) { o._f = a[i]; r = o._f(e||window.event) != false && r; o._f = null; } return r');
if (t != 'unload') clean = true;
}
if (!f._i) f._i = addEvent._i++;
o._evts[t][f._i] = f;
}
if (clean) addEvent(window, 'unload', function(){removeEvent(rO, t, f);});
};
addEvent._i = 1;

var removeEvent = function(o, t, f)
{
var d = 'removeEventListener';
try
{
if (o[d]) o[d](t, f, false);
else if (o.detachEvent) o.detachEvent('on' + t, f);
else if (o._evts && o._evts[t] && f._i) delete o._evts[t][f._i];
} catch (e) {}
};

function cancelEvent(e, c)
{
e.returnValue = false;
if (e.preventDefault) e.preventDefault();
if (c)
{
e.cancelBubble = true;
if (e.stopPropagation) e.stopPropagation();
}
};
// addevent stop

// json begin
(function (){
var m = {
'\b': '\\b',
'\t': '\\t',
'\n': '\\n',
'\f': '\\f',
'\r': '\\r',
'"' : '\\"',
'\\': '\\\\'
},
s = {
array: function (x) {
var a = ['['], b, f, i, l = x.length, v;
for (i = 0; i < l; i += 1) {
v = x[i];
f = s[typeof v];
if (f) {
v = f(v);
if (typeof v == 'string') {
	if (b) {
		a[a.length] = ',';
	}
	a[a.length] = v;
	b = true;
}
}
}
a[a.length] = ']';
return a.join('');
},
'boolean': function (x) {
return String(x);
},
'null': function (x) {
return "null";
},
number: function (x) {
return isFinite(x) ? String(x) : 'null';
},
object: function (x) {
if (x) {
if (x instanceof Array) {
return s.array(x);
}
var a = ['{'], b, f, i, v;
for (i in x) {
v = x[i];
f = s[typeof v];
if (f) {
	v = f(v);
	if (typeof v == 'string') {
		if (b) {
			a[a.length] = ',';
		}
		a.push(s.string(i), ':', v);
		b = true;
	}
}
}
a[a.length] = '}';
return a.join('');
}
return 'null';
},
string: function (x) {
if (/["\\\x00-\x1f]/.test(x)) {
x = x.replace(/([\x00-\x1f\\"])/g, function(a, b) {
var c = m[b];
if (c) {
	return c;
}
c = b.charCodeAt();
return '\\u00' +
	Math.floor(c / 16).toString(16) +
	(c % 16).toString(16);
});
}
return '"' + x + '"';
}
};

})();
String.prototype.parseJSON = function () {
try {
return !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(
this.replace(/"(\\.|[^"\\])*"/g, ''))) &&
eval('(' + this + ')');
} catch (e) {
return false;
}
};
Array.prototype.remove = function(dx) {
    if(isNaN(dx) || dx>this.length){return false;}
    this.splice(dx,1);
};
String.prototype.getNumber = function() {return this.replace(/[^\d]/g,""); };
String.prototype.replaceAll = stringReplaceAll;
String.prototype.trim = function()
{
	return this.replace(/(^\s*)|(\s*$)/g,"");
};
   
String.prototype.width = function()          
{                 
	return this.replace(/[^\x00-\xff]/g, "**").length;  
};

String.prototype.subStrWidth = function(n, sp)
{
	if (n >= this.width())
	{
		return this;
	}
	if (sp)
	{
		n -= sp.width();
	}
	var str = this.substr(0, n);
	var temp = n;
	while (str.width() > n)
	{
		temp --;
		str = str.substr(0, temp);
	}
	str += (sp) ? sp : "";
	return str;
};

function stringReplaceAll(AFindText,ARepText){
 var raRegExp = new RegExp(AFindText.replace(/([\(\)\[\]\{\}\^\$\+\-\*\?\.\"\'\|\/\\])/g,"\\$1"),"ig");
 return this.replace(raRegExp,ARepText);
};



// json end



String.prototype.htmlEcode = function()
{
        var str = this;

        str=str.replace(/&/g, "&amp;");
        str=str.replace(/</g, "&lt;");
        str=str.replace(/>/g, "&gt;");
        str=str.replace(/\'/g, "&apos;");
        str=str.replace(/\"/g, "&quot;");
        str=str.replace(/\n/g, "<br>");
        str=str.replace(/\ /g, "&nbsp;");
        str=str.replace(/\t/g, "&nbsp;&nbsp;&nbsp;&nbsp;");

        return str;
}

String.prototype.htmlDeEcode = function()
{
        var str = this;

        str=str.replace(/&amp;/g, "&");
        str=str.replace(/&lt;/g, "<");
        str=str.replace(/&gt;/g, ">");
        str=str.replace(/&apos;/g, "'");
        str=str.replace(/&quot;/g, '"');
        str=str.replace(/<br\s*>/g, "\n");
        str=str.replace(/\&nbsp;/g, " ");
        return str;
}


String.prototype.toHtmlEncode = function()
{
        var str = this;

        str=str.replace(/&/g,"&amp;");
        str=str.replace(/</g,"&lt;");
        str=str.replace(/>/g,"&gt;");
        str=str.replace(/\'/g,"&apos;");
        str=str.replace(/\"/g,"&quot;");
        str=str.replace(/\n/g,"<br>");
        str=str.replace(/\ /g,"&nbsp;");
        str=str.replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;");

        return str;
}

checkAll = function(o, e)
{
	o = $(o).getElementsByTagName("input");
	for (i = 0, n = o.length; i < n; i++)
	{
		if ("checkbox" == o[i].getAttribute("type"))
		{
			if (e != o[i])
			{
				o[i].checked = !o[i].checked;
			}
		}
	}
};

checkAll1 = function(o, e)
{
	o = $(o).getElementsByTagName("input");
	for (i = 0, n = o.length; i < n; i++)
	{
		if ("checkbox" == o[i].getAttribute("type"))
		{
			o[i].checked = e.checked;
		}
	}
};

playList = function(o)
{
	var id = "";
	o = $(o).getElementsByTagName("input");
	for (i = 0, n = o.length; i < n; i++)
	{
		if ("checkbox" == o[i].getAttribute("type") && o[i].checked )
		{
			id += "_" + o[i].value;
		}
	}
	if (id)
	{
		window.open("/mbox/play?id=" + id.substr(1), "mbox",'toolbar=no, menubar=no,height=615,width=820');
	}
};

function mBox(a)
{
	if ("string" != typeof(a))
	{
		a = a.href;
	}
	window.open(a, "mbox",'toolbar=no, menubar=no,height=615,width=820');
	return false;
}

COOKIE = {
"get" : function(name)
{
	var rs = new RegExp("(^|)" + name + "=([^;]*)(;|$)", "gi").exec(document.cookie), tmp;
	if(tmp = rs)
	{
		return unescape(tmp[2]);
	}
	return false;
},

"set" : function(name, value)
{
	var expdate = new Date();
	var argv = arguments;
	var argc = arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : "/";
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	if (null != expires)
	{
		expdate.setTime(expdate.getTime() + (expires * 1000));
	}
	document.cookie = name + "=" + escape(value)
	+ ((expires == null) ? "" : (";expires=" + expdate.toGMTString()))
	+ ((path == null) ? "" : (";path=" + path))
	+ ((domain == null) ? "" : (";domain=" + domain))
	+ ((secure == false) ? "" : ";secure");
},
"delete" : function(name)
{
	document.cookie = name + "=";
}
};


function Ajax(url)
{
	this.url = url;
	this.ttl = 20000;
	this.async = true;
	this.callBakc = function(){};
	this.backFormat = "JSON";
	var xmlObj = null;
	var tCallback = null;
	var noCache = true;
	
	var errorBack = function(msg)
	{
		if ("JSON" == this.backFormat)
		{
			tCallback(1, '{"message":"'+msg+'"}');
		}
		else if("XML" ==this.backFormat)
		{
			tCallback(1, '<?xml version="1.0" encoding="utf-8"?><message>'+msg+'</message>');
		}
		else
		{
			tCallback(1, msg);
		}
	};
	this.cancel = function()
	{
		try{
			kuhaDlg.loading1.style.display = "none";
		}catch(e){}
		try{
			xmlObj.abort();
			clearTimeout(ct);
		}catch(e){}
	};
	this.formToStr = function(f)
	{
		var queryString = "";
		var and = "";
		for(i = 0, n = f.length; i < n ;i ++)
		{
			var e = f[i];
			var elementValue
			if ("" != e.name)
			{
				var type = e.getAttribute("type");
				if ("select" == type)
				{
					elementValue = e.options[e.selectedIndex].value;
				}
				else if ("checkbox" == e.type || "radio" == type)
				{
					if (e.checked)
					{
						elementValue = e.value;
					}
					else
					{
						continue;
					}
				}
				else
				{
					elementValue = e.value;
				}
				elementValue = encodeURIComponent(elementValue);
				queryString += and + e.name + "=" + elementValue;
				and = "&";
			}
		}
		return queryString;
	};
	
	this.send = function(purl, pc, pcb, pm, ps, pttl, pa)
	{
		try
		{
			xmlObj = new XMLHttpRequest();
		}
		catch(e)
		{
			try
			{
				xmlObj = new ActiveXObject("MSXML2.XMLHTTP");
			}
			catch(e2)
			{
				try
				{
					xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch(e3)
				{
					rrorBakc("ajax object init error");
					return false;
				}
			}
		}
		if (-1 != purl.indexOf("?"))
		{
			purl += "&ajax=1&rtype=" + ps.toLowerCase();
		}
		else
		{
			purl += "?ajax=1&rtype=" + ps.toLowerCase();
		}
		if (true == this.noCache)
		{
			purl += "&t=" + Math.random();
		}
		tCallback = pcb;
		xmlObj.onreadystatechange = function()
		{
			if(4 == xmlObj.readyState)
			{
				try
				{
					clearTimeout(ct);
				}catch(e){}
				try{
					try{
						kuhaDlg.loading1.style.display = "none";
					}
					catch(e){}
					if(200 == xmlObj.status || 204 == xmlObj.status || 304 == xmlObj.status)
					{
						try{
							workingBtm.disabled = false;
						}catch(e){}

						var temp = xmlObj.responseText.parseJSON();
						
						if (temp)
						{
							if (temp.jump)
							{
								location = temp.jump;
								return;
							}
							if (temp.showmsg)
							{
								messageBox("", temp.message, temp.icon, temp.referer, 1);
								return;
							}
						}
						if ("JSON" == ps)
						{
							tCallback(0, xmlObj.responseText.parseJSON());
						}
						else if("XML" == ps)
						{
							tCallback(0, xmlObj.responseXml);
						}
						else
						{
							tCallback(0, xmlObj.responseText);
						}
					}
					if (xmlObj.status > 399 && xmlObj.status < 500)
					{
						errorBack("clinent request error");
					}
					if (xmlObj.status > 499)
					{
						errorBack("server error");
					}
					xmlObj.abort()
					return 
				}
				catch(e){errorBack(e)}
			}
		};
		pm = pm.toUpperCase();
		ps = ps.toUpperCase();
		this.callBack = this.pcb;
		this.backFormat = ps;
		pttl = parseInt(pttl);
		xmlObj.open(pm, purl, pa);
		var ct = setTimeout(function(){
			xmlObj.abort();
			errorBack("time out");
		}, pttl);
		if("POST" == pm)
		{
			xmlObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			xmlObj.send(pc);
		}
		else
		{
			xmlObj.send(null);
		}
		if (!pa)
		{
			try
			{
				clearTimeout(ct);
			}catch(e){}
			if ("JSON" == ps)
			{
				tCallback(0, xmlObj.responseText.parseJSON());
			}
			else if("XML" == ps)
			{
				tCallback(0, xmlObj.responseXml);
			}
			else
			{
				tCallback(0, xmlObj.responseText);
			}
			xmlObj.abort();
		}
		return true;
	};
	
	this.get = function()
	{
		var purl = (arguments[0]) ? arguments[0] : this.url;
		var pcb = (arguments[1]) ? arguments[1] : this.callBack;
		var ps = (arguments[2]) ? arguments[2] : this.backFormat;
		var pttl = (arguments[3]) ? arguments[3] : this.ttl;
		var pa = (arguments[4]) ? arguments[4] : this.async
		if(!purl)
		{
			return false;
		}
		try{
			kuhaDlg.loading1.style.display = "block";
		}
		catch(e){}

		return this.send(purl, "", pcb, "get", ps, pttl, pa);
	};
	this.get1 = function()
	{
		var purl = (arguments[0]) ? arguments[0] : this.url;
		var pcb = (arguments[1]) ? arguments[1] : this.callBack;
		var ps = (arguments[2]) ? arguments[2] : this.backFormat;
		var pttl = (arguments[3]) ? arguments[3] : this.ttl;
		var pa = (arguments[4]) ? arguments[4] : this.async
		if(!purl)
		{
			return false;
		}
		return this.send(purl, "", pcb, "get", ps, pttl, pa);
	};
	
	this.post = function()
	{
		var purl = (arguments[0]) ? arguments[0] : this.url;
		var parant = (arguments[1]) ? arguments[1] : "";
		var pcb = (arguments[2]) ? arguments[2] : this.callBack;
		var ps = (arguments[3]) ? arguments[3] : this.backFormat;
		var pttl = (arguments[4]) ? arguments[4] : this.ttl;
		var pa = (arguments[5]) ? arguments[5] : this.async
		if(!purl)
		{
			return false;
		}		
		if (parant)
		{
			var pc = "";
			for (key in parant)
			{
				pc += "&" + encodeURIComponent(key) + "=" + encodeURIComponent(parant[key]);
			}
			pc = pc.substr(1);
		}
				try{
					kuhaDlg.loading1.style.display = "block";
				}
				catch(e){}

		return this.send(purl, pc, pcb, "POST", ps, pttl, pa);
	},
	
	this.sendForm = function()
	{
		var pf = (arguments[0]) ? arguments[0] : null;
		var pcb = (arguments[1]) ? arguments[1] : this.callBack;
		var ps = (arguments[2]) ? arguments[2] : this.backFormat;
		var pttl = (arguments[3]) ? arguments[3] : this.ttl;
		var pa = (arguments[4]) ? arguments[4] : this.async
		purl = pf.getAttribute("action") || this.url;
		pm = pf.getAttribute("method") || "post";
		pc = this.formToStr(pf);

		var btm = pf.getElementsByTagName("input");
		for(i = 0; i < btm.length; i++)
		{
			if ("submit" == btm[i].getAttribute("type"))
			{
				btm[i].disabled = true;
				workingBtm = btm[i];
				break;
			}
		}
		return this.send(purl, pc, pcb, pm, ps, pttl, pa);
	};
};

TEST = {
"email" : function(v)
{
	return (v.length < 41 && (/^[a-z0-9\-_\.]+@[a-z0-9\-_\.]+\.(com|cn|net|cc|org)$/i.test(v))) ? true : false;
},
"limit" : function(str, a, b )
{
	var len = str.width();
	if (len > b || len < a)
	{
		return false;
	}
	return true;
}
};

function reLoadCode(o)
{
	$(o).setAttribute("src", "/interface/vcode.php?t=" + Math.random());
}



Dialog = function(layer)
{
	this.layer = (layer) ? layer : 1;
	this.isShow = false;
	this.saticDlg = null;
	this.box = document.createElement("div");
	this.box.className = "dlg_window";

	document.body.appendChild(this.box);

	this.back = document.createElement("div");
	this.back.className = "dlg_back";
	document.body.appendChild(this.back);

	this.loading = document.createElement("div");
	this.loading.className = "frame dlg_loading_1";
	this.loading.innerHTML = '<div class="mu_close"><span><a href="javascript:;" onclick="return kuhaDlg.cancel()" title="取消"></a></span></div><div class="clear_f" align="center"><img src="/ui/images/dlg_loading_1.gif" align="absmiddle"/>&nbsp;&nbsp;数据加载中，请稍候&nbsp;&nbsp;&nbsp;&nbsp;</div></div>';
	document.body.appendChild(this.loading);
	
	this.loading1 = document.createElement("div");
	this.loading1.className = "t_msg loading_2";
	this.loading1.style.width = "94px"
	this.loading1.innerHTML = '<div style="float:left"><p><img src="/ui/images/dlg_loading_1.gif" align="absmiddle" />&nbsp;&nbsp;请稍候...</p></div>';
	document.body.appendChild(this.loading1);

	this.back1 = document.createElement("div");
	this.back1.className = "dlg_back_1";
	document.body.appendChild(this.back1);

	this.msg = document.createElement("div");
	this.msg.className = "dlg_window";
	this.msg.style.width = "350px";
	this.msg.style.zIndex = "10000";
	document.body.appendChild(this.msg);
	var msg = this.msg;
	if (!isIE || version > 6)
	{
		function moveDlg()
		{
			msg.style.left = Math.round((getBodyWidth() - 350) / 2) + "px";
			msg.style.top = Math.round((getBodyHeight() - 150) * 0.382) + "px";
		};
		moveDlg();
		addEvent(window, "resize", moveDlg);
	}	
	
	this.msg2 = document.createElement("div");
	this.msg2.className = "dlg_tips";
	document.body.appendChild(this.msg2);
	this.ajax = null;
	this.close = function()
	{
		this.isShow = false;
		try{
			if (!onDlgClose())
			{
				return;
			}
		}
		catch(e)
		{
		}
		if (this.saticDlg)
		{
			this.saticDlg.style.display = "none";
		}
		this.loading.style.display = "none";
		this.box.style.display = "none";
		this.back.style.display = "none";
		if (!isIE || version > 6)
		{
			removeEvent(window, "resize", moveDlg);
		}
		return false;
	}
	this.cancel = function()
	{
		this.ajax.cancel();
		this.loading.style.display = "none";
		this.box.style.display = "none";
		this.back.style.display = "none";		
		return false;
	};
	this.showStatic = function(dlgDiv, w, h, style)
	{
		
		this.style = (style) ? style : 1;
		this.saticDlg = dlgDiv;
		this.back.style.display = "block";
		dlgDiv.style.width = w + "px";
		dlgDiv.style.Height = h + "px";
		if (!isIE || version > 6)
		{
			function moveDlg()
			{
				dlgDiv.style.left = Math.round((getBodyWidth() - w) / 2) + "px";
				dlgDiv.style.top = Math.round((getBodyHeight() - h) * 0.382) + "px";
			};
			moveDlg();
			addEvent(window, "resize", moveDlg);
		}
		
		dlgDiv.style.display = "block";
		kuhaDlg.isShow = true;
		
		if(isIE && version == 6)
		{
			for(var i=0;i<dlgDiv.all.length;++i)
			{
				if('frame' == dlgDiv.all[i].getAttribute('className'))
				{
					var frame = dlgDiv.all[i];
				}
				else if('frame_bg' == dlgDiv.all[i].getAttribute('className'))
				{
					var frame_bg = dlgDiv.all[i];
				}
				
				if(frame && frame_bg)
				{
					break;
				}
			}
		
			frame_bg.style.height = getSize(frame).h + 'px';
		}
		
		return false;
		
	};
	this.showStaticMove = function(dlgDiv, dlgTitle, w, h, l, t)
	{
		function initDlgDray()
		{
			var xNow;
			var yNow;
			var left;
			var top;
			var isDrag = false;
			dlgTitle.onmousedown = function(e)
			{
				e = e || event;
				xNow = getMouseX(e);
				yNow = getMouseY(e);
				isDrag = true;
				left = parseInt(dlgDiv.style.left);
				top = parseInt(dlgDiv.style.top);
				return false;
			};
			addEvent(document, "mousemove", function(e)
			{
				if (!isDrag)
				{
					return false;
				}
				e = e || event;
				var x = getMouseX(e);
				var y = getMouseY(e);
				dlgDiv.style.left = (left + x - xNow) + "px";
				dlgDiv.style.top = (top + y - yNow) + "px";
				window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty(); 
				return false;
			});
			addEvent(document, "mouseup", function(e)
			{
				isDrag = false;
			});
		}
		dlgDiv.style.width = w + "px";
		dlgDiv.style.Height = h + "px";
		dlgDiv.style.left = l ? l : Math.round((getBodyWidth() - w) / 2) + "px";
		dlgDiv.style.top = t ? t : Math.round((getBodyHeight() - h) * 0.382) + "px";
		dlgDiv.style.display = "block";
		initDlgDray();
		
		if(isIE && version == 6)
		{
			for(var i=0;i<dlgDiv.all.length;++i)
			{
				if('frame' == dlgDiv.all[i].getAttribute('className'))
				{
					var frame = dlgDiv.all[i];
				}
				else if('frame_bg' == dlgDiv.all[i].getAttribute('className'))
				{
					var frame_bg = dlgDiv.all[i];
				}
				
				if(frame && frame_bg)
				{
					break;
				}
			}
		
			frame_bg.style.height = getSize(frame).h + 'px';
		}
		return false;
		
	};

	this.show = function(url, refere, w, h, style)
	{
		this.isShow = false;
		this.style = (style) ? style : 1;
		this.back.style.display = "block";
		if (!isIE || version > 6)
		{
			this.loading.style.left = Math.round((getBodyWidth() - 352) / 2) + "px";
			this.loading.style.top = Math.round((getBodyHeight() - 64) * 0.382) + "px";
		}
		this.loading.style.display = "block";
		var dlgDiv = this.box;
		var backDiv = this.back;
		var loading = this.loading;
		this.ajax = new Ajax();
		this.ajax.get(url, function(state, text){
			if (1 == state)
			{
				alert("error:\n" + text);
				backDiv.style.display = "none";
				return false;
			}
			dlgDiv.style.width = w + "px";
			dlgDiv.style.Height = h + "px";
			dlgDiv.innerHTML = '<div class="frame_bg" style="height:' + h + 'px"></div>' + text;
			if (!isIE || version > 6)
			{
				function moveDlg()
				{
					dlgDiv.style.left = Math.round((getBodyWidth() - w) / 2) + "px";
					dlgDiv.style.top = Math.round((getBodyHeight() - h) * 0.382) + "px";
				};
				moveDlg();
				addEvent(window, "resize", moveDlg);
			}
			loading.style.display = "none";
			dlgDiv.style.display = "block";
			kuhaDlg.isShow = true;
			
//			var evalStr = /^.*$/mg.exec(text);
			setTimeout("initElement(this.box)", 300);
		}, "TEXT");
		this.loading1.style.display = "none";
	};
};
function messageBoxOk(referer, sys)
{
	if (sys)
	{		
		kuhaDlg.loading.style.display = "none";
		kuhaDlg.box.style.display = "none";
	}
	kuhaDlg.back1.style.display = "none";
	if (false == kuhaDlg.isShow)
	{
		kuhaDlg.back.style.display = "none";
	}
	kuhaDlg.msg.style.display = "none";
	if (1 == referer)
		location.reload();
	else if(referer)
		location.href = referer;
	return false;
}
function messageBox(title, message, icon, referer, sys)
{
	title = (title) ? title : "提示信息";
	icon = (icon) ? icon : 'msg';
	referer = (referer) ? referer : '';
	sys = (sys) ? ", 1" : "";
	kuhaDlg.msg.innerHTML = '<div class="frame_bg"></div><div class="frame"><div class="title_bg"><p><img src="/ui/images/msg_icon_' + icon + '.png"  align="absmiddle"/>' + title + '</p><span><a href="javascript:;" onclick="return messageBoxOk(\'' + referer + '\'' + sys + ')" title="关闭"></a></span></div><div class="ema_ilc"><p class="font_gray def_padb">' + message + '</p><p align="center" class="mar_t10"><input type="button" class="bnt2" id="messagebox_ok" value="确定" onmouseover="this.className=\'bnt2_on\'" onmouseout="this.className=\'bnt2\'" onclick="messageBoxOk(\'' + referer + '\'' + sys + ')" /></p></div></div>';
	kuhaDlg.msg.style.width = "350px";

	if (!isIE || version > 6)
	{
		kuhaDlg.msg.style.left = Math.round((getBodyWidth() - 350) / 2) + "px";
		kuhaDlg.msg.style.top = Math.round((getBodyHeight() - 150) * 0.382) + "px";
	}
	kuhaDlg.back.style.display = "block";
	kuhaDlg.back1.style.display = "block";
	kuhaDlg.msg.style.display = "block";
	if(isIE && version == 6)
	{
		for(var i=0;i<kuhaDlg.msg.all.length;++i)
		{
			if('frame' == kuhaDlg.msg.all[i].getAttribute('className'))
			{
				var frame = kuhaDlg.msg.all[i];
			}
			else if('frame_bg' == kuhaDlg.msg.all[i].getAttribute('className'))
			{
				var frame_bg = kuhaDlg.msg.all[i];
			}
			
			if(frame && frame_bg)
			{
				break;
			}
		}
	
		frame_bg.style.height = getSize(frame).h + 'px';
	}
	$("messagebox_ok").focus();
}

function messageBox2(msg, icon, time)
{
	
	time = time ? time : 2000;
	var tt = time / 1000;
	//alert(kuhaDlg);
	if(isIE && version ==6)
	{
		kuhaDlg.msg2.innerHTML = '<iframe scrolling="no" frameborder="0" style="position:relative; width: 328px; height:0; *height:1px; top:4px; left: 3px; z-index: -100; background-color:#DDD;" src=""></iframe><div class="uframe"><div><span class="fl"><img src="/ui/images/msg_icon_' + icon + '.png" align="absmiddle" />&nbsp;' + msg + '</span><span class="tclose"><a href="javascript:;" onClick="kuhaDlg.msg2.style.display=\'none\';return false" title="关闭"></a></span></div><p align="right" class="clear_f">本提示 ' + tt + ' 秒后自动关闭</p></div>';
	}else{
		kuhaDlg.msg2.innerHTML = '<div class="uframe"><div><span class="fl"><img src="/ui/images/msg_icon_' + icon + '.png" align="absmiddle" />&nbsp;' + msg + '</span><span class="tclose"><a href="javascript:;" onClick="kuhaDlg.msg2.style.display=\'none\';return false" title="关闭"></a></span></div><p align="right" class="clear_f">本提示 ' + tt + ' 秒后自动关闭</p></div>';
	}
	
	if (!isIE || version > 6)
	{
		kuhaDlg.msg2.style.left = Math.round((getBodyWidth() - 330) / 2) + "px";
		kuhaDlg.msg2.style.top = Math.round((getBodyHeight() - 66) * 0.382) + "px";
	}
	if (isIE)
	{
		kuhaDlg.msg2.style.filter = "Alpha(Opacity=100)";
	}
	else
	{
		kuhaDlg.msg2.style.opacity = 1;
	}
	kuhaDlg.msg2.style.display = "block";
	var n = 0;
	function hide()
	{
		n += 100;
		if (n > time)
		{
			var q = 100 - (n - time) / 10;
			if (q <= 0)
			{
				
				kuhaDlg.msg2.style.display = "none";
				return;
			}
			if (isIE)
			{
				kuhaDlg.msg2.style.filter = "Alpha(Opacity=" + q + ")";
			}
			else
			{
				q = q / 100;
				kuhaDlg.msg2.style.opacity = q;
			}
		}
		setTimeout(hide, 50);
	};
	hide();
}
function initSelect(div,input){div=$(div);var on=false;var t;var ul=div.getElementsByTagName("ul")[0];var text=div.getElementsByTagName("span")[0];div.onclick=function(){clearTimeout(t);on=(on)?false:true;ul.style.display=(on)?"none":"block"};div.onmouseover=function(){clearTimeout(t);on=true};div.onmouseout=function(){on=false;t=setTimeout(function(){ul.style.display="none"},1000)};var a=ul.getElementsByTagName("a");for(i=0;i<a.length;i++){a[i].onclick=function(){on=false;ul.style.display="none";$(input).value=this.name;text.innerHTML=this.innerHTML;return false}}};

var passport = {
	"referer" : "",
	"callBack" : function (){},
	"ajaxLogin" : function(referer, callBack)
	{
		if (callBack)
		{
			passport.callBack = callBack;
		}
		passport.referer = (referer) ? referer : "";			
		kuhaDlg.show("/login/", referer, 340, 200);
		return false;
	},
	"login" : function(form, referer)
	{
		passport.referer = (referer) ? referer : "";	
		if (!TEST.email(form.email.value))
		{
			alert("您输入的账号错误，账号可以是：注册时的邮箱地址、会员ID、个性化主页地址");;
			form.email.focus();
			return false;
		}
		if (!TEST.limit(form.password.value, 6, 16))
		{
			alert("请输入 6至16位 密码。");
			form.password.focus();
			return false;
		}
		var aj = new Ajax();
		aj.sendForm(form, function (s, r)
		{
			if (1 == s)
			{
				alert('error');
				return false;
			}
			if ('error' == r.state)
			{
				alert(r.message);
				form.email.focus();		
				return;
			}
			if ('ok' == r.state)
			{
				userIsLogin = 1;
				userId = r.uid;
				if ("refesh" == passport.referer)
				{
					location.reload();
				}
				else
				{
					location.href = passport.referer;
				}
			}
		});
		return false;
	},
	"ajaxDoLogin" : function(form, referer)
	{
		if (!TEST.email(form.email.value))
		{
			$("login_message").innerHTML = '您输入的账号错误，账号可以是：注册时的邮箱地址、会员ID、个性化主页地址 <br /><a href="http://www.kuha.com/help/account/17/" title="查看更多关于账号方面的帮助信息">查看更多关于账号方面的帮助信息</a>';
			$("login_message").style.display = "block";
			form.email.focus();
			return false;
		}
		if (!TEST.limit(form.password.value, 6, 16))
		{
			$("login_message").innerHTML = "请输入 6至16位 密码。";
			$("login_message").style.display = "block";
			form.password.focus();
			return false;
		}
		var aj = new Ajax();
		aj.sendForm(form, function (s, r)
		{
			if (1 == s)
			{
				alert('error');
				return false;
			}
			if ('error' == r.state)
			{
				$("login_message").innerHTML = r.message;
				$("login_message").style.display = "block";
				form.email.focus();		
				return false;
			}
			if ('ok' == r.state)
			{
				passport.callBack();
				userIsLogin = 1;
				userId = r.uid;
				if (-1 == passport.referer)
				{
					kuhaDlg.close();
					return;
				}
				else if(passport.referer)
				{
					location.href = passport.referer;
					return;
				}
				location.reload();
			}
		});
		return false;
	},
	"loginout" : function(referer)
	{
		ajax = new Ajax();
		ajax.get("/loginout/", function()
		{
			if (referer)
			{
				location.href = referer;
			}
			else
			{
				loction.reload();
			}
		});
		return false;
	}
};
function initElement(object)
{
	UI.initInput(object);
	initMyTitle(object);
}
var kuhaDlg;
var workingBtm;
function kuhaInit()
{
	if(userIsLogin){
		setInterval(getUserPms,30000);
	}
	kuhaDlg = new Dialog(1);
	addEvent(document, "mousemove", function(e)
	{
		try{
			e = e || event;
			var o=e.target || e.srcElement;
			var x = 12;
			var y = 21;
			if ("text" == o.getAttribute("type") || "password" == o.getAttribute("type"))
			{
				x -= 4;
				y -= 13;
			}
			kuhaDlg.loading1.style.left = getMouseX(e) + x + "px";
			kuhaDlg.loading1.style.top = getMouseY(e) + y  + "px";
		}
		catch(e){}
	});
};
function initMenu()
{
	try{
		if(COOKIE.get('menustat') == 'off'){
			document.getElementById('quick_key').style.display = 'none';
			document.getElementById('menustat').innerHTML = '打开快捷面板';
			document.getElementById('bottom_topm').style.display = 'none';
		}else{
			document.getElementById('quick_key').style.display = 'block';
			document.getElementById('menustat').innerHTML = '关闭快捷面板';	
			document.getElementById('bottom_topm').style.display = 'block';
		}
	}catch(e){
		document.getElementById('quick_key').style.display = 'none';
	}	
	if(document.body.scrollWidth - 991 > 0)
	{
		document.getElementById('quick_key').style.left = parseInt((document.body.scrollWidth - 991)/2) + 'px';
	}else{
		document.getElementById('quick_key').style.left = '0px';	
	}
}
function showTips(obj)
{
	var tipsobj = obj.getElementsByTagName('div');
	tipsobj[0].style.display = 'block';
}
function hiddenTips(obj)
{
	var tipsobj = obj.getElementsByTagName('div');
	tipsobj[0].style.display = 'none';
}

function ControlMenu()
{
	if(COOKIE.get('menustat') == 'off'){
		COOKIE.set("menustat", 'on', 30 * 3600000, "/");
		document.getElementById('quick_key').style.display = 'block';
		//document.getElementById('bottom_topm').style.display = 'block';
	}else{
		COOKIE.set("menustat", 'off', 30 * 3600000, "/");
		document.getElementById('quick_key').style.display = 'none';
		//document.getElementById('bottom_topm').style.display = 'off';
	}
	initMenu();
}


function getUserPms()
{
	var get = new Ajax();
	get.get1("/passport/?action=getpms&id="+Math.random(),
			function(s, r)
			{
				if(r > 0)
				{
					try{
						$('pms_tips_icon').className = 'b_ic2_on';
						$('pms_tips').innerHTML = '新消息('+ r + ')';
					}catch(e){}
				}else{
					try{
						$('pms_tips_icon').className = 'b_ic2';
						$('pms_tips').innerHTML = '短消息';
					}catch(e){}
				}
			}, 
			"TEXT");
}
function getDays(year , month)
{
	var dayarr = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

	if(month == 2)
	{
		if((year%4 == 0 && year%100 != 0) || year%400 == 0 || year < 1900)
			return 29;
		else
			return dayarr[month-1];
	}
	else
	{
		return dayarr[month-1];
	}
}
function getSwfVer(){
       // NS/Opera version >= 3 check for Flash plugin in plugin array
       var flashVer = -1;
       
       if (navigator.plugins != null && navigator.plugins.length > 0) {
              if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
                     var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
                     var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
                     var descArray = flashDescription.split(" ");
                     var tempArrayMajor = descArray[2].split(".");                     
                     var versionMajor = tempArrayMajor[0];
                     var versionMinor = tempArrayMajor[1];
                     var versionRevision = descArray[3];
                     if (versionRevision == "") {
                            versionRevision = descArray[4];
                     }
                     if (versionRevision[0] == "d") {
                            versionRevision = versionRevision.substring(1);
                     } else if (versionRevision[0] == "r") {
                            versionRevision = versionRevision.substring(1);
                            if (versionRevision.indexOf("d") > 0) {
                                   versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
                            }
                     }
                     var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
                     //alert("flashVer="+flashVer);
              }
       }
       // MSN/WebTV 2.6 supports Flash 4
       else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
       // WebTV 2.5 supports Flash 3
       else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
       // older WebTV supports Flash 2
       else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
       else if ( isIE && isWin && !isOpera ) {
              flashVer = ControlVersion();
       }       
       return flashVer;
}
function hiddenSelect()
{
	if(isIE && version == 6)
	{
		var o = document.getElementsByTagName('select');
		var n = o.length;
		for(var i = 0; i < n; i++)
		{
			o[i].style.visibility = 'hidden';
		}
	}
	return true;
	
}
function showSelect()
{
	if(isIE && version == 6)
	{
		var o = document.getElementsByTagName('select');
		var n = o.length;
		for(var i = 0; i < n; i++)
		{
			o[i].style.visibility = 'visible';
		}
	}
	return true;
}