// Rebuild
// // 0.0063 secs costed

///document.domain = "space.sina.com.cn";
//$import("Sina/regist.js");


// 引入这个则提供了winDialog这个方法
(function () {

	if(window.regist != null)return;
	var funList = {};
	function registerNamespace (sNameSpace, oFunc, oOption){
		var currentPart;
		var rootObject = window;
		var namespaceParts = sNameSpace.split('.');
		for (var i = 0; i < namespaceParts.length; i++) {
			currentPart = namespaceParts[i];
			if (!rootObject[currentPart]) {
				rootObject[currentPart] = {};
			}
			rootObject = rootObject[currentPart];
		}
	}
	function registerFuncLink (sShortName, sNameSpace, oFunc, oOption) {
		var currentPart;
		var rootObject = window;


		funList[sNameSpace] = {
			name: sShortName,
			space: sNameSpace,
			func: oFunc,
			option: oOption
		};

		var namespaceParts = sNameSpace.split('.');
		for (var i = 0; i < namespaceParts.length; i++) {
			currentPart = namespaceParts[i];
			if(i == namespaceParts.length - 1) {
				rootObject[currentPart] = oFunc;
				return;
			}
			rootObject = rootObject[currentPart];
		}
	}
	
	//regist("$E", "Sina.base.get", get, "FlashSoft", "获取指定名字的对象");
	function regist (sShortName, sNameSpace, oFunc, oOption) {
		if(sShortName == null) {
			alert("regist[函数的短名尚未传入]\n\n例如\n'$getStyle'");
			return;
		}
		if(sNameSpace == null) {
			alert("regist[函数的命名空间尚未传入]\n\n例如\n'Sina.dom.getStyle'");
			return;
		}
		if(oFunc == null) {
			alert("regist[具体函数尚未实现]\n\n例如\nfunction (el) {return el.className;}");
			return;
		}
		// 创建命名空间
		registerNamespace(sNameSpace);
		// 把函数绑定到相应的命名空间以及内部的存储堆栈
		registerFuncLink(sShortName, sNameSpace, oFunc, oOption);

	}
	regist.bindTo = function () {
		var a = [];
		var o = funList;
		var n, i;
		for (i in o) {
			n = o[i];
			a[a.length] = "var " + o[i].name + "=" + o[i].space + ";";
		}
		return a.join("");
	};
	regist.getFuncList = function () {

	};
	window.regist = regist;
})();

(function () {
	var include;

	var inc_css = function (sURL, sCharset) {
		document.write('<link rel="stylesheet" type="text/css" charset="' + sCharset + '" href="' + sURL + '" \/>');
	};

	var inc_js = function (sURL, sCharset) {
		document.write('<script charset="' + sCharset + '" src="' + sURL + '"><\/script>');
	};

	include = function(sURL, sType, sCharset) {
		if(sURL == null) {
			alert("include[缺少URL参数]\n\n例如\n'./dialog.js'");
			return;
		}
		if(sType == null) {
			alert("include[缺少类型参数]\n\n例如\n'css'");
			return;
		}
		sCharset = sCharset == null? "utf-8": sCharset;

		sType = sType.toLowerCase();
		if(sType == "js") {
			inc_js(sURL, sCharset);
		}
		else if(sType == "css") {
			inc_css(sURL, sCharset);
		}
	};
	regist("$include", "Sina.io.include", include, "FlashSoft", "动态往页面中写入一个css或者js");
})();


/**
 * @author {FlashSoft}
 * @update {xs} 2008-8-11
 */

(function () {
	var _ua = navigator.userAgent.toLowerCase();
	/** 是否为IE浏览器 */
	var ie = /msie/.test(_ua);

	/** 是否为IE6浏览器 */
	var ie6 = /msie 6/.test(_ua);

	/** 是否为IE7浏览器 */
	var ie7 = /msie 7/.test(_ua);

	/** 是否为FireFox浏览器 */
	var ff = /gecko/.test(_ua);

	/** 是否为FireFox 3浏览器 */
	var ff3 = /firefox\/3/.test(_ua);

	/** 是否为Safari浏览器 */
	var safari = /safari/.test(_ua);

	/** 是否为Opera浏览器 */
	var opera = /opera/.test(_ua);

	regist("$ie", "Sina.base.ie", ie, "FlashSoft", "判断浏览器是否是IE");
	regist("$ie6", "Sina.base.ie6", ie6, "FlashSoft", "判断浏览器是否是IE6");
	regist("$ie7", "Sina.base.ie7", ie7, "FlashSoft", "判断浏览器是否是IE7");
	regist("$ff", "Sina.base.ff", ff, "FlashSoft", "判断浏览器是否是FireFox");
	regist("$ff3", "Sina.base.ff3", ff, "xs", "判断浏览器是否是FireFox3.0");
	regist("$safari", "Sina.base.safari", safari, "FlashSoft", "判断浏览器是否是Safari");
	regist("$opera", "Sina.base.opera", opera, "FlashSoft", "判断浏览器是否是Opera");
})();
/**
 * 返回指定名称对象
 * @param {String} oID 对象的名字
 * @return {Element} 对象的DOM节点
 * @author FlashSoft | fangchao@staff.sina.com.cn
 * @example
 * 	Sina.base.get(document.body);
 * 	Sina.base.get("testInput");
 */

(function () {
	var get = function (oID) {
		return typeof oID == "string"? document.getElementById(oID): oID;
	};
	regist("$E", "Sina.base.get", get, "FlashSoft", "获取指定名字的对象");
})();



/**
 * 给指定对象增加HTML[不会破坏这个对象固有节点的事件]
 * @method Sina.dom.addHTML
 * @param {HTMLElement | Document} oParentNode 节点对象
 * @param {String} sHTML 代码字符串
 * @return {Void}
 * @author FlashSoft | fangchao@staff.sina.com.cn
 * @update 07.12.26
 * @example
 *	Sina.base.addHTML(document.body, "<input/>");
 */
(function () {

	var addHTML;

	if(Sina.base.ie) {
		addHTML = function (oParentNode, sHTML) {
			oParentNode = Sina.base.get(oParentNode);
			oParentNode.insertAdjacentHTML("BeforeEnd", sHTML);
		};
	}
	else {
		addHTML = function (oParentNode, sHTML) {
			oParentNode = Sina.base.get(oParentNode);
			var oRange, oFrag;
			try{
				oRange = oParentNode.ownerDocument.createRange();
				oRange.setStartBefore(oParentNode);
				oFrag = oRange.createContextualFragment(sHTML);
				oParentNode.appendChild(oFrag);
			}
			finally{
				oRange = oFrag = null;
			}
		};
	}

	regist("$addHTML", "Sina.dom.addHTML", addHTML, "FlashSoft", "给指定对象增加HTML[不会破坏这个对象固有节点的事件]");
})();



/**
* 获取指定节点的样式
* @method Sina.dom.getStyle
* @param {HTMLElement | Document} oElement 节点对象
* @param {String} sProperty 样式名
* @return {String} 指定样式的值
* @author FlashSoft | fangchao@staff.sina.com.cn
* @update 08.07.29
* @example
* 	Sina.dom.getStyle(document.body, "left");
*/
(function () {
	var getStyle;
	if (Sina.base.ie) {
		getStyle = function(oElement, sProperty){
			var val;
			try{
				switch (sProperty) {
					// 透明度
					case "opacity":
						val = 100;
						try {
							val = oElement.filters['DXImageTransform.Microsoft.Alpha'].opacity;
						}
						catch (e) {
							try {
								val = oElement.filters('alpha').opacity;
							}
							catch (e) {
							}
						}
						return parseFloat(val / 100);
					// 浮动
					case "float":
						sProperty = "styleFloat";
					default:
						val = oElement.currentStyle ? oElement.currentStyle[sProperty] : null;
						return (oElement.style[sProperty] || val);
				}
			}
			finally {
				val = null;
			}
		};
	}
	else {
		getStyle = function (oElement, sProperty) {
			var computed;
			try {
				// 浮动
				if(sProperty == "float") {
					sProperty = "cssFloat";
				}
				// 获取集合
				computed = document.defaultView.getComputedStyle(oElement, "");
				return oElement.style[sProperty] || computed? computed[sProperty]: null;
			}
			finally {
				computed = null;
			}
		};
	}
	regist("$getStyle", "Sina.dom.getStyle", getStyle, "FlashSoft", "获取指定节点的样式");
})();



/**
* 设定指定节点的样式
* @method Sina.dom.setStyle
* @param {HTMLElement | Document} el 节点对象
* @param {String} property 样式名
* @param {String} val 样式值
* @author FlashSoft | fangchao@staff.sina.com.cn
* @update 08.02.23
* @example
* 	Sina.dom.setStyle(document.body, "backgroundColor", "red");
*/
(function () {
	var setStyle;
	if (Sina.base.ie) {
		setStyle = function (el, property, val) {
			switch (property) {
				case "opacity":
					el.style.filter = "alpha(opacity=" + (val * 100) + ")";
					if (!el.currentStyle || !el.currentStyle.hasLayout) {
						el.style.zoom = 1;
					}
					break;
				case "float":
					property = "styleFloat";
				default:
					el.style[property] = val;
			}
		};
	}
	else {
		setStyle = function(el, property, val) {
			if (property == "float") {
				property = "cssFloat";
			}
			el.style[property] = val;
		};
	}
	regist("$setStyle", "Sina.dom.setStyle", setStyle, "FlashSoft", "设定指定节点的样式");
})();




/**
 * 取得页面的滚动条位置
 * @method Sina.dom.getScrollPos
 * @return {Array} 滚动条居顶 居左值
 * @author fangchao@staff.sina.com.cn
 * @update 08.02.13
 */
(function () {
	var getScrollPos = function(oDocument) {
		oDocument = oDocument || document;
		return [
			Math.max(oDocument.documentElement.scrollTop, oDocument.body.scrollTop),
			Math.max(oDocument.documentElement.scrollLeft, oDocument.body.scrollLeft)
		];
	};
	regist("$getScrollPos", "Sina.dom.getScrollPos", getScrollPos, "FlashSoft", "取得页面的滚动条位置");
})();

/**
* 获取节点对象的距文档的XY值
* @method getXY
* @param {HTMLElement } el 节点对象
* @return {Array} x,y的数组对象
* @author FlashSoft | fangchao@staff.sina.com.cn
* @update 08.02.23
* @example
* 	Sina.dom.getXY(Sina.base.get("testDiv"));
*/
(function () {
	var getXY;
	if (Sina.base.ie) {
		getXY = function(el){
			var parentNode, pos, box, doc, scrollPos;
			try {
				if ((el.parentNode == null || el.offsetParent == null || Sina.dom.getStyle(el, "display") == "none") && el != document.body) {
					return false;
				}
				parentNode = null;
				pos = [];
				doc = el.ownerDocument;
				box = el.getBoundingClientRect();
				scrollPos = Sina.dom.getScrollPos(el.ownerDocument);
				return [box.left + scrollPos[1], box.top + scrollPos[0]];
			}
			finally {
				parentNode = pos = box = doc = scrollPos = null;
			}
		};
	}
	else {
		getXY = function (el) {
			var parentNode, pos, box, doc, scrollPos;
			try {
				if ((el.parentNode == null || el.offsetParent == null || Sina.dom.getStyle(el, "display") == "none") && el != document.body) {
					return false;
				}
				parentNode = null;
				pos = [];
				doc = el.ownerDocument;
				pos = [el.offsetLeft, el.offsetTop];
				parentNode = el.offsetParent;
				var hasAbs = Sina.dom.getStyle(el, "position") == "absolute";

				if (parentNode != el) {
					while (parentNode) {
							pos[0] += parentNode.offsetLeft;
							pos[1] += parentNode.offsetTop;
							if (Sina.base.safari && !hasAbs && Sina.dom.getStyle(parentNode,"position") == "absolute" ) {
									hasAbs = true;
							}
							parentNode = parentNode.offsetParent;
					}
				}

				if (Sina.base.safari && hasAbs) {
					pos[0] -= el.ownerDocument.body.offsetLeft;
					pos[1] -= el.ownerDocument.body.offsetTop;
				}
				parentNode = el.parentNode;
				while (parentNode.tagName && !/^body|html$/i.test(parentNode.tagName)) {
					if (Sina.dom.getStyle(parentNode, "display").search(/^inline|table-row.*$/i)) {
						pos[0] -= parentNode.scrollLeft;
						pos[1] -= parentNode.scrollTop;
					}
					parentNode = parentNode.parentNode;
				}
				return pos;
			}
			finally {
				parentNode = pos = box = doc = scrollPos = null;
			}
		};
	}
	regist("$getXY", "Sina.dom.getXY", getXY, "FlashSoft", "获取节点对象的距文档的XY值");
})();

/**
 * @author {FlashSoft}
 */
/**
 * 获取页面的带滚动条的高宽以及显示区域高宽
 * @private
 * @return {Array} 分别为窗口带滚动条宽高跟显示区域宽高
 * @author FlashSoft | fangchao@staff.sina.com.cn
 */

(function () {
	var getPageSize = function (){
		var xScroll, yScroll, arrayPageSize, windowWidth, windowHeight, pageHeight, pageWidth;
		if (window.innerHeight && window.scrollMaxY) {
			xScroll = window.innerWidth + window.scrollMaxX;
			yScroll = window.innerHeight + window.scrollMaxY;
		}
		else if (document.body.scrollHeight > document.body.offsetHeight) { // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		}
		else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}

		var windowWidth, windowHeight;
		if (self.innerHeight) { // all except Explorer
			windowWidth = self.innerWidth;
			windowHeight = self.innerHeight;
		}
		else
			if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
				windowWidth = document.documentElement.clientWidth;
				windowHeight = document.documentElement.clientHeight;
			}
			else
				if (document.body) { // other Explorers
					windowWidth = document.body.clientWidth;
					windowHeight = document.body.clientHeight;
				}

		// for small pages with total height less then height of the viewport
		if (yScroll < windowHeight) {
			pageHeight = windowHeight;
		}
		else {
			pageHeight = yScroll;
		}

		// for small pages with total width less then width of the viewport
		if (xScroll < windowWidth) {
			pageWidth = windowWidth;
		}
		else {
			pageWidth = xScroll;
		}
		arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight);
		return arrayPageSize;
	};
	regist("$getPageSize", "Sina.dom.getPageSize", getPageSize, "FlashSoft", "获取页面的带滚动条的高宽以及显示区域高宽");
})();



/**
 * 在指定节点上绑定相应的事件
 * @method Sina.events.addEvent
 * @param {String} oElement 需要绑定的节点ID
 * @param {String} sType 事件的类型如:click, mouseover
 * @param {Function} fHandler 事件发生时相应的函数
 * @update 08.07.29
 * @author Stan | chaoliang@staff.sina.com.cn
 *         FlashSoft | fangchao@staff.sina.com.cn
 * @example
 * 	//鼠标点击testEle则alert "clicked"
 * 	Sina.events.addEvent("testEle", "click", function () {
 * 		alert("clicked");
 * 	});
 */
(function () {
	var addEvent;
	if(Sina.base.ie) {
		addEvent = function (oElement, sType, fHandler) {
			oElement = Sina.base.get(oElement);
			oElement.attachEvent("on" + sType, fHandler);
		};
	}
	else {
		addEvent = function (oElement, sType, fHandler, bUseCapture) {
			oElement = Sina.base.get(oElement);
			if(bUseCapture == "undefined") {
				bUseCapture = false;
			}
			oElement.addEventListener(sType, fHandler, bUseCapture);
		};
	}
	regist("$addEvent", "Sina.events.addEvent", addEvent, "FlashSoft", "在指定节点上绑定相应的事件");
})();



/**
 * 在指定节点上绑定相应的事件
 * @method Sina.events.addEvent
 * @param {String} oElement 需要绑定的节点ID
 * @param {String} sType 事件的类型如:click, mouseover
 * @param {Function} fHandler 事件发生时相应的函数
 * @update 08.07.29
 * @author Stan | chaoliang@staff.sina.com.cn
 *         FlashSoft | fangchao@staff.sina.com.cn
 * @example
 * 	//鼠标点击testEle则alert "clicked"
 * 	Sina.events.addEvent("testEle", "click", function () {
 * 		alert("clicked");
 * 	});
 */
(function () {
	var removeEvent;
	if(Sina.base.ie) {
		removeEvent = function (oElement, sType, fHandler) {
			oElement = Sina.base.get(oElement);
			oElement.detachEvent("on" + sType, fHandler);
		};
	}
	else {
		removeEvent = function (oElement, sType, fHandler, bUseCapture) {
			oElement = Sina.base.get(oElement);
			oElement.removeEventListener(sType, fHandler, false);
		};
	}
	regist("$removeEvent", "Sina.events.removeEvent", removeEvent, "FlashSoft", "在指定节点上绑定相应的事件");
})();




/**
 * 获取Event对象
 * @method Sina.base.getEvent
 * @return {Event} Event对象
 * @author FlashSoft | fangchao@staff.sina.com.cn
 * @update 08.07.29
 * @example
 * 	Sina.events.getEvent();
 */
(function () {
	var getEvent;
	if(Sina.base.ie) {
		getEvent = function () {
			return window.event;
		};
	}
	else {
		getEvent = function () {
			var o, e, n;
			try {
				o = arguments.callee.caller;
				n = 0;
				while(o != null && n < 40){
					e = o.arguments[0];
					if (e && (e.constructor == Event || e.constructor == MouseEvent)) {
						return e;
					}
					n ++;
					o = o.caller;
				}
				return e;
			}
			finally {
				o = e = n = null;
			}
		};
	}
	regist("$getEvent", "Sina.events.getEvent", getEvent, "FlashSoft", "获取Event对象");
})();
/**
 * 禁止Event事件冒泡
 * @method Sina.base.stopEvent
 * @author FlashSoft | fangchao@staff.sina.com.cn
 * @update 08.07.29
 * @example
 * 	Sina.events.stopEvent();
 */
(function () {
	var stopEvent;
	if(Sina.base.ie) {
		stopEvent = function () {
			var ev;
			try {
				ev = Sina.events.getEvent();
				ev.cancelBubble = true;
				ev.returnValue = false;
			}
			finally {
				ev = null;
			}
		};
	}
	else {
		stopEvent = function () {
			var ev;
			try {
				ev = Sina.events.getEvent();
				ev.preventDefault();
				ev.stopPropagation();
			}
			finally {
				ev = null;
			}
		};
	}
	regist("$stopEvent", "Sina.dom.stopEvent", stopEvent, "FlashSoft", "禁止Event事件冒泡");
})();
/**
 * @fileoverview 对话框基础类,只提供最基础的对话框支持,具备了以下特性:<br/>
 * 1.设定是否显示标题<br/>
 * 2.设定是否显示广告位<br/>
 * 3.设置皮肤<br/>
 * 4.设置大小<br/>
 * 5.设置内容<br/>
 * 6.设置标题<br/>
 * 7.设置位置<br/>
 * 8.设置显示对话框<br/>
 * 9.设置隐藏对话框<br/>
 * 10.对话框在改变大小时回调onResize接口<br/>
 * 11.对话框在初始化HTML完成时回调onLoad接口<br/>
 * 12.对话框在关闭时回调onClose接口<br/>
 * 13.对话框在显示时回调onView接口<br/>
 * 14.对话框在拖动开始,拖动结束,拖动过程中分别回调onDragStart,onDragEnd,onDrag接口<br/>
 * 15.对话框初始化完成后,调用setContent方法的时候回调onContentUpdate接口<br/>
 * 16.对话框初始化完成后,调用setPosition方法的时候回调onPosUpdate接口<br/>
 *
 * @author FlashSoft | fangchao@staff.sina.com.cn
 * @version 0.4
 */
(function () {

	eval(regist.bindTo());
	// -------------------------------------------------------------------------------------------------------------

	var trace = function (s) {
		try{
		//	console.log(s);
		}
		catch(e){}
	};
	// -------------------------------------------------------------------------------------------------------------
	var dialog = function (oInitCFG, oInitFUNC) {
		/** 对话框类指针 */
		var _self = this;

		/** 随机ID */
		var _dialogRndID = window.parseInt(Math.random() * 10000);
		/**
		 * @param {Boolean} ad 是否显示广告
		 * @param {String} title 标题文字
		 * @param {Boolean} drag 是否能拖拽
		 * @param {Number} shadow 对话框阴影,0为无阴影,1为透明背景,2为50%透明背景
		 * @param {String} css 对话框皮肤使用的样式表
		 * @param {String} content 对话框默认内容
		 * @private
		 * @author FlashSoft
		 */
		var _dialogCFG = {
			ad: false,
			title: "未标题",
			drag: true,
			zindex: 1024,
			shadow: 1,
			css: "Dialog",
			content: "",
			middle: true,
			width: 300,
			height: 300,
			// 是否有关闭按钮
			close: true,
			// 是否允许关闭
			closed: true
		};
		/**
		 * @param {Object} onDragStart 拖动开始的时候触发
		 * @param {Object} onDrag 拖动过程中触发
		 * @param {Object} onDragEnd 拖动结束的时候触发
		 * @param {Object} onContentUpdate 内容改变时触发
		 * @param {Object} onPosUpdate 当对话框位置发生改变时触发
		 * @param {Object} onShow 对话框显示时触发
		 * @param {Object} onHidden 对话框隐藏时触发
		 */
		var _dialogFUNC = {
			onDragStart: function () {},
			onDrag: function () {},
			onDragEnd: function () {},
			onContentUpdate: function () {},
			onPosUpdate: function () {},
			onShow: function () {},
			onHidden: function () {},
			onBeforeHidden: function () {}
		};
		for (var key in _dialogCFG) {
			if (oInitCFG[key] != null) {
				_dialogCFG[key] = oInitCFG[key];
			}
		}
		for (key in _dialogFUNC) {
			if (oInitFUNC[key] != null) {
				_dialogFUNC[key] = oInitFUNC[key];
			}
		}
		var _dialogNodes = {
			parent: null,
			shadow: null,
			window: null,
			title: null,
			content: null,
			ad: null,
			move: null,
			drag: null,
			titleContent: null,
			leftContent: null,
			rightContent: null,
			statusContent: null
		};
		var _dialogInfo = {
			titleHeight: 0,
			statusbarHeight: 0,
			leftborderWidth: 0,
			rightborderWidth: 0
		};

		var shadowClass = "";
		var windowClass = "";

		// 修正阴影的定时器
		var fixShadowTimer;

		// 是否确定要使用定时器
		var fixShadowTimeBoolean = false;

		shadowClass += _dialogCFG.shadow == 1? "": (_dialogCFG.shadow == 0? " hidden": " disabled");
		windowClass += _dialogCFG.drag == true? " movable": " ";
		windowClass += _dialogCFG.ad == true? " statusbar": " ";
		//http://blog.sina.com.cn/lm/iframe/20/20070406/16.html
		var adStr = '<iframe scrolling="no" frameborder="0" src="" style="background:;height: 26px; width: 100%;" id="adframe"></iframe>';
		/** 对话框的UI HTML */
		var _dialogUI = '\
			<div class="Dialog" id="Dialog_parent_' + _dialogRndID +'">\
				<div class="shadow' + shadowClass + '" id="Dialog_shadow_' + _dialogRndID +'">\
					<iframe class="base"></iframe>\
					<div class="base"></div>\
				</div>\
				<!--对话框窗体-->\
				<div class="base window focus' + windowClass + '" id="Dialog_window_' + _dialogRndID +'">\
					<div class="base dialogwrapper">\
						<!--标题-->\
						<div class="base top" id="Dialog_titleContent_' + _dialogRndID +'">\
							<div class="base left"></div>\
							<div class="base center"></div>\
							<div class="base right"></div>\
							<span class="base" id="Dialog_title_' + _dialogRndID +'">' + _dialogCFG.title + '</span>\
						</div>\
						<!--主体-->\
						<div class="base middle">\
							<div class="base left" id="Dialog_leftContent_' + _dialogRndID +'"></div>\
							<span class="base center" id="Dialog_content_' + _dialogRndID +'">' + _dialogCFG.content + '</span>\
							<div class="base right" id="Dialog_rightContent_' + _dialogRndID +'"></div>\
						</div>\
						<!-- 底部 -->\
						<div class="base bottom" id="Dialog_statusContent_' + _dialogRndID +'">\
							<div class="base left"></div>\
							<div class="base center" id="Dialog_ad_' + _dialogRndID +'">' + (_dialogCFG.ad == true? adStr: "") + '</div>\
							<div class="base right"></div>\
						</div>\
						<!--拖拽句柄-->\
						<a class="base baselink move" href="javascript:;" id="Dialog_move_' + _dialogRndID +'"></a>\
						<!--按钮栏-->\
						<a class="base baselink min" href="javascript:;"></a>\
						<a class="base baselink max" href="javascript:;"></a>\
						<a class="base baselink med" href="javascript:;"></a>\
						<a id="Dialog_help_' + _dialogRndID +'" target="_blank" class="base baselink help" class="base" href="javascript:;">? 帮助</a>\
						<a id="Dialog_close_' + _dialogRndID + '" class="base baselink close" href="javascript:;" onclick="return false;" title="关闭"></a>\
						<!--对话框调节句柄-->\
						<a class="base baselink resize resize-n" href="javascript:;"></a>\
						<a class="base baselink resize resize-s" href="javascript:;"></a>\
						<a class="base baselink resize resize-w" href="javascript:;"></a>\
						<a class="base baselink resize resize-e" href="javascript:;"></a>\
						<a class="base baselink resize resize-nw" href="javascript:;"></a>\
						<a class="base baselink resize resize-ne" href="javascript:;"></a>\
						<a class="base baselink resize resize-sw" href="javascript:;"></a>\
						<a class="base baselink resize resize-se" href="javascript:;"></a>\
					</div>\
				</div>\
				<div class="base mceEventBlocker" id="Dialog_dragshadow_' + _dialogRndID +'"><div class="base placeholder" id="Dialog_drag_' + _dialogRndID +'"></div></div>\
			</div>\
		';

		function _init() {
			// 初始化对话框HTML
			$addHTML(document.body, _dialogUI);

			// 初始化对话框各节点变量

			_dialogNodes = {
				parent:			$E("Dialog_parent_" + _dialogRndID),
				shadow:			$E("Dialog_shadow_" + _dialogRndID),
				window:			$E("Dialog_window_" + _dialogRndID),
				title:			$E("Dialog_title_" + _dialogRndID),
				content:		$E("Dialog_content_" + _dialogRndID),
				ad:				$E("Dialog_ad_" + _dialogRndID),
				move:			$E("Dialog_move_" + _dialogRndID),
				dragshadow:		$E("Dialog_dragshadow_" + _dialogRndID),
				drag:			$E("Dialog_drag_" + _dialogRndID),
				close:			$E("Dialog_close_" + _dialogRndID),
				titleContent:	$E("Dialog_titleContent_" + _dialogRndID),
				leftContent:	$E("Dialog_leftContent_" + _dialogRndID),
				rightContent:	$E("Dialog_rightContent_" + _dialogRndID),
				statusContent:	$E("Dialog_statusContent_" + _dialogRndID),
				helplink:		$E("Dialog_help_" + _dialogRndID)
			};
			_dialogInfo.titleHeight = parseInt($getStyle(_dialogNodes.titleContent, "height"), 10);
			_dialogInfo.statusHeight = parseInt($getStyle(_dialogNodes.statusContent, "height"), 10);
			_dialogInfo.leftWidth = parseInt($getStyle(_dialogNodes.leftContent, "width"), 10);
			_dialogInfo.rightWidth = parseInt($getStyle(_dialogNodes.rightContent, "width"), 10);

			$setStyle(_dialogNodes.parent, "zIndex", _dialogCFG.zindex);

			$setStyle(_dialogNodes.close, "display", (_dialogCFG.close == true? "": "none"));



			// 拖动事件
			(function () {
				var mousePOS = {};

				var nodePOS = new Array();

				var tempPOS = {};

				var screenInfo = {};

				var nodeArea = {};

				var setCapture = function(el) {el.setCapture();};
				if($ff) setCapture = function () {};

				var releaseCapture = function (el) {el.releaseCapture();};
				if($ff) releaseCapture = function () {};

				var eMousedown = function (el) {
					mousePOS = {x: el.clientX, y: el.clientY};
					nodePOS = $getXY(_dialogNodes.window);
					screenInfo = {
						left: $getScrollPos()[1],
						top: $getScrollPos()[0],
						width: $getPageSize()[0] - _dialogNodes.window.offsetWidth,
						height: $getPageSize()[1] - _dialogNodes.window.offsetHeight
					};

					nodeArea = {
						width: _dialogNodes.window.offsetWidth,
						height: _dialogNodes.window.offsetHeight
					};
					if(Sina.base.ie) {
						nodePOS[0] = nodePOS[0] - 2;
						nodePOS[1] = nodePOS[1] - 2;
						nodeArea.width = nodeArea.width - 2;
						nodeArea.height = nodeArea.height - 2;
					}
					else {
						nodeArea.width = nodeArea.width - 2;
						nodeArea.height = nodeArea.height - 2;
					}



					$setStyle(_dialogNodes.dragshadow, "display", "block");
					$setStyle(_dialogNodes.drag, "left", nodePOS[0] + "px");
					$setStyle(_dialogNodes.drag, "top", nodePOS[1] + "px");
					$setStyle(_dialogNodes.drag, "width", nodeArea.width + "px");
					$setStyle(_dialogNodes.drag, "height", nodeArea.height + "px");
					setCapture(_dialogNodes.drag);
					$addEvent(document, "mousemove", eMousemove);
					$addEvent(document, "mouseup", eMouseup);
					_dialogFUNC.onDragStart();
					$stopEvent();
				};
				var eMousemove = function (el) {
					tempPOS = {
						x: nodePOS[0] + (el.clientX - mousePOS.x),
						y: nodePOS[1] + (el.clientY - mousePOS.y)
					};
					if(tempPOS.x < screenInfo.left) {
						tempPOS.x = screenInfo.left;
					}
					else if(tempPOS.x > screenInfo.width) {
						tempPOS.x = screenInfo.width;
					}
					if(tempPOS.y < screenInfo.top) {
						tempPOS.y = screenInfo.top;
					}
					else if(tempPOS.y > screenInfo.height) {
						tempPOS.y = screenInfo.height;
					}
					$setStyle(_dialogNodes.drag, "left", tempPOS.x + "px");
					$setStyle(_dialogNodes.drag, "top", tempPOS.y + "px");
					_dialogFUNC.onDrag();
				};
				var eMouseup = function () {
					nodePOS = $getXY(_dialogNodes.drag);
					$setStyle(_dialogNodes.window, "left", nodePOS[0] + "px");
					$setStyle(_dialogNodes.window, "top", nodePOS[1] + "px");
					$setStyle(_dialogNodes.dragshadow, "display", "none");

					$removeEvent(document, "mousemove", eMousemove);
					$removeEvent(document, "mouseup", eMouseup);
					_dialogFUNC.onDragEnd();
					releaseCapture(_dialogNodes.drag);
				};
				$addEvent(_dialogNodes.move, "mousedown", eMousedown);
			})();
			/**  关闭按钮事件 */
			$addEvent(_dialogNodes.close, "click", _self.hidden);
			/**  窗口改变大小 */
			$addEvent(window, "resize", _self.setShadow);

			_self.setSize(_dialogCFG.width, _dialogCFG.height);
		}


		function _viewShadow () {
			$setStyle(_dialogNodes.shadow, "top", ($getScrollPos()[0]) + "px");
		}

		// ------------------------------------------------ 外部方法 --

		/**
		 * <pre>
		 * 设定对话框内容的高宽度或对话框体的高宽
		 * </pre>
		 * @member
		 * @param {Number} nWidth 设定的宽度
		 * @param {Number} nHeight 设定的高度
		 * @return {Void}
		 * @author FlashSoft
		 * @update 08.01.07
		 */
		this.setSize = function (nWidth, nHeight) {
			$setStyle(_dialogNodes.window, "width", (nWidth + _dialogInfo.leftWidth + _dialogInfo.rightWidth) + "px");
			// L.Ming 20080416 解决 IE 6 下对话框底部多1空白像素的问题
			if ($ie6) {
				nHeight += nHeight % 2;
			}
			$setStyle(_dialogNodes.window, "height", (nHeight + _dialogInfo.titleHeight + _dialogInfo.statusHeight) + "px");
		};
		this.setShadow = function () {
			var frameView = $getStyle(_dialogNodes.dragshadow, "display");
			$setStyle(_dialogNodes.shadow, "display", "none");
			$setStyle(_dialogNodes.dragshadow, "display", "none");
			var pageSize = $getPageSize();

			// 为了解决屏幕高度超过1W像素的内存占用问题
			// 08.05.13
			// FlashSoft
			var shdowHeight = pageSize[3];
			var maxViewSize = 1000;

			if(pageSize[1] > maxViewSize) {
				fixShadowTimeBoolean = true;
			}
			else {
				fixShadowTimeBoolean = false;
			}

			//pageSize = [10, 10, 10, 10];
			if(_dialogCFG.shadow != 0) {
				$setStyle(_dialogNodes.shadow, "display", "block");
			}
			$setStyle(_dialogNodes.dragshadow, "display", frameView);
			//setInterval(function () {trace($getPageSize())}, 2000);
			trace("页面大小: " + pageSize);
			if(pageSize[1] > pageSize[3] && $ff) {
				$setStyle(_dialogNodes.shadow, "width", (pageSize[0] - 18) + "px");
				$setStyle(_dialogNodes.dragshadow, "width", (pageSize[0] - 18) + "px");

				// 为了解决屏幕高度超过1W像素的内存占用问题
				// 08.05.13
				// FlashSoft
				if(pageSize[1] > maxViewSize) {
					$setStyle(_dialogNodes.shadow, "height", shdowHeight + "px");
				}
				else {
					$setStyle(_dialogNodes.shadow, "height", pageSize[1] + "px");
				}
				$setStyle(_dialogNodes.dragshadow, "height", pageSize[1] + "px");
			}
			else {
				if($ie6) {
					if (pageSize[1] > pageSize[3]) {
						$setStyle(_dialogNodes.shadow, "width", pageSize[0] + "px");
						$setStyle(_dialogNodes.dragshadow, "width", pageSize[0] + "px");

						// 为了解决屏幕高度超过1W像素的内存占用问题
						// 08.05.13
						// FlashSoft
						if(pageSize[1] > maxViewSize) {
							$setStyle(_dialogNodes.shadow, "height", shdowHeight + "px");
						}
						else {
							$setStyle(_dialogNodes.shadow, "height", pageSize[1] + "px");
						}

						$setStyle(_dialogNodes.dragshadow, "height", pageSize[1] + "px");
					}
					else {
						$setStyle(_dialogNodes.shadow, "width", pageSize[0] - 22 + "px");
						$setStyle(_dialogNodes.dragshadow, "width", pageSize[0] - 22 + "px");

						// 为了解决屏幕高度超过1W像素的内存占用问题
						// 08.05.13
						// FlashSoft
						if(pageSize[1] > maxViewSize) {
							$setStyle(_dialogNodes.shadow, "height", shdowHeight + "px");
						}
						else {
							$setStyle(_dialogNodes.shadow, "height", pageSize[3] + "px");
						}
						$setStyle(_dialogNodes.dragshadow, "height", pageSize[3] + "px");
					}
				}
				else {
					$setStyle(_dialogNodes.shadow, "width", pageSize[0] + "px");
					$setStyle(_dialogNodes.dragshadow, "width", pageSize[0] + "px");
					// 为了解决屏幕高度超过1W像素的内存占用问题
					// 08.05.13
					// FlashSoft
					if(pageSize[1] > maxViewSize) {
						$setStyle(_dialogNodes.shadow, "height", shdowHeight + "px");
					}
					else {
						$setStyle(_dialogNodes.shadow, "height", pageSize[1] + "px");
					}
					$setStyle(_dialogNodes.dragshadow, "height", pageSize[1] + "px");
				}
			}
		};
		/**
		 * 设置标题
		 * @param {Object} sHTML
		 */
		this.setTitle = function (sHTML) {
			_dialogNodes.title.innerHTML = sHTML;
		};

		/**
		 * <pre>
		 * 设定对话框的内容
		 * </pre>
		 * @member
		 * @param {String} sHTML
		 * @return {Void}
		 * @author FlashSoft
		 * @update 08.01.07
		 */
		this.setContent = function (sHTML) {
			if ((typeof sHTML).toLowerCase() == "object") {
				_dialogNodes.content.innerHTML = "";
				_dialogNodes.content.appendChild(sHTML);
			}
			else {
				_dialogNodes.content.innerHTML = sHTML;
			}
			_dialogFUNC.onContentUpdate();
		};
		/**
		 *
		 */
		this.setIframe = function (oCFG) {
			_dialogNodes.content.style.backgroundImage = "url(http://blogimg.sinajs.cn/v5images/icon/loading.gif)";
			var sURL = oCFG.url;//? oCFG.url: "http://control.blog.sina.com.cn/admin/ria/blank.html";
			if(window.location.host != "") {
				sURL = sURL.split("//").length < 2? ("http://" + window.location.host + "/" + sURL): sURL;
				var bHost = sURL.split("//")[1].split("/")[0] == window.location.host;
			}
			else {
				var bHost = false;
			}

			var nWidth = oCFG.width? oCFG.width: 300;
			var nHeight = oCFG.height? oCFG.height: 300;
			var self = this;

			setTimeout(function () {
				self.setContent("<iframe id='DataIframe_" + _dialogRndID +"' frameborder='0' scrolling='auto' style='width: " + nWidth + "px; height: " + nHeight + "px; " + (bHost? "display: none;": "")+ "' src='" + sURL + "'></iframe>");
				$addEvent($E("DataIframe_" + _dialogRndID), "load", function () {
					$E("DataIframe_" + _dialogRndID).style.display = "";
					_dialogNodes.content.style.backgroundImage = "url()";
				});
			}, 1);

		};
		/** 同域的时候改大小 */
		this.setIframeSize = function (nWidth, nHeight) {
			var self = this;
			setTimeout(function () {
				var frame = $E("DataIframe_" + _dialogRndID);
				$setStyle(frame, "width", nWidth + "px");
				$setStyle(frame, "height", nHeight + "px");
				self.setMiddle();
			}, 10);
		};
		/**
		 * <pre>
		 * 设置对话框的居左跟居顶的距离
		 * </pre>
		 * @member
		 * @param {Number} nLeft 居左值
		 * @param {Number} nTop 居顶值
		 * @return {Void}
		 * @author FlashSoft
		 */
		this.setPosition = function (nLeft, nTop) {
			if (nLeft != null) {
				$setStyle(_dialogNodes.window, "left", nLeft + "px");
			}
			if (nTop != null) {
				$setStyle(_dialogNodes.window, "top", nTop + "px");
			}
			_dialogFUNC.onPosUpdate();
		};
		/**
		 * <pre>
		 * 返回对话框所有可控节点
		 * </pre>
		 * @member
		 * @return {HTMLElements} 节点的哈希列表
		 * @author FlashSoft
		 */
		this.getDialogNodes = function () {
			return _dialogNodes;
		};
		/**
		 * <pre>
		 * 设置对话框的风格
		 * </pre>
		 * @member
		 * @method setSkin
		 * @param {String} sCSS 对话框样式名
		 * @return {Void}
		 * @author FlashSoft
		 */
		this.setSkin = function (sCSS) {
			_dialogCFG.css = sCSS;
			_dialogNodes.parent.className = sCSS;
		};
		/**
		 * <pre>
		 * 设置对话框的风格
		 * </pre>
		 * @member
		 * @method setHelp
		 * @param {String} 设置帮助按钮的链接
		 * @return {Void}
		 * @author FlashSoft
		 */
		this.setHelp = function (href) {
			_dialogNodes.helplink.style.display = "block";
			_dialogNodes.helplink.href = href;
		};
		/** <pre>
		 *  居中对话框
		 *  </pre>
		 *  @author FlashSoft
		 */
		this.setMiddle = function () {
			var pageSize = $getPageSize();
			var dialogTop = (pageSize[3] - _dialogNodes.window.offsetHeight ) / 2 + $getScrollPos()[0];
			_dialogInfo.left = (pageSize[2] - _dialogNodes.window.offsetWidth) / 2;
			_dialogInfo.top = dialogTop < 0? 0: dialogTop;
			_self.setPosition(_dialogInfo.left, _dialogInfo.top);
			_dialogFUNC.onPosUpdate();
		};
		this.setCloseBtn = function (oView) {
			$setStyle(_dialogNodes.close, "display", (oView == true? "": "none"));
		};
		/**
		 * <pre>
		 * 对话框显示
		 * </pre>
		 * @member
		 * @method show
		 * @return {Void}
		 * @author FlashSoft
		 */
		this.show = function () {
			$setStyle(_dialogNodes.parent, "display", "block");
			$setStyle(_dialogNodes.parent, "visibility", "visible");
			this.setShadow();
			this.setMiddle();

			trace("是否采用优化规则:" + fixShadowTimeBoolean, "green");

			if (fixShadowTimeBoolean == true) {
				clearInterval(fixShadowTimer);
				fixShadowTimer = setInterval(_viewShadow, 100);
			}

			_dialogFUNC.onShow();
		};
		/**
		 * <pre>
		 * 对话框隐藏
		 * </pre>
		 * @member
		 * @method hidden
		 * @return {Void}
		 * @author FlashSoft
		 */
		this.hidden = function () {
			_dialogFUNC.onBeforeHidden();
			if (_dialogCFG.closed != false) {
				$setStyle(_dialogNodes.parent, "visibility", "hidden");
				$setStyle(_dialogNodes.parent, "display", "none");

				if (fixShadowTimeBoolean == true) {
					clearInterval(fixShadowTimer);
				}

				_dialogNodes.content.innerHTML = "";

				_dialogFUNC.onHidden();
			}
		};

		this.setCloseEvent = function (bClose) {
			_dialogCFG.closed = bClose;
		};
		_init();
	};
	regist("$dialog", "Sina.ui.dialog", dialog, "FlashSoft", "对话框的原型类");
})();

/**
 * 返回闭包函数引用,支持传递变量
 * @method Sina.base.bind
 * @param {Function} method 本体函数
 * @param {Object} object this指针
 * @param {Array} args 数组参数
 * @author FlashSoft | fangchao@staff.sina.com.cn
 * @update 08.08.02
 * @example
 * 	var img = document.createElement("img");
 * 	var func = function (a, b) {
 * 		alert(a);
 * 	};
 * 	var index = 1;
 * 	Sina.events.addEvent(img, "click", Sina.base.bind(func, this, [index, 2]);
 */
(function () {
	var bind;
	bind = function(method, object, args) {
		args = args == null? []: args;
		return function() {
		  method.apply(object, args);
		};
	};
	regist("$bind", "Sina.base.bind", bind, "FlashSoft", "返回一个闭包引用,允许传变量");
})();




/**
 *
 * @example
 * 	Sina.ui.windialog.confirm("如果一旦删除将不能回复", {
		title: "是否删除",
		btns: [
			{
				label: "确认",
				func: btn1_func,
				closed: false,
				focus: true
			},
			{
				label: "关闭",
				closed: true
			}
		],
		// 取值0为警告,取值1为正确, 取值2为询问, 取值3为错误, 默认为0
		ico: 3
	});
 */
(function () {
	eval(regist.bindTo());

	// 引入对话框css
	$include("http://spaceimg.sinajs.cn/app/css/space_dialog.css", "css");

	var dialog;
	var win = {};
	var isInit = false;
	function initDialog() {
		if(isInit)return;
		var initCFG = {title: "提示", width: 400, height: 180, drag: false};
		var initFunc = {};
		dialog = new Sina.ui.dialog(initCFG, initFunc);
		isInit = true;
	}
	function getDialogContent(sTitle, sContent, nIco, aBtns){
		var title = sTitle != ""? '<p class="p_bold">' + sTitle + '</p>': '';
		var content = sContent != ""? '<p>' + sContent + '</p>': '';
		var ico_arr = [
			'<img src="http://www.sinaimg.cn/pay/space/spaceapp/public/pub_layer_01.png"/>',
			'<img src="http://www.sinaimg.cn/pay/space/spaceapp/public/pub_layer_02.png"/>',
			'<img src="http://www.sinaimg.cn/pay/space/spaceapp/public/pub_layer_03.png"/>',
			'<img src="http://www.sinaimg.cn/pay/space/spaceapp/public/pub_layer_04.png"/>'
		];
		var ico = ico_arr[nIco];
		ico = !ico? ico_arr[0]: ico;
		var html = '\
	       <div class="dialogconn" id="__app_dialog_content__">\
				<table width="100%" border="0" cellspacing="0" cellpadding="0">\
					<tr>\
						<td width="60" align="center" valign="top">' + ico + '</td>\
						<td>\
							' + title + '\
							' + content + '\
							<p class="p_btn">\
								<a href="javascript:;" class="Ap_a_btn" id="__app_dialog_btn_ok__"><span><cite>&nbsp;' + aBtns[0] + '&nbsp;</cite></span></a>\
								&nbsp;&nbsp;&nbsp;&nbsp;\
								<a href="javascript:;" class="Ap_a_btn" id="__app_dialog_btn_cancel__"><span><cite>&nbsp;' + aBtns[1] + '&nbsp;</cite></span></a>\
							</p>\
						</td>\
					</tr>\
				</table>\
			</div>\
		';
		return html;
	}
	function create (sContent, oOption) {
		oOption = oOption || {};
		var width = oOption.width || 400;
		var height = oOption.height || 150;
		var title = oOption.title || "";
		var ico = !oOption.ico? 0: oOption.ico;

		var btn = oOption.btns == null? [{},{}]: oOption.btns;

		btn[0] = btn[0] == null? {}: btn[0];
		btn[1] = btn[1] == null? {}: btn[1];

		btn[0].label = btn[0].label == null? "确定": btn[0].label;
		btn[0].func = btn[0].func == null? function () {}: btn[0].func;
		btn[0].closed = btn[0].closed == null? true: btn[0].closed;
		btn[0].focus = btn[0].focus == null? true: btn[0].focus;



		btn[1].label = btn[1].label == null? "取消": btn[1].label;
		btn[1].func = btn[1].func == null? function () {}: btn[1].func;
		btn[1].closed = btn[1].closed == null? true: btn[1].closed;
		btn[1].focus = btn[1].focus == null? false: btn[1].focus;


		var html = getDialogContent(title, sContent, ico, [btn[0].label, btn[1].label]);

		dialog.setContent(html);
		dialog.show();

		height = ($E("__app_dialog_content__").offsetHeight);
		dialog.setSize(width, height);
		dialog.setMiddle();
		if(oOption.left != null) {
			dialog.setPosition(oOption.left);
		}
		if(oOption.top != null) {
			dialog.setPosition(null, oOption.top);
		}


		var ok_btn = $E("__app_dialog_btn_ok__");
		var cancel_btn = $E("__app_dialog_btn_cancel__");

		if (btn[0].closed) {
			$addEvent(ok_btn, "click", $bind(closeBtn, this));
		}
		if (btn[1].closed) {
			$addEvent(cancel_btn, "click", $bind(closeBtn, this));
		}

		$addEvent(ok_btn, "click", $bind(btn[0].func, this));
		$addEvent(cancel_btn, "click", $bind(btn[1].func, this));
		setTimeout(function () {
			try{
				if(btn[0].focus) {
					ok_btn.focus();
				}
				if(btn[1].focus) {
					cancel_btn.focus();
				}
			}catch(e){}
		}, 100);


	};
	function closeBtn () {
		dialog.hidden();
		$stopEvent();
	}
	win.alert = function (sContent, oOption) {
		initDialog();
		create(sContent, oOption);
		var cancel_btn = $E("__app_dialog_btn_cancel__");
		cancel_btn.style.display = "none";
	};
	win.confirm = function (sContent, oOption) {
		initDialog();
		create(sContent, oOption);
	};
	win.hidden = function  () {

		dialog.hidden();
	};
	win.iframe = function (sTitle, sURL, nWidth, nHeight) {
		initDialog();
		dialog.show();
		dialog.setIframe({
			url: sURL,
			width: nWidth,
			height: nHeight
		});
		dialog.setTitle(sTitle);
		dialog.setSize(nWidth, nHeight);
		dialog.setMiddle();
	};
	win.iframe.setSize = function (nWidth, nHeight) {
		dialog.setIframeSize(nWidth, nHeight);
		dialog.setSize(nWidth, nHeight);
	};
	win.setPos = function(nLeft, nTop){
		dialog.setPosition(nLeft, nTop);
	};
	win.setTitle = function(sTitle){
		dialog.setTitle(sTitle);
	}
	win.initDialog = initDialog;
	regist("$winDialog", "Sina.ui.windialog", win, "FlashSoft", "统一部署的确认取消对话框,包含alert等模式");

})();
(function () {
	eval(regist.bindTo());
//	document.domain = "space.sina.com.cn";

	// 封装标准alert对话框
	var winDialog = {};

	if(top.Sina.ui.windialog) {
		winDialog = top.Sina.ui.windialog;
	}
	else {
		winDialog = Sina.ui.windialog;
	}
	window.winDialog = winDialog;
})();

// 引入这个则增加了showError方法



(function () {
	eval(regist.bindTo());
	// 封装标准出错框
	//
	// 取值0为警告,取值1为正确, 取值2为询问, 取值3为错误, 默认为0
	function showError(oErrorHash, oFunc) {
		var code = oErrorHash.code;
		var data = oErrorHash.data;
		var msg = SYSTEM_ERROR_MSG[code] != null? SYSTEM_ERROR_MSG[code]: SYSTEM_ERROR_MSG["00000"];


		if(data != null) {
			if(data.length > 0) {
				msg = msg.replace(/{\$}/gi, function () {return data.splice(0, 1);});
			}
		}
		oFunc = oFunc? oFunc: function () {};
		winDialog.alert(msg, {
			ico: 0,
			width: 300,
			btns: [
				{
					func: oFunc
				}
			]
		});
	}
	// 显示出错
	window.showError = showError;

})();


var bind = function(method, object, args) {
	if(!method)
		return null;
	args = args == null? []: args;
	return function() { 
		method.apply(object, args); 
	};
};


//winConfirm('您中得xx号', '宝物已放至物品箱', '现在查看', btn2_func, [1], '转至物品箱', btn3_func, [1])
function winConfirm(){
	var args = {
		'title'	:	arguments[1],
		'msg'	:	arguments[0],
		'str1'	:	arguments[2],
		'fun1'	:	arguments[3],
		'args1'	:	arguments[4],
		'str2'	:	arguments[5],
		'fun2'	:	arguments[6],
		'args2'	:	arguments[7]
	};

	winDialog.confirm(args.msg, {
			title: args.title,
			btns: [
				{
					label: args.str1,
					func: bind(args.fun1, this, args.args1),
					closed: true,
					focus: true
				},
				{
					label: args.str2,
					func: bind(args.fun2, this, args.args2),
					closed: true
				}
			],
			// 取值0为警告,取值1为正确, 取值2为询问, 取值3为错误, 默认为0
			ico: 2
		});

	try{
		winDialog.setTitle('提示');
	}catch(ex){}
}
