var Ibox={presets:{marginImage:{x:50,y:75},width:"auto",height:"auto",url:!1,type:"ele",ajax:!1,ajaxAttr:"href",ajaxOptions:{},title:"提示框",ensure:"确定",cancel:"取消",clostxt:"",loadimg:"/public/img/loading.gif",overlay:!0,opacity:0,overlayClosable:!1,reposition:!0,closable:!0,titleable:!0,optable:!1,dragable:!0,zIndex:199,time:0,useFx:!0,resizeFx:{},onShow:$empty,onClose:$empty},initialize:function(e){return this.options={},this.setOptions(this.presets,e||{}),this.build(),this.bound={window:this.reposition.bind(this,!0),close:this.close.bind(this),key:this.onKey.bind(this)},this.isOpen=this.elementObj=!1,this.ie6=window.XMLHttpRequest?!1:!0,this.time=this.options.time.toInt(),this},build:function(){this.overlay||(this.overlay=new Overlay({name:"ibox",opacity:this.options.opacity,onClick:this.options.overlayClosable?this.close.bind(this):null,zIndex:this.options.zIndex-1}));if(!$("iboxWindow")){var e='
'+this.options.title+"
"+'
'+this.options.clostxt+"
"+"
"+'
'+'';this.win=(new Element("div",{id:"iboxWindow","class":"ibox_win",styles:{position:"absolute",top:-9999,left:-9999,visibility:"hidden",zIndex:this.options.zIndex+2}})).set("html",e),document.body.adopt(this.win)}return this.bar=$("iboxBar"),this.title=$("iboxTitle"),this.closbtn=$("iboxBtnClose"),this.cont=$("iboxContent"),this.opt=$("iboxOperate"),this},assign:function(e,t){e.addEvent("click",function(e){(new Event(e)).stop(),Ibox.open(t,this)})},open:function(e,t){e=e||{},this.initialize(e),$isEle(t)&&(this.element=$(t),this.options.url=this.options.url||this.element.attr(this.options.ajaxAttr)),this.getContent()},remind:function(e,t){return e&&(this.initParams(),t=t||{},this.initialize(t),this.getContent('
'+e+"
"),this.closbtn.invisible(),this.bar.hide(),this.opt.hide(),this.time>0&&this.close.delay(this.time,this)),this},alert:function(e,t,n){if(!e)return this;this.initParams(),n=n||{},this.initialize(n),this.getContent('
'+e+"
"),this.opt.show(),this.bar.show(),this.AlertBtnOk=(new Element("a",{id:"iboxAlertOk","class":"bluebtn btn_s bdrad3",href:"javascript:;"})).txt(this.options.ensure),this.AlertBtnOk.addEvent("click",function(){$type(t)==="function"&&t.call(this),this.close()}.bind(this)),this.opt.empty().adopt(this.AlertBtnOk),this.time>0&&this.close.delay(this.time,this)},confirm:function(e,t,n,r){if(!e)return this;this.initParams(),r=r||{},this.initialize(r),this.getContent('
'+e+"
"),this.opt.show(),this.bar.show(),this.ConfirmBtnOk=(new Element("a",{id:"iboxConfirmOk",onclick:"return false;","class":"bluebtn btn_s bdrad3 mr20",href:"javascript:;"})).txt(this.options.ensure),this.ConfirmBtnCancel=(new Element("a",{id:"iboxConfirmCancel",onclick:"return false;","class":"graybtn btn_s bdrad3",href:"javascript:;"})).txt(this.options.cancel),this.opt.empty().adopt(this.ConfirmBtnOk,this.ConfirmBtnCancel),this.ConfirmBtnOk.addEvent("click",function(){$type(t)==="function"&&t.call(this)}.bind(this)),this.ConfirmBtnCancel.addEvent("click",function(){$type(n)==="function"&&n.call(this),this.close()}.bind(this))},loading:function(e){return this.initialize({}),e=e||'
加载中...
',this.getContent(e),this.closbtn.invisible(),this.bar.hide(),this.opt.hide(),this},close:function(){this.isOpen&&(this.isOpen=!1,$isFun(this.options.onClose)&&this.options.onClose.call(this),this.overlay&&this.options.overlay&&(this.overlay.dispose(),this.overlay=null),this.elementObj&&document.body.adopt(this.elementObj.hide()),this.cont.empty(),this.opt.empty(),this.closbtn.invisible(),this.win.invisible(),this.element&&(this.element=null),this.initParams(),this.toggleListeners(),this.options.onShow=$empty,this.options.onClose=$empty,this.fx&&(this.fx=null))},initParams:function(){this.options={},this.setOptions(this.presets)},toggleListeners:function(e){var t=e?"addEvent":"removeEvent";this.closbtn[t]("click",this.bound.close),document[t]("keydown",this.bound.key),this.options.reposition&&window[t]("resize",this.bound.window)},getContent:function(e){this.toggleListeners(!0);if(e)return this.applyContent(e);var t=this.options.type,n=this.options.url,r=this.options;if(!n)return!1;if(!this.options.ajax)return $isStr(n)&&(n=n.replace(/^#/,""),$(n)&&(n=$(n))),this.applyContent(n);this.loading(),this.options=r,this.title.attr("title",this.options.title.trim());var i=this.options.width.toInt()||600,s=this.options.height.toInt()||400;switch(t){case"image":var o=new Image,u=n;o.onload=function(){var e=document.getSize(),t;e.x-=this.options.marginImage.x,e.y-=this.options.marginImage.y,e.y-=24,t={x:o.width,y:o.height};for(var n=2;n--;)t.x>e.x?(t.y*=e.x/t.x,t.x=e.x>1024?1024:e.x):t.y>e.y&&(t.x*=e.y/t.y,t.y=e.y);t.x=t.x.toInt(),t.y=t.y.toInt(),this.applyContent('
')}.bind(this),o.onerror=function(){this.alert("图片加载没有成功!")}.bind(this),o.src=u;break;case"iframe":var a={src:n,styles:{width:i,height:s,background:"url("+this.options.loadimg+") no-repeat center",border:0},"class":"ibox_ajax_iframe",frameborder:0};this.applyContent(new IFrame(a));break;case"ajax":var f=this;(new Request.HTML($merge({method:"get"},$extend({evalScripts:!1},this.options.ajaxOptions)))).addEvents({onFailure:this.onError.bind(this),onComplete:function(e,t,n,r){f.applyContent(n,r)}}).send({url:n});break;case"swf":var l='
',c=new Swiff(n,{width:i,height:s,container:$("swfIbox")});this.options.height="auto",this.applyContent(l,c());break;default:return this.applyContent(n)}},applyContent:function(content,js){var position=this.cont.css("position");if($isStr(content))this.cont.set("html",content).css("position","absolute");else{if($type(content)!=="element")return this;this.elementObj=content,this.cont.empty().adopt(content.show())}return js&&eval(js),this.winsize=this.cont.getSize(),this.cont.css("position",position),this.title.set("html",this.options.title),this.showControl(),this.reposition(),this.win.visible(),this.isOpen=!0,$isFun(this.options.onShow)&&this.options.onShow.call(this),this},showControl:function(){this.options.closable?this.closbtn.visible():this.closbtn.invisible(),this.overlay&&this.options.overlay&&this.overlay.show(),this.options.titleable?this.bar.show():this.bar.hide(),this.options.optable?this.opt.show():this.opt.hide(),this.options.dragable&&$startDrag(this.title,this.win)},reposition:function(e){var t=this.winsize?this.winsize.x:this.win.w(),n=this.win.h(),r=window.getSize().x,i=window.getSize().y,s=document.getScroll().y,o=n