if(Object.isUndefined(Chat)){var Chat={}}Chat.Confirm={instance:null,content:null,contentPrevContainer:null,data:null,handlerAccept:null,handlerDeny:null,templatesCache:new Hash(),templateSyntax:/(^|.|\r|\n|\/)(#\[\s*(\w+)\s*\])/,show:function(d,b,a,c){b=b||{};var f=Object.extend({className:"messenger-dialog",destroyOnClose:false,width:360,height:100,maximizable:false,resizable:false,minimizable:false,draggable:false,zIndex:5},b);
if(Chat.Confirm.instance){Chat.Confirm.destroy()}Chat.Confirm.data=b.data;Chat.Confirm.handlerAccept=b.onSuccess;Chat.Confirm.handlerDeny=b.onFailure;Chat.Confirm.content=d;Chat.Confirm.instance=new Window(f);if(Object.isFunction(b.onFailure)){Chat.Confirm.instance.setCloseCallback(function(){b.onFailure();return true})}if(a){if(Object.isUndefined(this.templatesCache.get(d))){var e=$(d).innerHTML;e=e.gsub("#%5B","#[");
e=e.gsub("%5D","]");this.templatesCache.set(d,new Template(e,this.templateSyntax))}Chat.Confirm.instance.getContent().insert(this.templatesCache.get(d).evaluate(c))}else{if($(d)){this.contentPrevContainer=$(d).up();Chat.Confirm.instance.getContent().insert($(d))}else{Chat.Confirm.instance.getContent().update(d)}}Chat.Confirm.instance.showCenter(b.modal||false)},template:function(c,a,b){this.show(c,a,true,b)
},ajax:function(c,b){Chat.Confirm.show(null,b);var a={method:"get",asynchronous:(!Object.isUndefined(b.asynchronous)?b.asynchronous:true),overlayer:{id:Chat.Confirm.instance.getContent().identify()}};Chat.Confirm.instance.setAjaxContent(c,a,true)},deny:function(){if(Chat.Confirm.handlerDeny){Chat.Confirm.handlerDeny(Chat.Confirm.data)}Chat.Confirm.destroy()},accept:function(){if(Chat.Confirm.handlerAccept){if(Chat.Confirm.handlerAccept(Chat.Confirm.data)===false){return
}}try{Statistics.update()}catch(a){}Chat.Confirm.destroy()},destroy:function(){Chat.Confirm.instance.close();if(Chat.Confirm.contentPrevContainer&&$(Chat.Confirm.content)){Chat.Confirm.contentPrevContainer.insert($(Chat.Confirm.content));Chat.Confirm.contentPrevContainer=null}Chat.Confirm.instance.destroy();Chat.Confirm.instance=null;Chat.Confirm.handlerAccept=null;Chat.Confirm.handlerDeny=null;Chat.Confirm.data=null
}};
