From 2ba30dbd8ec5b629765f2ec84d3da8672266ebf6 Mon Sep 17 00:00:00 2001
From: Michael M Slusarz
Date: Sun, 18 Jan 2009 00:26:02 -0700
Subject: [PATCH] Update compressed versions
---
imp/js/DimpBase.js | 2 +-
imp/js/DimpCore.js | 2 +-
imp/js/compose-dimp.js | 2 +-
imp/js/dragdrop.js | 2 +-
imp/js/fullmessage-dimp.js | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/imp/js/DimpBase.js b/imp/js/DimpBase.js
index 548ab5a88..4a215a930 100644
--- a/imp/js/DimpBase.js
+++ b/imp/js/DimpBase.js
@@ -1 +1 @@
-var DimpBase={bcache:$H(),cacheids:{},lastrow:-1,pivotrow:-1,ppcache:{},ppfifo:[],sfiltersfolder:$H({sf_all:"all",sf_current:"current"}),sfilters:$H({sf_msgall:"msgall",sf_from:"from",sf_to:"to",sf_subject:"subject"}),flags:$H({unseen:"statusUnseen",flagged:"statusFlagged",deletedmsg:"statusDeleted",unimportant:"lowPriority",important:"highPriority",answered:"statusAnswered",forwarded:"statusForwarded",draft:"statusDraft"}),_select:function(c,a){var b=c.get("rownum");if(b.size()==1){this.lastrow=this.pivotrow=b.first()}this.toggleButtons();if($("previewPane").visible()){if(a.right){this.clearPreviewPane()}else{if(a.delay){(this.bcache.get("initPP")||this.bcache.set("initPP",this.initPreviewPane.bind(this))).delay(a.delay)}else{this.initPreviewPane()}}}},_deselect:function(d,b){var c=this.viewport.getSelected(),a=c.size();if(!a){this.lastrow=this.pivotrow=-1}this.toggleButtons();if(b.right||!a){this.clearPreviewPane()}else{if((a==1)&&$("previewPane").visible()){this.loadPreview(c.get("dataob").first())}}},msgSelect:function(g,c){var b,e=this.viewport.createSelection("domid",g),a=e.get("rownum").first(),d=this.isSelected("domid",g),f=this.selectedCount();this.lastrow=a;$("msgList_filter").blur();if(c.shift){if(f){if(!d||f!=1){b=[a,this.pivotrow];this.viewport.select($A($R(b.min(),b.max())),{range:true})}return}}else{if(c.ctrl){this.pivotrow=a;if(d){this.viewport.deselect(e,{right:c.right});return}else{if(c.right||f){this.viewport.select(e,{add:true,right:c.right});return}}}}this.viewport.select(e,{right:c.right})},selectAll:function(){this.viewport.select($A($R(1,this.viewport.getMetaData("total_rows"))),{range:true})},isSelected:function(b,a){return this.viewport.getSelected().contains(b,a)},selectedCount:function(){return(this.viewport)?this.viewport.getSelected().size():0},resetSelected:function(){if(this.viewport){this.viewport.deselect(this.viewport.getSelected(),{clearall:true})}this.toggleButtons();this.clearPreviewPane()},moveSelected:function(a,g){var e,d,f,b,c;if(g){if(!this.viewport.getMetaData("total_rows")){return}e=a}else{if(a==0){return}c=this.viewport.getSelected();switch(c.size()){case 0:e=this.viewport.currentOffset();e+=(a>0)?1:this.viewport.getPageSize("current");break;case 1:d=c.get("dataob").first();e=d.rownum+a;break;default:c=c.get("rownum");e=(a>0?c.max():c.min())+a;break}e=(a>0)?Math.min(e,this.viewport.getMetaData("total_rows")):Math.max(e,1)}f=this.viewport.createSelection("rownum",e);if(f.size()){b=f.get("dataob").first();if(!d||b.imapuid!=d.imapuid){this.viewport.scrollTo(b.rownum);this.viewport.select(f,{delay:0.3})}}else{this.offset=e;this.viewport.requestContentRefresh(e-1)}},go:function(e,b){var d,a,c;if(e.startsWith("compose:")){return}if(e.startsWith("msg:")){c=e.indexOf(":",4);a=e.substring(4,c);this.uid=e.substring(c+1);e="folder:"+a}if(e.startsWith("folder:")){a=e.substring(7);if(this.folder!=a||!$("dimpmain_folder").visible()){this.highlightSidebar(this.getFolderId(a));if(!$("dimpmain_folder").visible()){$("dimpmain_portal").hide();$("dimpmain_folder").show()}if(!Object.isUndefined(this.folder)){this._addHistory(e)}}this.loadFolder(a);return}this.folder=null;$("dimpmain_folder").hide();$("dimpmain_portal").update(DIMP.text.loading).show();if(e.startsWith("app:")){d=e.substr(4);if(d=="imp"){this.go("folder:INBOX");return}this.highlightSidebar("app"+d);this._addHistory(e,b);if(b){this.iframeContent(e,b)}else{if(DIMP.conf.app_urls[d]){this.iframeContent(e,DIMP.conf.app_urls[d])}}return}switch(e){case"portal":this.highlightSidebar("appportal");this._addHistory(e);DimpCore.setTitle(DIMP.text.portal);DimpCore.doAction("ShowPortal",{},null,this.bcache.get("portalC")||this.bcache.set("portalC",this._portalCallback.bind(this)));break;case"options":this.highlightSidebar("appoptions");this._addHistory(e);DimpCore.setTitle(DIMP.text.prefs);this.iframeContent(e,DIMP.conf.prefs_url);break}},_addHistory:function(b,a){if(Horde.dhtmlHistory.getCurrentLocation()!=b){Horde.dhtmlHistory.add(b,a)}},highlightSidebar:function(b){if($("foldersLoading").visible()){this.highlightSidebar.bind(this,b).defer();return}$("sidebarPanel").select(".on").invoke("removeClassName","on");var a=$(b);if(!a){return}if(!a.match("LI")){a=a.up();if(!a){return}}a.addClassName("on");a.ancestors().find(function(c){if(c.hasClassName("subfolders")){this._toggleSubFolder(c.id.substring(3),"exp")}else{return(c.id=="foldersSidebar")}},this)},iframeContent:function(b,d){if(b===null){b=d}var a=$("dimpmain_portal"),c;if(!a){DimpCore.showNotifications([{type:"horde.error",message:"Bad portal!"}]);return}c=new Element("IFRAME",{id:"iframe"+b,className:"iframe",frameBorder:0,src:d});this._resizeIE6Iframe(c);if(b=="options"){c.observe("load",function(){$("iframeoptions").contentWindow.document.getElementById("menu").style.display="none"})}a.insert(c)},msgWindow:function(b){this.updateUnseenUID(b,0);var a=DIMP.conf.message_url;a+=(a.include("?")?"&":"?")+$H({folder:b.view,uid:b.imapuid}).toQueryString();DimpCore.popupWindow(a,"msgview"+b.view+b.imapuid)},composeMailbox:function(a){var b=this.viewport.getSelected();if(!b.size()){return}b.get("dataob").each(function(c){DimpCore.compose(a,{folder:c.view,uid:c.imapuid})})},loadFolder:function(b,a){if(!this.viewport){this._createViewPort()}if(!a){this.resetSelected();if(this.folder==b){this.searchfilterClear(false);return}this.searchfilterClear(true);$("folderName").update(DIMP.text.loading);$("msgHeader").update();this.folderswitch=true;this.folder=b}this.viewport.loadView(b,this.uid?{imapuid:this.uid,view:b}:null,a)},_createViewPort:function(){var b=$("msgList_filter"),a=this.setMessageListTitle.bind(this);this.viewport=new ViewPort({content_container:"msgList",empty_container:"msgList_empty",error_container:"msgList_error",fetch_action:"ListMessages",template:this.message_list_template,buffer_pages:DIMP.conf.buffer_pages,limit_factor:DIMP.conf.limit_factor,viewport_wait:DIMP.conf.viewport_wait,show_split_pane:DIMP.conf.preview_pref,split_pane:"previewPane",splitbar:"splitBar",content_class:"msglist",row_class:"msgRow",selected_class:"selectedRow",ajaxRequest:DimpCore.doAction.bind(DimpCore),norows:true,onScrollIdle:a,onSlide:a,onViewChange:function(){DimpCore.addGC(this.viewport.visibleRows())}.bind(this),onContent:function(f){var e,d,c=((this.viewport.getMetaData("sortby")==DIMP.conf.sortthread)&&this.viewport.getMetaData("thread"));if(this.viewport.isFiltering()){d=this.sfilters.get(this._getSearchfilterField()).capitalize();e=new RegExp("("+$F("msgList_filter")+")","i")}f.get("dataob").each(function(k){var h,i,g,j=$(k.domid);if(c&&c.get(k.imapuid)){h=j.down(".msgSubject");i=h.cloneNode(false);g=c.get(k.imapuid);$R(0,g.length,true).each(function(l){i.insert($($("thread_img_"+g.charAt(l)).cloneNode(false)).writeAttribute("id",""))});h.replace(i.insert(h.getText().escapeHTML()))}if(k.atc){j.down(".msgSize").insert({top:$($("atc_img_"+k.atc).cloneNode(false)).writeAttribute("id","")})}DimpCore.addMouseEvents({id:k.domid,type:k.menutype});if(d=="From"||d=="Subject"){h=j.down(".msg"+d);h.update(h.getText().escapeHTML().gsub(e,'#{1}'))}},this);this.setMessageListTitle()}.bind(this),onComplete:function(){var e,c,d=this.viewport.getMetaData("label");if(this.uid){e=this.viewport.getViewportSelection().search({imapuid:{equal:[this.uid]},view:{equal:[this.folder]}});if(e.size()){this.viewport.scrollTo(e.get("rownum").first());this.viewport.select(e)}}else{if(this.offset){this.viewport.select(this.viewport.createSelection("rownum",this.offset))}}this.offset=this.uid=null;d=this.viewport.getMetaData("label");if(d){$("folderName").update(d)}if(this.folderswitch){this.folderswitch=false;if(this.folder==DIMP.conf.spam_folder){if(!DIMP.conf.spam_spamfolder&&DimpCore.buttons.indexOf("button_spam")!=-1){[$("button_spam").up(),$("ctx_message_spam")].invoke("hide")}if(DimpCore.buttons.indexOf("button_ham")!=-1){[$("button_ham").up(),$("ctx_message_ham")].invoke("show")}}else{if(DimpCore.buttons.indexOf("button_spam")!=-1){[$("button_spam").up(),$("ctx_message_spam")].invoke("show")}if(DimpCore.buttons.indexOf("button_ham")!=-1){if(DIMP.conf.ham_spamfolder){[$("button_ham").up(),$("ctx_message_ham")].invoke("hide")}else{[$("button_ham").up(),$("ctx_message_ham")].invoke("show")}}}}else{if(this.filtertoggle){if(this.filtertoggle==1&&this.viewport.getMetaData("sortby")==DIMP.conf.sortthread){c=DIMP.conf.sortdate}this.filtertoggle=0}}this.setSortColumns(c);if(this.viewport.isFiltering()){this.resetSelected()}else{this.setFolderLabel(this.folder,this.viewport.getMetaData("unseen")||0)}this.updateTitle()}.bind(this),onFetch:this.msgListLoading.bind(this,true),onEndFetch:this.msgListLoading.bind(this,false),onCacheUpdate:function(c){delete this.cacheids[c]}.bind(this),onWait:function(){if($("dimpmain_folder").visible()){DimpCore.showNotifications([{type:"horde.warning",message:DIMP.text.listmsg_wait}])}},onFail:function(){if($("dimpmain_folder").visible()){DimpCore.showNotifications([{type:"horde.error",message:DIMP.text.listmsg_timeout}])}this.msgListLoading(false)}.bind(this),onFirstContent:function(){this.clearPreviewPane()}.bind(this),onClearRows:function(c){c.each(function(d){var e=$(d).down("DIV.msCheck");if(e){DimpCore.addGC(e)}if(d.id){DimpCore.removeMouseEvents(d)}})},onBeforeResize:function(){var c=this.viewport.getSelected();this.isvisible=(c.size()==1)&&(this.viewport.isVisible(c.get("rownum").first())==0)}.bind(this),onAfterResize:function(){if(this.isvisible){this.viewport.scrollTo(this.viewport.getSelected().get("rownum").first())}}.bind(this),onCachedList:function(e){var c,d;if(!this.cacheids[e]){d=this.viewport.getViewportSelection(e,true);if(!d.size()){return""}if(d.getBuffer().getMetaData("search")){this.cacheids[e]=d.get("uid").toJSON()}else{c={};c[e]=d.get("uid").clone();this.cacheids[e]=DimpCore.toRangeString(c)}}return this.cacheids[e]}.bind(this),onUpdateClass:function(c){this.updateStatusFlags(c)}.bind(this),selectCallback:this._select.bind(this),deselectCallback:this._deselect.bind(this)});if(!DIMP.conf.preview_pref){$("msgList").addClassName("msglistNoPreview")}this.viewport.addFilter("ListMessages",this._addSearchfilterParams.bind(this));b.observe("focus",this._searchfilterOnFocus.bind(this));b.observe("blur",this._searchfilterOnBlur.bind(this));b.addClassName("msgFilterDefault")},_addMouseEvents:function(b,c){var a;switch(c.type){case"draft":case"message":new Drag(c.id,this._msgDragConfig);a=$(c.id).down("DIV.msCheck");if(a.visible()){a.observe("mousedown",this.bcache.get("handleMLC")||this.bcache.set("handleMLC",this._handleMsgListCheckbox.bindAsEventListener(this)))}break;case"container":case"folder":new Drag(c.id,this._folderDragConfig);break;case"special":c.type="folder";break;case"vcontainer":case"virtual":$(c.id).observe("contextmenu",Event.stop);break}c.onShow=this.bcache.get("onMS")||this.bcache.set("onMS",this._onMenuShow.bind(this));b(c)},_removeMouseEvents:function(b,a){var c,e=$(a).readAttribute("id");if(e&&(c=DragDrop.Drags.get_drag(e))){c.destroy()}b(a)},_onMenuShow:function(a){var e,c,b,d;switch(a.ctx){case"ctx_folder":e=$("ctx_folder_create","ctx_folder_rename","ctx_folder_delete");c=DimpCore.DMenu.element();if(c.readAttribute("mbox")=="INBOX"){e.invoke("hide")}else{if(DIMP.conf.fixed_folders.indexOf(c.readAttribute("mbox"))!=-1){e.shift();e.invoke("hide")}else{e.invoke("show")}}if(c.hasAttribute("u")){$("ctx_folder_poll").hide();$("ctx_folder_nopoll").show()}else{$("ctx_folder_poll").show();$("ctx_folder_nopoll").hide()}break;case"ctx_message":[$("ctx_message_reply_list")].invoke(this.viewport.createSelection("domid",a.id).get("dataob").first().listmsg?"show":"hide");break;case"ctx_reply":d=this.viewport.getSelected();if(d.size()==1){b=d.get("dataob").first()}[$("ctx_reply_reply_list")].invoke(b&&b.listmsg?"show":"hide");break;case"ctx_otheractions":$("oa_seen","oa_unseen","oa_flagged","oa_clear","oa_sep1","oa_blacklist","oa_whitelist","oa_sep2","oa_undeleted").compact().invoke(this.viewport.getSelected().size()?"show":"hide");break}return true},_onResize:function(b,a){if(this.viewport){this.viewport.onResize(b,a)}this._resizeIE6()},_handleMsgListDblclick:function(b){var a=this._getMsgRow(b),c;if(!a){return}c=this.viewport.createSelection("domid",a.id).get("dataob").first();c.draft?DimpCore.compose("resume",{folder:c.view,uid:c.imapuid}):this.msgWindow(c)},_handleMsgListCheckbox:function(b){var a=this._getMsgRow(b);if(!a){return}this.msgSelect(a.readAttribute("id"),{ctrl:true,right:true});b.stop()},_getMsgRow:function(a){a=a.element();if(a&&!a.hasClassName("msgRow")){a=a.up(".msgRow")}return a},updateTitle:function(){var b,a,c;if(this.viewport.isFiltering()){a=DIMP.text.search+" :: "+(this.viewport.getMetaData("total_rows")||0)+" "+DIMP.text.resfound}else{b=$(this.getFolderId(this.folder));if(b){c=b.readAttribute("u");a=b.readAttribute("l");if(c>0){a+=" ("+c+")"}}else{a=this.viewport.getMetaData("label")}}DimpCore.setTitle(a)},sort:function(d){if(this.viewport.getMetaData("sortlimit")){return}var b,c,a=d.element();if(!a.hasAttribute("sortby")){a=a.up("[sortby]");if(!a){return}}c=Number(a.readAttribute("sortby"));if(c==this.viewport.getMetaData("sortby")){b={sortdir:(this.viewport.getMetaData("sortdir")?0:1)};this.viewport.setMetaData({sortdir:b.sortdir})}else{b={sortby:c};this.viewport.setMetaData({sortby:b.sortby})}this.setSortColumns(c);this.viewport.reload(b)},setSortColumns:function(c){var b,a=$("msglistHeader");if(Object.isUndefined(c)){c=this.viewport.getMetaData("sortby")}b=a.down("small[sortby="+c+"]");if(b&&b.up().visible()){b.up(1).childElements().invoke("toggle")}b=a.down("div.msgFrom a");if((this.viewport.isFiltering()&&this.fspecial)||this.viewport.getMetaData("special")){b.hide().next().show()}else{b.show().next().hide()}b=a.down("div.msgSubject a");if(this.viewport.isFiltering()||this.viewport.getMetaData("nothread")||this.viewport.getMetaData("sortlimit")){b.show().next().hide();b.down().hide()}else{b.down().show()}a.childElements().invoke("removeClassName","sortup").invoke("removeClassName","sortdown");b=a.down("div a[sortby="+c+"]");if(b){b.up().addClassName(this.viewport.getMetaData("sortdir")?"sortup":"sortdown")}},togglePreviewPane:function(){var a=DIMP.conf.preview_pref=!DIMP.conf.preview_pref;$("previewtoggle").setText(a?DIMP.text.hide_preview:DIMP.text.show_preview);[$("msgList")].invoke(a?"removeClassName":"addClassName","msglistNoPreview");this._updatePrefs("show_preview",a?1:0);this.viewport.showSplitPane(a);if(a){this.initPreviewPane()}},loadPreview:function(d,e){var a=$("previewPane"),b,c;if(!a.visible()){return}if(!e){if(this.pp&&this.pp.imapuid==d.imapuid&&this.pp.view==d.view){return}this.pp=d;c=d.imapuid+d.view;if(this.ppfifo.indexOf(c)!=-1){return this._loadPreviewCallback(this.ppcache[c])}}b=a.positionedOffset();$("msgLoading").setStyle({position:"absolute",top:(b.top+10)+"px",left:(b.left+10)+"px"}).show();DimpCore.doAction("ShowPreview",e||{},this.viewport.createSelection("dataob",this.pp),this.bcache.get("loadPC")||this.bcache.set("loadPC",this._loadPreviewCallback.bind(this)))},_loadPreviewCallback:function(resp){var ppuid,row,search,tmp,tmp2,pm=$("previewMsg"),r=resp.response,t=$("msgHeadersContent").down("THEAD");if(!r.error){search=this.viewport.getViewportSelection().search({imapuid:{equal:[r.index]},view:{equal:[r.folder]}});if(search.size()){row=search.get("dataob").first();this.updateUnseenUID(row,0)}}if(this.pp&&(this.pp.imapuid!=r.index||this.pp.view!=r.folder)){return}if(r.error||this.viewport.getSelected().size()!=1){if(r.error){DimpCore.showNotifications([{type:r.errortype,message:r.error}])}this.clearPreviewPane();return}ppuid=r.index+r.folder;this._expirePPCache([ppuid]);this.ppcache[ppuid]=resp;this.ppfifo.push(ppuid);DimpCore.removeAddressLinks(pm);DIMP.conf.msg_index=r.index;DIMP.conf.msg_folder=r.folder;tmp=pm.select(".subject");tmp.invoke("update",r.subject);switch(r.priority){case"high":case"low":tmp.invoke("insert",{top:$($(r.priority+"_priority_img").cloneNode(false)).writeAttribute("id",false)});break}$("msgHeadersColl").select(".date").invoke("update",r.minidate);$("msgHeaderDate").select(".date").invoke("update",r.fulldate);["from","to","cc"].each(function(a){if(r[a]){(a=="from"?pm.select("."+a):[t.down("."+a)]).each(function(elt){elt.replace(DimpCore.buildAddressLinks(r[a],elt.cloneNode(false)))})}[$("msgHeader"+a.capitalize())].invoke(r[a]?"show":"hide")});$("toggleHeaders").select(".attachmentImage").invoke(r.atc_label?"show":"hide");if(r.atc_label){tmp=$("msgAtc").show().down(".label");tmp2=$("partlist");tmp2.hide().previous().update(new Element("SPAN",{className:"atcLabel"}).insert(r.atc_label)).insert(r.atc_download);if(r.atc_list){$("partlist_col").show();$("partlist_exp").hide();tmp.down().hide().next().show();tmp2.down("TABLE").update(r.atc_list)}else{tmp.down().show().next().hide()}}else{$("msgAtc").hide()}$("msgBody").down().update(r.msgtext);$("msgLoading","previewInfo").invoke("hide");$("previewPane").scrollTop=0;pm.show();if(r.js){eval(r.js.join(";"))}this._addHistory("msg:"+row.view+":"+row.imapuid)},initPreviewPane:function(){var a=this.viewport.getSelected();if(a.size()!=1){this.clearPreviewPane()}else{this.loadPreview(a.get("dataob").first())}},clearPreviewPane:function(){$("msgLoading","previewMsg").invoke("hide");$("previewInfo").show();this.pp=null},_toggleHeaders:function(a,b){if(b){DIMP.conf.toggle_pref=!DIMP.conf.toggle_pref;this._updatePrefs("dimp_toggle_headers",a.id=="th_expand"?1:0)}[a.up().select("A"),$("msgHeadersColl","msgHeaders")].flatten().invoke("toggle")},_expirePPCache:function(a){this.ppfifo=this.ppfifo.without(a);a.each(function(b){delete this.ppcache[b]},this);if(this.ppfifo.size()>20){delete this.ppcache[this.ppfifo.shift()]}},updateUnseenUID:function(b,e){var c,d,a;if(!b.bg){return false}a=b.bg.indexOf("unseen")!=-1;if((e&&a)||(!e&&!a)){return false}c=this.viewport.createSelection("dataob",b);d=Number($(this.getFolderId(b.view)).readAttribute("u"));if(e){this.viewport.updateFlag(c,"unseen",true);++d}else{this.viewport.updateFlag(c,"unseen",false);--d}this.updateUnseenStatus(b.view,d)},updateUnseenStatus:function(b,a){if(this.viewport){this.viewport.setMetaData({unseen:a},b)}this.setFolderLabel(b,a);if(this.folder==b){this.updateTitle()}},setMessageListTitle:function(){var b,a=this.viewport.getMetaData("total_rows");if(a>0){b=this.viewport.currentOffset();$("msgHeader").update(DIMP.text.messages+" "+(b+1)+" - "+(Math.min(b+this.viewport.getPageSize(),a))+" "+DIMP.text.of+" "+a)}else{$("msgHeader").update(DIMP.text.nomessages)}},setFolderLabel:function(b,c){var a,d=this.getFolderId(b);a=$(d);if(!a||!a.hasAttribute("u")){return}c=Number(c);a.writeAttribute("u",c);if(b=="INBOX"&&window.fluid){window.fluid.setDockBadge(c?c:"")}$(d+"_label").update((c>0)?new Element("STRONG").insert(a.readAttribute("l")).insert(" ").insert(new Element("SPAN",{className:"count",dir:"ltr"}).insert("("+c+")")):a.readAttribute("l"))},getFolderId:function(a){return"fld"+decodeURIComponent(a).replace(/_/g,"__").replace(/\W/g,"_")},getSubFolderId:function(a){return"sub"+a},pollFolders:function(){this.setPollFolders();var a={};if(this.folder&&$("dimpmain_folder").visible()&&this.viewport.getMetaData("label")){a=this.viewport.addRequestParams({})}$("checkmaillink").down("A").update("["+DIMP.text.check+"]");DimpCore.doAction("PollFolders",a,null,this.bcache.get("pollFC")||this.bcache.set("pollFC",this._pollFoldersCallback.bind(this)))},_pollFoldersCallback:function(b){var a;b=b.response;if(b.poll){a=this;$H(b.poll).each(function(c){a.updateUnseenStatus(c.key,c.value)})}if(b.quota){this._displayQuota(b.quota)}$("checkmaillink").down("A").update(DIMP.text.getmail)},_displayQuota:function(a){q=$("quota").cleanWhitespace();q.setText(a.m);q.down("SPAN.used IMG").writeAttribute({width:99-a.p})},setPollFolders:function(){if(DIMP.conf.refresh_time){if(this.pollPE){this.pollPE.stop()}this.pollPE=new PeriodicalExecuter(this.pollFolders.bind(this),DIMP.conf.refresh_time)}},_portalCallback:function(b){if(b.response.linkTags){var a=$$("HEAD").first();b.response.linkTags.each(function(c){var d=new Element("LINK",{type:"text/css",rel:"stylesheet",href:c.href});if(c.media){d.media=c.media}a.insert(d)})}$("dimpmain_portal").update(b.response.portal)},searchfilterRun:function(){if(!this.viewport.isFiltering()){this.filtertoggle=1;this.fspecial=this.viewport.getMetaData("special")}this.viewport.runFilter($F("msgList_filter"))},_searchfilterOnFocus:function(){var a=$("qoptions").up();if($("msgList_filter").hasClassName("msgFilterDefault")){this._setFilterText(false)}if(!this.filter_on){this.filter_on=true;$("sf_current").update(this.viewport.getMetaData("label"));this._setSearchfilterParams(this.viewport.getMetaData("special")?"to":"from","msg");this._setSearchfilterParams("current","folder");$(document.documentElement).setStyle({overflowY:"hidden"});Effect.SlideDown(a,{duration:0.5,afterFinish:function(){this._onResize(false,true);$(document.documentElement).setStyle({overflowY:"auto"})}.bind(this)})}},_searchfilterOnBlur:function(){if(!$F("msgList_filter")){this._setFilterText(true)}},searchfilterClear:function(a){if(!this.filter_on){return}this.filter_on=false;if(this.searchobserve){clearTimeout(this.searchobserve);this.searchobserve=null}this._setFilterText(true);Effect.SlideUp($("qoptions").up(),{duration:0.5,afterFinish:this._onResize.bind(this,a)});this.filtertoggle=2;this.resetSelected();this.viewport.stopFilter(a)},_setFilterText:function(b){var a=$("msgList_filter");if(b){a.setValue(DIMP.text.search);a.addClassName("msgFilterDefault")}else{a.setValue("");a.removeClassName("msgFilterDefault")}},_setSearchfilterParams:function(d,a){var b=(a=="folder")?this.sfiltersfolder:this.sfilters;b.keys().each(function(c){$(c).writeAttribute("className",(d==b.get(c))?"qselected":"")})},updateSearchfilter:function(b,a){this._setSearchfilterParams(b,a);if($F("msgList_filter")){this.viewport.runFilter()}},_addSearchfilterParams:function(){var a=this.sfiltersfolder.keys().find(function(b){return $(b).hasClassName("qselected")});return $H({searchfolder:this.sfiltersfolder.get(a),searchmsg:this.sfilters.get(this._getSearchfilterField())})},_getSearchfilterField:function(){return this.sfilters.keys().find(function(a){return $(a).hasClassName("qselected")})},toggleButtons:function(){var a=(this.selectedCount()==0);DimpCore.buttons.each(function(c){var d=$(c);if(d){[d.up()].invoke(a?"addClassName":"removeClassName","disabled");DimpCore.DMenu.disable(c+"_img",true,a)}})},_folderDropHandler:function(c,d,i){var h,g,f,b=c.readAttribute("mbox"),a=c.readAttribute("ftype");if(d.hasClassName("folder")){h=(c==$("dropbase"));if(h||(a!="special"&&!this.isSubfolder(d,c))){DimpCore.doAction("RenameFolder",{old_name:d.readAttribute("mbox"),new_parent:h?"":b,new_name:d.readAttribute("l")},null,this.bcache.get("folderC")||this.bcache.set("folderC",this._folderCallback.bind(this)))}}else{if(a!="container"){g=this.viewport.getSelected();if(g.size()){f=g}else{if(d.readAttribute("mbox")!=b){f=this.viewport.createSelection("domid",d.id)}}if(f.size()){if(i.ctrlKey){DimpCore.doAction("CopyMessage",this.viewport.addRequestParams({tofld:b}),f,this.bcache.get("pollFC")||this.bcache.set("pollFC",this._pollFoldersCallback.bind(this)))}else{if(this.folder!=b){this.viewport.updateFlag(f,"deletedmsg",true);DimpCore.doAction("MoveMessage",this.viewport.addRequestParams({tofld:b}),f,this.bcache.get("deleteC")||this.bcache.set("deleteC",this._deleteCallback.bind(this)))}}}}}},_dragCaption:function(){var a=this.selectedCount();return a+" "+(a==1?DIMP.text.message:DIMP.text.messages)},_keydownHandler:function(i){var j,c,a,b,k,h,d,f=i.element(),g=i.keyCode||i.charCode;c=i.findElement("FORM");if(c){switch(g){case Event.KEY_ESC:case Event.KEY_TAB:if(f.readAttribute("id")=="msgList_filter"){if(g==Event.KEY_ESC||!f.getValue()){this.searchfilterClear(false)}f.blur();i.stop()}break;case Event.KEY_RETURN:if(c.readAttribute("id")=="RB_folder"){this.cfolderaction();i.stop()}break}return}if(!$("dimpmain_folder").visible()){return}d=this.viewport.getSelected();switch(g){case Event.KEY_DELETE:case Event.KEY_BACKSPACE:b=d.get("dataob");if(i.shiftKey){this.moveSelected((b.last().rownum==this.viewport.getMetaData("total_rows"))?(b.first().rownum-1):(b.last().rownum+1),true)}this.flag("deleted",b);i.stop();break;case Event.KEY_UP:case Event.KEY_DOWN:if(i.shiftKey&&this.lastrow!=-1){k=this.viewport.createSelection("rownum",this.lastrow+((g==Event.KEY_UP)?-1:1));if(k.size()){k=k.get("dataob").first();this.viewport.scrollTo(k.rownum);this.msgSelect(k.domid,{shift:true})}}else{this.moveSelected(g==Event.KEY_UP?-1:1)}i.stop();break;case Event.KEY_PAGEUP:case Event.KEY_PAGEDOWN:if(!i.ctrlKey&&!i.shiftKey&&!i.altKey&&!i.metaKey){a=this.viewport.getPageSize()-1;move=a*(g==Event.KEY_PAGEUP?-1:1);if(d.size()==1){j=this.viewport.currentOffset();h=d.get("rownum").first()-1;switch(g){case Event.KEY_PAGEUP:if(j!=h){move=j-h}break;case Event.KEY_PAGEDOWN:if((j+a)!=h){move=j+a-h}break}}this.moveSelected(move);i.stop()}break;case Event.KEY_HOME:case Event.KEY_END:this.moveSelected(g==Event.KEY_HOME?1:this.viewport.getMetaData("total_rows"),true);i.stop();break;case Event.KEY_RETURN:if(!f.match("input")){if(d.size()==1){this.msgWindow(d.get("dataob").first())}}i.stop();break;case 65:case 97:if(i.ctrlKey){this.selectAll();i.stop()}break}},_keyupHandler:function(a){if(a.element().readAttribute("id")=="msgList_filter"){if(this.searchobserve){clearTimeout(this.searchobserve)}if(this.filter_on){this.searchobserve=(this.bcache.get("searchfilterR")||this.bcache.set("searchfilterR",this.searchfilterRun.bind(this))).delay(0.5)}}},_clickHandler:function(d,c){if(d.isRightClick()){return}var a=d.element(),g,f,b;while(Object.isElement(a)){g=a.readAttribute("id");switch(g){case"msgList":if(c){this._handleMsgListDblclick(d);d.stop();return}break;case"RB_Folder_ok":this.cfolderaction();d.stop();return;case"RB_Folder_cancel":this._closeRedBox();d.stop();return;case"normalfolders":case"specialfolders":this._handleFolderMouseEvent(d,"click");break;case"hometab":case"logolink":this.go("portal");d.stop();return;case"button_compose":case"composelink":DimpCore.compose("new");d.stop();return;case"checkmaillink":this.pollFolders();d.stop();return;case"fetchmaillink":IMPDialog.display({dialog_load:DIMP.conf.URI_IMP+"/FetchmailDialog"});d.stop();return;case"appportal":case"appoptions":this.go(g.substring(3));d.stop();return;case"applogout":a.down("A").update("["+DIMP.text.onlogout+"]");DimpCore.logout();d.stop();return;case"newfolder":this.createBaseFolder();d.stop();return;case"button_forward":case"button_reply":this.composeMailbox(g=="button_reply"?"reply":DIMP.conf.forward_default);break;case"button_deleted":case"button_ham":case"button_spam":this.flag(g.substring(7));d.stop();return;case"button_other":DimpCore.DMenu.trigger(d.findElement("A").next(),true);d.stop();return;case"sf_all":case"sf_current":this.updateSearchfilter(g.substring(3),"folder");d.stop();return;case"sf_msgall":case"sf_from":case"sf_to":case"sf_subject":this.updateSearchfilter(g.substring(3),"msg");d.stop();return;case"msglistHeader":this.sort(d);d.stop();return;case"ctx_folder_create":this.createSubFolder(DimpCore.DMenu.element());break;case"ctx_folder_rename":this.renameFolder(DimpCore.DMenu.element());break;case"ctx_folder_empty":f=DimpCore.DMenu.element().readAttribute("mbox");DimpCore.DMenu.close(true);if(window.confirm(DIMP.text.empty_folder)){DimpCore.doAction("EmptyFolder",{view:f},null,this._emptyFolderCallback.bind(this))}break;case"ctx_folder_delete":f=DimpCore.DMenu.element().readAttribute("mbox");DimpCore.DMenu.close(true);if(window.confirm(DIMP.text.delete_folder)){DimpCore.doAction("DeleteFolder",{view:f},null,this.bcache.get("folderC")||this.bcache.set("folderC",this._folderCallback.bind(this)))}break;case"ctx_folder_seen":case"ctx_folder_unseen":this.flag(g=="ctx_folder_seen"?"allSeen":"allUnseen",null,DimpCore.DMenu.element().readAttribute("mbox"));break;case"ctx_folder_poll":case"ctx_folder_nopoll":this.modifyPollFolder(DimpCore.DMenu.element().readAttribute("mbox"),g=="ctx_folder_poll");break;case"ctx_container_create":this.createSubFolder(DimpCore.DMenu.element());break;case"ctx_container_rename":this.renameFolder(DimpCore.DMenu.element());break;case"ctx_message_reply":case"ctx_message_reply_all":case"ctx_message_reply_list":case"ctx_message_forward_all":case"ctx_message_forward_body":case"ctx_message_forward_attachments":this.composeMailbox(g.substring(12));break;case"ctx_message_seen":case"ctx_message_unseen":case"ctx_message_flagged":case"ctx_message_clear":case"ctx_message_spam":case"ctx_message_ham":case"ctx_message_blacklist":case"ctx_message_whitelist":case"ctx_message_deleted":case"ctx_message_undeleted":this.flag(g.substring(12));break;case"ctx_draft_resume":this.composeMailbox("resume");d.stop();return;case"ctx_draft_flagged":case"ctx_draft_clear":case"ctx_draft_deleted":case"ctx_draft_undeleted":this.flag(g.substring(10));break;case"ctx_reply_reply":case"ctx_reply_reply_all":case"ctx_reply_reply_list":this.composeMailbox(g.substring(10));break;case"ctx_forward_forward_all":case"ctx_forward_forward_body":case"ctx_forward_forward_attachments":this.composeMailbox(g.substring(12));break;case"previewtoggle":this.togglePreviewPane();break;case"oa_seen":case"oa_unseen":case"oa_flagged":case"oa_clear":case"oa_blacklist":case"oa_whitelist":case"oa_undeleted":this.flag(g.substring(3));break;case"oa_selectall":this.selectAll();break;case"oa_purge_deleted":this.purgeDeleted();break;case"th_expand":case"th_collapse":this._toggleHeaders(g,true);break;case"msg_newwin":case"msg_newwin_options":this.msgWindow(this.viewport.getViewportSelection().search({imapuid:{equal:[DIMP.conf.msg_index]},view:{equal:[DIMP.conf.msg_folder]}}).get("dataob").first());d.stop();return;case"qclose":this.searchfilterClear(false);d.stop();return;case"applicationfolders":b=d.element();if(!b.hasClassName("custom")){b.up("LI.custom")}if(b){this.go("app:"+b.down("A").readAttribute("id").substring(3));d.stop();return}break;case"tabbar":if(d.element().hasClassName("applicationtab")){this.go("app:"+d.element().readAttribute("id").substring(6));d.stop();return}break;case"dimpmain_portal":if(d.element().match("H1.header a")){this.go("app:"+d.element().readAttribute("app"));d.stop();return}break}a=a.up()}},renameFolder:function(a){if(Object.isUndefined(a)){return}a=$(a);var b=this._createFolderForm(function(c){this._folderAction(a,c,"rename");return false}.bindAsEventListener(this),DIMP.text.rename_prompt);b.down("input").setValue(a.readAttribute("l"))},createBaseFolder:function(){this._createFolderForm(function(a){this._folderAction("",a,"create");return false}.bindAsEventListener(this),DIMP.text.create_prompt)},createSubFolder:function(a){if(Object.isUndefined(a)){return false}this._createFolderForm(function(b){this._folderAction($(a),b,"createsub");return false}.bindAsEventListener(this),DIMP.text.createsub_prompt)},_createFolderForm:function(a,b){var c=new Element("FORM",{action:"#",id:"RB_folder"}).insert(new Element("P").insert(b)).insert(new Element("INPUT",{type:"text",size:15})).insert(new Element("INPUT",{type:"button",id:"RB_Folder_ok",className:"button",value:DIMP.text.ok})).insert(new Element("INPUT",{type:"button",id:"RB_Folder_cancel",className:"button",value:DIMP.text.cancel}));this.cfolderaction=a;RedBox.overlay=true;RedBox.onDisplay=Form.focusFirstElement.curry(c);RedBox.showHtml(c);return c},_closeRedBox:function(){RedBox.close();this.cfolderaction=null},_folderAction:function(b,d,h){this._closeRedBox();var c,g,f,a=d.findElement("form");f=$F(a.down("input"));if(f){switch(h){case"rename":if(b.readAttribute("l")!=f){c="RenameFolder";g={old_name:b.readAttribute("mbox"),new_parent:b.up().hasClassName("folderlist")?"":b.up(1).previous().readAttribute("mbox"),new_name:f}}break;case"create":case"createsub":c="CreateFolder";g={view:f};if(h=="createsub"){g.parent=b.readAttribute("mbox")}break}if(c){DimpCore.doAction(c,g,null,this.bcache.get("folderC")||this.bcache.set("folderC",this._folderCallback.bind(this)))}}},_folderCallback:function(a){a=a.response;if(a.d){a.d.each(this.bcache.get("deleteFolder")||this.bcache.set("deleteFolder",this.deleteFolder.bind(this)))}if(a.c){a.c.each(this.bcache.get("changeFolder")||this.bcache.set("changeFolder",this.changeFolder.bind(this)))}if(a.a){a.a.each(this.bcache.get("createFolder")||this.bcache.set("createFolder",this.createFolder.bind(this)))}},_deleteCallback:function(c){var a=null,b=[],d;this.msgListLoading(false);this._pollFoldersCallback(c);c=c.response;if(!c.uids||c.folder!=this.folder){return}c.uids=DimpCore.parseRangeString(c.uids);d=this.viewport.getViewportSelection(this.folder);if(d.getBuffer().getMetaData("search")){$H(c.uids).each(function(e){e.value.each(function(f){b.push(f+e.key)})});a=this.viewport.getViewportSelection().search({vp_id:{equal:b}})}else{c.uids=c.uids[this.folder];c.uids.each(function(g,e){b.push(e+g)}.curry(this.folder));a=this.viewport.createSelection("uid",c.uids)}if(a.size()){if(c.remove){this.viewport.remove(a,{cacheid:c.cacheid,noupdate:c.viewport});this._expirePPCache(b)}else{this.viewport.updateFlag(a,"deletedmsg",true)}}},_emptyFolderCallback:function(a){if(a.response.mbox){if(this.folder==a.response.mbox){this.viewport.reload();this.clearPreviewPane()}this.setFolderLabel(a.response.mbox,0)}},_flagAllCallback:function(a){if(a.response.mbox){this.setFolderLabel(a.response.mbox,a.response.u)}},_folderLoadCallback:function(b){this._folderCallback(b);var d=$("specialfolders","normalfolders").compact(),c=$("normalfolders"),a=c.getStyle("max-height");d.invoke("observe","mouseover",this._handleFolderMouseEvent.bindAsEventListener(this,"over"));if(DIMP.conf.is_ie6){d.invoke("observe","mouseout",this._handleFolderMouseEvent.bindAsEventListener(this,"out"))}$("foldersLoading").hide();$("foldersSidebar").show();if(a!==null||(Prototype.Browser.IE&&Object.isUndefined(a)&&(c.getStyle("height")=="0px"))){this._sizeFolderlist();Event.observe(window,"resize",this._sizeFolderlist.bind(this))}if(b.response.quota){this._displayQuota(b.response.quota)}},_handleFolderMouseEvent:function(f,d){var c,b=f.element(),a=b.up(".folder")||b.up(".custom");if(!a){return}c=a.readAttribute("ftype");switch(d){case"over":if(DIMP.conf.is_ie6){a.addClassName("over")}if(c&&!DimpCore.DMenu.validElement(a.id)){DimpCore.addMouseEvents({id:a.id,type:c})}break;case"out":a.removeClassName("over");break;case"click":if(b.hasClassName("exp")||b.hasClassName("col")){this._toggleSubFolder(a.id,"tog")}else{switch(c){case"container":case"vcontainer":f.stop();break;case"folder":case"special":case"virtual":f.stop();return this.go("folder:"+a.readAttribute("mbox"));break}}break}},_toggleSubFolder:function(c,d){c=$(c);var b={duration:0.2},a=$(this.getSubFolderId(c.id));if(a&&(d=="tog"||(d=="exp"&&!a.visible())||(d=="col"&&a.visible()))){if(c.descendantOf("specialfolders")){b.afterFinish=this._sizeFolderlist}c.firstDescendant().writeAttribute({className:a.visible()?"exp":"col"});if(a.visible()){Effect.BlindUp(a,b)}else{Effect.BlindDown(a,b)}}},createFolder:function(c){var b,f,i,g,h,e=this.getFolderId(c.m),a=decodeURIComponent(c.m),d=this.getSubFolderId(e),j=$(d);i=new Element("LI",{className:"folder",id:e,l:c.l,mbox:a,ftype:(c.v?(c.co?"vcontainer":"virtual"):(c.co?"container":(c.s?"special":"folder")))});b=new Element("DIV",{className:c.cl||"base",id:e+"_div"});if(c.i){b.update(c.i)}if(c.ch){b.writeAttribute({className:"exp"}).observe("mouseover",this.bcache.get("mo_folder")||this.bcache.set("mo_folder",function(k){k=k.element();if(DragDrop.Drags.drag&&k.hasClassName("exp")){this._toggleSubFolder(k.up(),"exp")}}.bindAsEventListener(this)))}i.insert(b).insert(new Element("A",{id:e+"_label",title:c.l}).insert(c.l));if(j){if(j.insert({before:i}).visible()){b.removeClassName("exp").addClassName("col")}}else{if(c.s){h=$("specialfolders")}else{h=$(this.getSubFolderId(this.getFolderId(c.pa)));h=(h)?h.down("UL"):$("normalfolders")}g=a.toLowerCase();f=h.childElements().find(function(k){var l=k.readAttribute("mbox");return l&&(!c.s||l!="INBOX")&&(g0)?1:this.viewport.getPageSize("current");break;case 1:d=c.get("dataob").first();e=d.rownum+a;break;default:c=c.get("rownum");e=(a>0?c.max():c.min())+a;break}e=(a>0)?Math.min(e,this.viewport.getMetaData("total_rows")):Math.max(e,1)}f=this.viewport.createSelection("rownum",e);if(f.size()){b=f.get("dataob").first();if(!d||b.imapuid!=d.imapuid){this.viewport.scrollTo(b.rownum);this.viewport.select(f,{delay:0.3})}}else{this.offset=e;this.viewport.requestContentRefresh(e-1)}},go:function(e,b){var d,a,c;if(e.startsWith("compose:")){return}if(e.startsWith("msg:")){c=e.indexOf(":",4);a=e.substring(4,c);this.uid=e.substring(c+1);e="folder:"+a}if(e.startsWith("folder:")){a=e.substring(7);if(this.folder!=a||!$("dimpmain_folder").visible()){this.highlightSidebar(this.getFolderId(a));if(!$("dimpmain_folder").visible()){$("dimpmain_portal").hide();$("dimpmain_folder").show()}if(!Object.isUndefined(this.folder)){this._addHistory(e)}}this.loadFolder(a);return}this.folder=null;$("dimpmain_folder").hide();$("dimpmain_portal").update(DIMP.text.loading).show();if(e.startsWith("app:")){d=e.substr(4);if(d=="imp"){this.go("folder:INBOX");return}this.highlightSidebar("app"+d);this._addHistory(e,b);if(b){this.iframeContent(e,b)}else{if(DIMP.conf.app_urls[d]){this.iframeContent(e,DIMP.conf.app_urls[d])}}return}switch(e){case"portal":this.highlightSidebar("appportal");this._addHistory(e);DimpCore.setTitle(DIMP.text.portal);DimpCore.doAction("ShowPortal",{},null,this.bcache.get("portalC")||this.bcache.set("portalC",this._portalCallback.bind(this)));break;case"options":this.highlightSidebar("appoptions");this._addHistory(e);DimpCore.setTitle(DIMP.text.prefs);this.iframeContent(e,DIMP.conf.prefs_url);break}},_addHistory:function(b,a){if(Horde.dhtmlHistory.getCurrentLocation()!=b){Horde.dhtmlHistory.add(b,a)}},highlightSidebar:function(b){if($("foldersLoading").visible()){this.highlightSidebar.bind(this,b).defer();return}$("sidebarPanel").select(".on").invoke("removeClassName","on");var a=$(b);if(!a){return}if(!a.match("LI")){a=a.up();if(!a){return}}a.addClassName("on");a.ancestors().find(function(c){if(c.hasClassName("subfolders")){this._toggleSubFolder(c.id.substring(3),"exp")}else{return(c.id=="foldersSidebar")}},this)},iframeContent:function(b,d){if(b===null){b=d}var a=$("dimpmain_portal"),c;if(!a){DimpCore.showNotifications([{type:"horde.error",message:"Bad portal!"}]);return}c=new Element("IFRAME",{id:"iframe"+b,className:"iframe",frameBorder:0,src:d});this._resizeIE6Iframe(c);if(b=="options"){c.observe("load",function(){$("iframeoptions").contentWindow.document.getElementById("menu").style.display="none"})}a.insert(c)},msgWindow:function(b){this.updateUnseenUID(b,0);var a=DIMP.conf.message_url;a+=(a.include("?")?"&":"?")+$H({folder:b.view,uid:b.imapuid}).toQueryString();DimpCore.popupWindow(a,"msgview"+b.view+b.imapuid)},composeMailbox:function(a){var b=this.viewport.getSelected();if(!b.size()){return}b.get("dataob").each(function(c){DimpCore.compose(a,{folder:c.view,uid:c.imapuid})})},loadFolder:function(b,a){if(!this.viewport){this._createViewPort()}if(!a){this.resetSelected();if(this.folder==b){this.searchfilterClear(false);return}this.searchfilterClear(true);$("folderName").update(DIMP.text.loading);$("msgHeader").update();this.folderswitch=true;this.folder=b}this.viewport.loadView(b,this.uid?{imapuid:this.uid,view:b}:null,a)},_createViewPort:function(){var b=$("msgList_filter"),a=this.setMessageListTitle.bind(this);this.viewport=new ViewPort({content_container:"msgList",empty_container:"msgList_empty",error_container:"msgList_error",fetch_action:"ListMessages",template:this.message_list_template,buffer_pages:DIMP.conf.buffer_pages,limit_factor:DIMP.conf.limit_factor,viewport_wait:DIMP.conf.viewport_wait,show_split_pane:DIMP.conf.preview_pref,split_pane:"previewPane",splitbar:"splitBar",content_class:"msglist",row_class:"msgRow",selected_class:"selectedRow",ajaxRequest:DimpCore.doAction.bind(DimpCore),norows:true,onScrollIdle:a,onSlide:a,onViewChange:function(){DimpCore.addGC(this.viewport.visibleRows())}.bind(this),onContent:function(f){var e,d,c=((this.viewport.getMetaData("sortby")==DIMP.conf.sortthread)&&this.viewport.getMetaData("thread"));if(this.viewport.isFiltering()){d=this.sfilters.get(this._getSearchfilterField()).capitalize();e=new RegExp("("+$F("msgList_filter")+")","i")}f.get("dataob").each(function(k){var h,i,g,j=$(k.domid);if(c&&c.get(k.imapuid)){h=j.down(".msgSubject");i=h.cloneNode(false);g=c.get(k.imapuid);$R(0,g.length,true).each(function(l){i.insert($($("thread_img_"+g.charAt(l)).cloneNode(false)).writeAttribute("id",""))});h.replace(i.insert(h.getText().escapeHTML()))}if(k.atc){j.down(".msgSize").insert({top:$($("atc_img_"+k.atc).cloneNode(false)).writeAttribute("id","")})}this._addMouseEvents({id:k.domid,type:k.menutype});new Drag(j,this._msgDragConfig);if(d=="From"||d=="Subject"){h=j.down(".msg"+d);h.update(h.getText().escapeHTML().gsub(e,'#{1}'))}},this);this.setMessageListTitle()}.bind(this),onComplete:function(){var e,c,d=this.viewport.getMetaData("label");if(this.uid){e=this.viewport.getViewportSelection().search({imapuid:{equal:[this.uid]},view:{equal:[this.folder]}});if(e.size()){this.viewport.scrollTo(e.get("rownum").first());this.viewport.select(e)}}else{if(this.offset){this.viewport.select(this.viewport.createSelection("rownum",this.offset))}}this.offset=this.uid=null;d=this.viewport.getMetaData("label");if(d){$("folderName").update(d)}if(this.folderswitch){this.folderswitch=false;if(this.folder==DIMP.conf.spam_folder){if(!DIMP.conf.spam_spamfolder&&DimpCore.buttons.indexOf("button_spam")!=-1){[$("button_spam").up(),$("ctx_message_spam")].invoke("hide")}if(DimpCore.buttons.indexOf("button_ham")!=-1){[$("button_ham").up(),$("ctx_message_ham")].invoke("show")}}else{if(DimpCore.buttons.indexOf("button_spam")!=-1){[$("button_spam").up(),$("ctx_message_spam")].invoke("show")}if(DimpCore.buttons.indexOf("button_ham")!=-1){if(DIMP.conf.ham_spamfolder){[$("button_ham").up(),$("ctx_message_ham")].invoke("hide")}else{[$("button_ham").up(),$("ctx_message_ham")].invoke("show")}}}}else{if(this.filtertoggle){if(this.filtertoggle==1&&this.viewport.getMetaData("sortby")==DIMP.conf.sortthread){c=DIMP.conf.sortdate}this.filtertoggle=0}}this.setSortColumns(c);if(this.viewport.isFiltering()){this.resetSelected()}else{this.setFolderLabel(this.folder,this.viewport.getMetaData("unseen")||0)}this.updateTitle()}.bind(this),onFetch:this.msgListLoading.bind(this,true),onEndFetch:this.msgListLoading.bind(this,false),onCacheUpdate:function(c){delete this.cacheids[c]}.bind(this),onWait:function(){if($("dimpmain_folder").visible()){DimpCore.showNotifications([{type:"horde.warning",message:DIMP.text.listmsg_wait}])}},onFail:function(){if($("dimpmain_folder").visible()){DimpCore.showNotifications([{type:"horde.error",message:DIMP.text.listmsg_timeout}])}this.msgListLoading(false)}.bind(this),onFirstContent:function(){this.clearPreviewPane()}.bind(this),onClearRows:function(c){c.each(function(d){var e=$(d).down("DIV.msCheck");if(e){DimpCore.addGC(e)}if(d.id){this._removeMouseEvents(d)}},this)}.bind(this),onBeforeResize:function(){var c=this.viewport.getSelected();this.isvisible=(c.size()==1)&&(this.viewport.isVisible(c.get("rownum").first())==0)}.bind(this),onAfterResize:function(){if(this.isvisible){this.viewport.scrollTo(this.viewport.getSelected().get("rownum").first())}}.bind(this),onCachedList:function(e){var c,d;if(!this.cacheids[e]){d=this.viewport.getViewportSelection(e,true);if(!d.size()){return""}if(d.getBuffer().getMetaData("search")){this.cacheids[e]=d.get("uid").toJSON()}else{c={};c[e]=d.get("uid").clone();this.cacheids[e]=DimpCore.toRangeString(c)}}return this.cacheids[e]}.bind(this),onUpdateClass:function(c){this.updateStatusFlags(c)}.bind(this),selectCallback:this._select.bind(this),deselectCallback:this._deselect.bind(this)});if(!DIMP.conf.preview_pref){$("msgList").addClassName("msglistNoPreview")}this.viewport.addFilter("ListMessages",this._addSearchfilterParams.bind(this));b.observe("focus",this._searchfilterOnFocus.bind(this));b.observe("blur",this._searchfilterOnBlur.bind(this));b.addClassName("msgFilterDefault")},_addMouseEvents:function(a){a.onShow=this.bcache.get("onMS")||this.bcache.set("onMS",this._onMenuShow.bind(this));DimpCore.DMenu.addElement(a.id,"ctx_"+a.type,a)},_removeMouseEvents:function(a){var b,c=$(a).readAttribute("id");if(c&&(b=DragDrop.Drags.get_drag(c))){b.destroy()}DimpCore.DMenu.removeElement($(a).identify());DimpCore.addGC(a)},_onMenuShow:function(a){var e,c,b,d;switch(a.ctx){case"ctx_folder":e=$("ctx_folder_create","ctx_folder_rename","ctx_folder_delete");c=DimpCore.DMenu.element();if(c.readAttribute("mbox")=="INBOX"){e.invoke("hide")}else{if(DIMP.conf.fixed_folders.indexOf(c.readAttribute("mbox"))!=-1){e.shift();e.invoke("hide")}else{e.invoke("show")}}if(c.hasAttribute("u")){$("ctx_folder_poll").hide();$("ctx_folder_nopoll").show()}else{$("ctx_folder_poll").show();$("ctx_folder_nopoll").hide()}break;case"ctx_message":[$("ctx_message_reply_list")].invoke(this.viewport.createSelection("domid",a.id).get("dataob").first().listmsg?"show":"hide");break;case"ctx_reply":d=this.viewport.getSelected();if(d.size()==1){b=d.get("dataob").first()}[$("ctx_reply_reply_list")].invoke(b&&b.listmsg?"show":"hide");break;case"ctx_otheractions":$("oa_seen","oa_unseen","oa_flagged","oa_clear","oa_sep1","oa_blacklist","oa_whitelist","oa_sep2","oa_undeleted").compact().invoke(this.viewport.getSelected().size()?"show":"hide");break}return true},_onResize:function(b,a){if(this.viewport){this.viewport.onResize(b,a)}this._resizeIE6()},updateTitle:function(){var b,a,c;if(this.viewport.isFiltering()){a=DIMP.text.search+" :: "+(this.viewport.getMetaData("total_rows")||0)+" "+DIMP.text.resfound}else{b=$(this.getFolderId(this.folder));if(b){c=b.readAttribute("u");a=b.readAttribute("l");if(c>0){a+=" ("+c+")"}}else{a=this.viewport.getMetaData("label")}}DimpCore.setTitle(a)},sort:function(d){if(this.viewport.getMetaData("sortlimit")){return}var b,c,a=d.element();if(!a.hasAttribute("sortby")){a=a.up("[sortby]");if(!a){return}}c=Number(a.readAttribute("sortby"));if(c==this.viewport.getMetaData("sortby")){b={sortdir:(this.viewport.getMetaData("sortdir")?0:1)};this.viewport.setMetaData({sortdir:b.sortdir})}else{b={sortby:c};this.viewport.setMetaData({sortby:b.sortby})}this.setSortColumns(c);this.viewport.reload(b)},setSortColumns:function(c){var b,a=$("msglistHeader");if(Object.isUndefined(c)){c=this.viewport.getMetaData("sortby")}b=a.down("small[sortby="+c+"]");if(b&&b.up().visible()){b.up(1).childElements().invoke("toggle")}b=a.down("div.msgFrom a");if((this.viewport.isFiltering()&&this.fspecial)||this.viewport.getMetaData("special")){b.hide().next().show()}else{b.show().next().hide()}b=a.down("div.msgSubject a");if(this.viewport.isFiltering()||this.viewport.getMetaData("nothread")||this.viewport.getMetaData("sortlimit")){b.show().next().hide();b.down().hide()}else{b.down().show()}a.childElements().invoke("removeClassName","sortup").invoke("removeClassName","sortdown");b=a.down("div a[sortby="+c+"]");if(b){b.up().addClassName(this.viewport.getMetaData("sortdir")?"sortup":"sortdown")}},togglePreviewPane:function(){var a=DIMP.conf.preview_pref=!DIMP.conf.preview_pref;$("previewtoggle").setText(a?DIMP.text.hide_preview:DIMP.text.show_preview);[$("msgList")].invoke(a?"removeClassName":"addClassName","msglistNoPreview");this._updatePrefs("show_preview",a?1:0);this.viewport.showSplitPane(a);if(a){this.initPreviewPane()}},loadPreview:function(d,e){var a=$("previewPane"),b,c;if(!a.visible()){return}if(!e){if(this.pp&&this.pp.imapuid==d.imapuid&&this.pp.view==d.view){return}this.pp=d;c=d.imapuid+d.view;if(this.ppfifo.indexOf(c)!=-1){return this._loadPreviewCallback(this.ppcache[c])}}b=a.positionedOffset();$("msgLoading").setStyle({position:"absolute",top:(b.top+10)+"px",left:(b.left+10)+"px"}).show();DimpCore.doAction("ShowPreview",e||{},this.viewport.createSelection("dataob",this.pp),this.bcache.get("loadPC")||this.bcache.set("loadPC",this._loadPreviewCallback.bind(this)))},_loadPreviewCallback:function(resp){var ppuid,row,search,tmp,tmp2,pm=$("previewMsg"),r=resp.response,t=$("msgHeadersContent").down("THEAD");if(!r.error){search=this.viewport.getViewportSelection().search({imapuid:{equal:[r.index]},view:{equal:[r.folder]}});if(search.size()){row=search.get("dataob").first();this.updateUnseenUID(row,0)}}if(this.pp&&(this.pp.imapuid!=r.index||this.pp.view!=r.folder)){return}if(r.error||this.viewport.getSelected().size()!=1){if(r.error){DimpCore.showNotifications([{type:r.errortype,message:r.error}])}this.clearPreviewPane();return}ppuid=r.index+r.folder;this._expirePPCache([ppuid]);this.ppcache[ppuid]=resp;this.ppfifo.push(ppuid);DimpCore.removeAddressLinks(pm);DIMP.conf.msg_index=r.index;DIMP.conf.msg_folder=r.folder;tmp=pm.select(".subject");tmp.invoke("update",r.subject);switch(r.priority){case"high":case"low":tmp.invoke("insert",{top:$($(r.priority+"_priority_img").cloneNode(false)).writeAttribute("id",false)});break}$("msgHeadersColl").select(".date").invoke("update",r.minidate);$("msgHeaderDate").select(".date").invoke("update",r.fulldate);["from","to","cc"].each(function(a){if(r[a]){(a=="from"?pm.select("."+a):[t.down("."+a)]).each(function(elt){elt.replace(DimpCore.buildAddressLinks(r[a],elt.cloneNode(false)))})}[$("msgHeader"+a.capitalize())].invoke(r[a]?"show":"hide")});$("toggleHeaders").select(".attachmentImage").invoke(r.atc_label?"show":"hide");if(r.atc_label){tmp=$("msgAtc").show().down(".label");tmp2=$("partlist");tmp2.hide().previous().update(new Element("SPAN",{className:"atcLabel"}).insert(r.atc_label)).insert(r.atc_download);if(r.atc_list){$("partlist_col").show();$("partlist_exp").hide();tmp.down().hide().next().show();tmp2.down("TABLE").update(r.atc_list)}else{tmp.down().show().next().hide()}}else{$("msgAtc").hide()}$("msgBody").update(r.msgtext);$("msgLoading","previewInfo").invoke("hide");$("previewPane").scrollTop=0;pm.show();if(r.js){eval(r.js.join(";"))}this._addHistory("msg:"+row.view+":"+row.imapuid)},initPreviewPane:function(){var a=this.viewport.getSelected();if(a.size()!=1){this.clearPreviewPane()}else{this.loadPreview(a.get("dataob").first())}},clearPreviewPane:function(){$("msgLoading","previewMsg").invoke("hide");$("previewInfo").show();this.pp=null},_toggleHeaders:function(a,b){if(b){DIMP.conf.toggle_pref=!DIMP.conf.toggle_pref;this._updatePrefs("dimp_toggle_headers",a.id=="th_expand"?1:0)}[a.up().select("A"),$("msgHeadersColl","msgHeaders")].flatten().invoke("toggle")},_expirePPCache:function(a){this.ppfifo=this.ppfifo.without(a);a.each(function(b){delete this.ppcache[b]},this);if(this.ppfifo.size()>20){delete this.ppcache[this.ppfifo.shift()]}},updateUnseenUID:function(b,e){var c,d,a;if(!b.bg){return false}a=b.bg.indexOf("unseen")!=-1;if((e&&a)||(!e&&!a)){return false}c=this.viewport.createSelection("dataob",b);d=Number($(this.getFolderId(b.view)).readAttribute("u"));if(e){this.viewport.updateFlag(c,"unseen",true);++d}else{this.viewport.updateFlag(c,"unseen",false);--d}this.updateUnseenStatus(b.view,d)},updateUnseenStatus:function(b,a){if(this.viewport){this.viewport.setMetaData({unseen:a},b)}this.setFolderLabel(b,a);if(this.folder==b){this.updateTitle()}},setMessageListTitle:function(){var b,a=this.viewport.getMetaData("total_rows");if(a>0){b=this.viewport.currentOffset();$("msgHeader").update(DIMP.text.messages+" "+(b+1)+" - "+(Math.min(b+this.viewport.getPageSize(),a))+" "+DIMP.text.of+" "+a)}else{$("msgHeader").update(DIMP.text.nomessages)}},setFolderLabel:function(b,c){var a,d=this.getFolderId(b);a=$(d);if(!a||!a.hasAttribute("u")){return}c=Number(c);a.writeAttribute("u",c);if(b=="INBOX"&&window.fluid){window.fluid.setDockBadge(c?c:"")}$(d+"_label").update((c>0)?new Element("STRONG").insert(a.readAttribute("l")).insert(" ").insert(new Element("SPAN",{className:"count",dir:"ltr"}).insert("("+c+")")):a.readAttribute("l"))},getFolderId:function(a){return"fld"+decodeURIComponent(a).replace(/_/g,"__").replace(/\W/g,"_")},getSubFolderId:function(a){return"sub"+a},pollFolders:function(){this.setPollFolders();var a={};if(this.folder&&$("dimpmain_folder").visible()&&this.viewport.getMetaData("label")){a=this.viewport.addRequestParams({})}$("checkmaillink").down("A").update("["+DIMP.text.check+"]");DimpCore.doAction("PollFolders",a,null,this.bcache.get("pollFC")||this.bcache.set("pollFC",this._pollFoldersCallback.bind(this)))},_pollFoldersCallback:function(b){var a;b=b.response;if(b.poll){a=this;$H(b.poll).each(function(c){a.updateUnseenStatus(c.key,c.value)})}if(b.quota){this._displayQuota(b.quota)}$("checkmaillink").down("A").update(DIMP.text.getmail)},_displayQuota:function(a){q=$("quota").cleanWhitespace();q.setText(a.m);q.down("SPAN.used IMG").writeAttribute({width:99-a.p})},setPollFolders:function(){if(DIMP.conf.refresh_time){if(this.pollPE){this.pollPE.stop()}this.pollPE=new PeriodicalExecuter(this.pollFolders.bind(this),DIMP.conf.refresh_time)}},_portalCallback:function(b){if(b.response.linkTags){var a=$$("HEAD").first();b.response.linkTags.each(function(c){var d=new Element("LINK",{type:"text/css",rel:"stylesheet",href:c.href});if(c.media){d.media=c.media}a.insert(d)})}$("dimpmain_portal").update(b.response.portal)},searchfilterRun:function(){if(!this.viewport.isFiltering()){this.filtertoggle=1;this.fspecial=this.viewport.getMetaData("special")}this.viewport.runFilter($F("msgList_filter"))},_searchfilterOnFocus:function(){var a=$("qoptions").up();if($("msgList_filter").hasClassName("msgFilterDefault")){this._setFilterText(false)}if(!this.filter_on){this.filter_on=true;$("sf_current").update(this.viewport.getMetaData("label"));this._setSearchfilterParams(this.viewport.getMetaData("special")?"to":"from","msg");this._setSearchfilterParams("current","folder");$(document.documentElement).setStyle({overflowY:"hidden"});Effect.SlideDown(a,{duration:0.5,afterFinish:function(){this._onResize(false,true);$(document.documentElement).setStyle({overflowY:"auto"})}.bind(this)})}},_searchfilterOnBlur:function(){if(!$F("msgList_filter")){this._setFilterText(true)}},searchfilterClear:function(a){if(!this.filter_on){return}this.filter_on=false;if(this.searchobserve){clearTimeout(this.searchobserve);this.searchobserve=null}this._setFilterText(true);Effect.SlideUp($("qoptions").up(),{duration:0.5,afterFinish:this._onResize.bind(this,a)});this.filtertoggle=2;this.resetSelected();this.viewport.stopFilter(a)},_setFilterText:function(b){var a=$("msgList_filter");if(b){a.setValue(DIMP.text.search);a.addClassName("msgFilterDefault")}else{a.setValue("");a.removeClassName("msgFilterDefault")}},_setSearchfilterParams:function(d,a){var b=(a=="folder")?this.sfiltersfolder:this.sfilters;b.keys().each(function(c){$(c).writeAttribute("className",(d==b.get(c))?"qselected":"")})},updateSearchfilter:function(b,a){this._setSearchfilterParams(b,a);if($F("msgList_filter")){this.viewport.runFilter()}},_addSearchfilterParams:function(){var a=this.sfiltersfolder.keys().find(function(b){return $(b).hasClassName("qselected")});return $H({searchfolder:this.sfiltersfolder.get(a),searchmsg:this.sfilters.get(this._getSearchfilterField())})},_getSearchfilterField:function(){return this.sfilters.keys().find(function(a){return $(a).hasClassName("qselected")})},toggleButtons:function(){var a=(this.selectedCount()==0);DimpCore.buttons.each(function(c){var d=$(c);if(d){[d.up()].invoke(a?"addClassName":"removeClassName","disabled");DimpCore.DMenu.disable(c+"_img",true,a)}})},_folderDropHandler:function(c,d,i){var h,g,f,b=c.readAttribute("mbox"),a=c.readAttribute("ftype");if(d.hasClassName("folder")){h=(c==$("dropbase"));if(h||(a!="special"&&!this.isSubfolder(d,c))){DimpCore.doAction("RenameFolder",{old_name:d.readAttribute("mbox"),new_parent:h?"":b,new_name:d.readAttribute("l")},null,this.bcache.get("folderC")||this.bcache.set("folderC",this._folderCallback.bind(this)))}}else{if(a!="container"){g=this.viewport.getSelected();if(g.size()){f=g}else{if(d.readAttribute("mbox")!=b){f=this.viewport.createSelection("domid",d.id)}}if(f.size()){if(i.ctrlKey){DimpCore.doAction("CopyMessage",this.viewport.addRequestParams({tofld:b}),f,this.bcache.get("pollFC")||this.bcache.set("pollFC",this._pollFoldersCallback.bind(this)))}else{if(this.folder!=b){this.viewport.updateFlag(f,"deletedmsg",true);DimpCore.doAction("MoveMessage",this.viewport.addRequestParams({tofld:b}),f,this.bcache.get("deleteC")||this.bcache.set("deleteC",this._deleteCallback.bind(this)))}}}}}},_dragCaption:function(){var a=this.selectedCount();return a+" "+(a==1?DIMP.text.message:DIMP.text.messages)},_keydownHandler:function(i){var j,c,a,b,k,h,d,f=i.element(),g=i.keyCode||i.charCode;c=i.findElement("FORM");if(c){switch(g){case Event.KEY_ESC:case Event.KEY_TAB:if(f.readAttribute("id")=="msgList_filter"){if(g==Event.KEY_ESC||!f.getValue()){this.searchfilterClear(false)}f.blur();i.stop()}break;case Event.KEY_RETURN:if(c.readAttribute("id")=="RB_folder"){this.cfolderaction();i.stop()}break}return}if(!$("dimpmain_folder").visible()){return}d=this.viewport.getSelected();switch(g){case Event.KEY_DELETE:case Event.KEY_BACKSPACE:b=d.get("dataob");if(i.shiftKey){this.moveSelected((b.last().rownum==this.viewport.getMetaData("total_rows"))?(b.first().rownum-1):(b.last().rownum+1),true)}this.flag("deleted",b);i.stop();break;case Event.KEY_UP:case Event.KEY_DOWN:if(i.shiftKey&&this.lastrow!=-1){k=this.viewport.createSelection("rownum",this.lastrow+((g==Event.KEY_UP)?-1:1));if(k.size()){k=k.get("dataob").first();this.viewport.scrollTo(k.rownum);this.msgSelect(k.domid,{shift:true})}}else{this.moveSelected(g==Event.KEY_UP?-1:1)}i.stop();break;case Event.KEY_PAGEUP:case Event.KEY_PAGEDOWN:if(!i.ctrlKey&&!i.shiftKey&&!i.altKey&&!i.metaKey){a=this.viewport.getPageSize()-1;move=a*(g==Event.KEY_PAGEUP?-1:1);if(d.size()==1){j=this.viewport.currentOffset();h=d.get("rownum").first()-1;switch(g){case Event.KEY_PAGEUP:if(j!=h){move=j-h}break;case Event.KEY_PAGEDOWN:if((j+a)!=h){move=j+a-h}break}}this.moveSelected(move);i.stop()}break;case Event.KEY_HOME:case Event.KEY_END:this.moveSelected(g==Event.KEY_HOME?1:this.viewport.getMetaData("total_rows"),true);i.stop();break;case Event.KEY_RETURN:if(!f.match("input")){if(d.size()==1){this.msgWindow(d.get("dataob").first())}}i.stop();break;case 65:case 97:if(i.ctrlKey){this.selectAll();i.stop()}break}},_keyupHandler:function(a){if(a.element().readAttribute("id")=="msgList_filter"){if(this.searchobserve){clearTimeout(this.searchobserve)}if(this.filter_on){this.searchobserve=(this.bcache.get("searchfilterR")||this.bcache.set("searchfilterR",this.searchfilterRun.bind(this))).delay(0.5)}}},_clickHandler:function(d,c){if(d.isRightClick()){return}var a=orig=d.element(),g,f,b;while(Object.isElement(a)){g=a.readAttribute("id");switch(g){case"msgList":if(c){if(!orig.hasClassName("msgRow")){orig=orig.up(".msgRow")}b=this.viewport.createSelection("domid",orig.identify()).get("dataob").first();b.draft?DimpCore.compose("resume",{folder:b.view,uid:b.imapuid}):this.msgWindow(b);d.stop();return}break;case"RB_Folder_ok":this.cfolderaction();d.stop();return;case"RB_Folder_cancel":this._closeRedBox();d.stop();return;case"normalfolders":case"specialfolders":this._handleFolderMouseClick(d);break;case"hometab":case"logolink":this.go("portal");d.stop();return;case"button_compose":case"composelink":DimpCore.compose("new");d.stop();return;case"checkmaillink":this.pollFolders();d.stop();return;case"fetchmaillink":IMPDialog.display({dialog_load:DIMP.conf.URI_IMP+"/FetchmailDialog"});d.stop();return;case"appportal":case"appoptions":this.go(g.substring(3));d.stop();return;case"applogout":a.down("A").update("["+DIMP.text.onlogout+"]");DimpCore.logout();d.stop();return;case"newfolder":this.createBaseFolder();d.stop();return;case"button_forward":case"button_reply":this.composeMailbox(g=="button_reply"?"reply":DIMP.conf.forward_default);break;case"button_deleted":case"button_ham":case"button_spam":this.flag(g.substring(7));d.stop();return;case"button_other":DimpCore.DMenu.trigger(d.findElement("A").next(),true);d.stop();return;case"sf_all":case"sf_current":this.updateSearchfilter(g.substring(3),"folder");d.stop();return;case"sf_msgall":case"sf_from":case"sf_to":case"sf_subject":this.updateSearchfilter(g.substring(3),"msg");d.stop();return;case"msglistHeader":this.sort(d);d.stop();return;case"ctx_folder_create":this.createSubFolder(DimpCore.DMenu.element());break;case"ctx_folder_rename":this.renameFolder(DimpCore.DMenu.element());break;case"ctx_folder_empty":f=DimpCore.DMenu.element().readAttribute("mbox");DimpCore.DMenu.close(true);if(window.confirm(DIMP.text.empty_folder)){DimpCore.doAction("EmptyFolder",{view:f},null,this._emptyFolderCallback.bind(this))}break;case"ctx_folder_delete":f=DimpCore.DMenu.element().readAttribute("mbox");DimpCore.DMenu.close(true);if(window.confirm(DIMP.text.delete_folder)){DimpCore.doAction("DeleteFolder",{view:f},null,this.bcache.get("folderC")||this.bcache.set("folderC",this._folderCallback.bind(this)))}break;case"ctx_folder_seen":case"ctx_folder_unseen":this.flag(g=="ctx_folder_seen"?"allSeen":"allUnseen",null,DimpCore.DMenu.element().readAttribute("mbox"));break;case"ctx_folder_poll":case"ctx_folder_nopoll":this.modifyPollFolder(DimpCore.DMenu.element().readAttribute("mbox"),g=="ctx_folder_poll");break;case"ctx_container_create":this.createSubFolder(DimpCore.DMenu.element());break;case"ctx_container_rename":this.renameFolder(DimpCore.DMenu.element());break;case"ctx_message_reply":case"ctx_message_reply_all":case"ctx_message_reply_list":case"ctx_message_forward_all":case"ctx_message_forward_body":case"ctx_message_forward_attachments":this.composeMailbox(g.substring(12));break;case"ctx_message_seen":case"ctx_message_unseen":case"ctx_message_flagged":case"ctx_message_clear":case"ctx_message_spam":case"ctx_message_ham":case"ctx_message_blacklist":case"ctx_message_whitelist":case"ctx_message_deleted":case"ctx_message_undeleted":this.flag(g.substring(12));break;case"ctx_draft_resume":this.composeMailbox("resume");d.stop();return;case"ctx_draft_flagged":case"ctx_draft_clear":case"ctx_draft_deleted":case"ctx_draft_undeleted":this.flag(g.substring(10));break;case"ctx_reply_reply":case"ctx_reply_reply_all":case"ctx_reply_reply_list":this.composeMailbox(g.substring(10));break;case"ctx_forward_forward_all":case"ctx_forward_forward_body":case"ctx_forward_forward_attachments":this.composeMailbox(g.substring(12));break;case"previewtoggle":this.togglePreviewPane();break;case"oa_seen":case"oa_unseen":case"oa_flagged":case"oa_clear":case"oa_blacklist":case"oa_whitelist":case"oa_undeleted":this.flag(g.substring(3));break;case"oa_selectall":this.selectAll();break;case"oa_purge_deleted":this.purgeDeleted();break;case"th_expand":case"th_collapse":this._toggleHeaders(a,true);break;case"msg_newwin":case"msg_newwin_options":this.msgWindow(this.viewport.getViewportSelection().search({imapuid:{equal:[DIMP.conf.msg_index]},view:{equal:[DIMP.conf.msg_folder]}}).get("dataob").first());d.stop();return;case"qclose":this.searchfilterClear(false);d.stop();return;case"applicationfolders":b=d.element();if(!b.hasClassName("custom")){b.up("LI.custom")}if(b){this.go("app:"+b.down("A").identify().substring(3));d.stop();return}break;case"tabbar":if(d.element().hasClassName("applicationtab")){this.go("app:"+d.element().identify().substring(6));d.stop();return}break;case"dimpmain_portal":if(d.element().match("H1.header a")){this.go("app:"+d.element().readAttribute("app"));d.stop();return}break}a=a.up()}},_mouseHandler:function(c,b){var a=c.element();switch(b){case"over":if(DragDrop.Drags.drag&&a.hasClassName("exp")){this._toggleSubFolder(a.up(),"exp")}break}},renameFolder:function(a){if(Object.isUndefined(a)){return}a=$(a);var b=this._createFolderForm(function(c){this._folderAction(a,c,"rename");return false}.bindAsEventListener(this),DIMP.text.rename_prompt);b.down("input").setValue(a.readAttribute("l"))},createBaseFolder:function(){this._createFolderForm(function(a){this._folderAction("",a,"create");return false}.bindAsEventListener(this),DIMP.text.create_prompt)},createSubFolder:function(a){if(Object.isUndefined(a)){return false}this._createFolderForm(function(b){this._folderAction($(a),b,"createsub");return false}.bindAsEventListener(this),DIMP.text.createsub_prompt)},_createFolderForm:function(a,b){var c=new Element("FORM",{action:"#",id:"RB_folder"}).insert(new Element("P").insert(b)).insert(new Element("INPUT",{type:"text",size:15})).insert(new Element("INPUT",{type:"button",id:"RB_Folder_ok",className:"button",value:DIMP.text.ok})).insert(new Element("INPUT",{type:"button",id:"RB_Folder_cancel",className:"button",value:DIMP.text.cancel}));this.cfolderaction=a;RedBox.overlay=true;RedBox.onDisplay=Form.focusFirstElement.curry(c);RedBox.showHtml(c);return c},_closeRedBox:function(){RedBox.close();this.cfolderaction=null},_folderAction:function(b,d,h){this._closeRedBox();var c,g,f,a=d.findElement("form");f=$F(a.down("input"));if(f){switch(h){case"rename":if(b.readAttribute("l")!=f){c="RenameFolder";g={old_name:b.readAttribute("mbox"),new_parent:b.up().hasClassName("folderlist")?"":b.up(1).previous().readAttribute("mbox"),new_name:f}}break;case"create":case"createsub":c="CreateFolder";g={view:f};if(h=="createsub"){g.parent=b.readAttribute("mbox")}break}if(c){DimpCore.doAction(c,g,null,this.bcache.get("folderC")||this.bcache.set("folderC",this._folderCallback.bind(this)))}}},_folderCallback:function(a){a=a.response;if(a.d){a.d.each(this.bcache.get("deleteFolder")||this.bcache.set("deleteFolder",this.deleteFolder.bind(this)))}if(a.c){a.c.each(this.bcache.get("changeFolder")||this.bcache.set("changeFolder",this.changeFolder.bind(this)))}if(a.a){a.a.each(this.bcache.get("createFolder")||this.bcache.set("createFolder",this.createFolder.bind(this)))}},_deleteCallback:function(c){var a=null,b=[],d;this.msgListLoading(false);this._pollFoldersCallback(c);c=c.response;if(!c.uids||c.folder!=this.folder){return}c.uids=DimpCore.parseRangeString(c.uids);d=this.viewport.getViewportSelection(this.folder);if(d.getBuffer().getMetaData("search")){$H(c.uids).each(function(e){e.value.each(function(f){b.push(f+e.key)})});a=this.viewport.getViewportSelection().search({vp_id:{equal:b}})}else{c.uids=c.uids[this.folder];c.uids.each(function(g,e){b.push(e+g)}.curry(this.folder));a=this.viewport.createSelection("uid",c.uids)}if(a.size()){if(c.remove){this.viewport.remove(a,{cacheid:c.cacheid,noupdate:c.viewport});this._expirePPCache(b)}else{this.viewport.updateFlag(a,"deletedmsg",true)}}},_emptyFolderCallback:function(a){if(a.response.mbox){if(this.folder==a.response.mbox){this.viewport.reload();this.clearPreviewPane()}this.setFolderLabel(a.response.mbox,0)}},_flagAllCallback:function(a){if(a.response.mbox){this.setFolderLabel(a.response.mbox,a.response.u)}},_folderLoadCallback:function(b){this._folderCallback(b);var c=$("normalfolders"),a=c.getStyle("max-height");$("foldersLoading").hide();$("foldersSidebar").show();if(a!==null||(Prototype.Browser.IE&&Object.isUndefined(a)&&(c.getStyle("height")=="0px"))){this._sizeFolderlist();Event.observe(window,"resize",this._sizeFolderlist.bind(this))}if(b.response.quota){this._displayQuota(b.response.quota)}},_handleFolderMouseClick:function(c){var b=c.element(),a=b.up(".folder")||b.up(".custom");if(!a){return}if(b.hasClassName("exp")||b.hasClassName("col")){this._toggleSubFolder(a.id,"tog")}else{switch(a.readAttribute("ftype")){case"container":case"vcontainer":c.stop();break;case"folder":case"special":case"virtual":c.stop();return this.go("folder:"+a.readAttribute("mbox"));break}}},_toggleSubFolder:function(c,d){c=$(c);var b={duration:0.2},a=$(this.getSubFolderId(c.id));if(a&&(d=="tog"||(d=="exp"&&!a.visible())||(d=="col"&&a.visible()))){if(c.descendantOf("specialfolders")){b.afterFinish=this._sizeFolderlist}c.firstDescendant().writeAttribute({className:a.visible()?"exp":"col"});if(a.visible()){Effect.BlindUp(a,b)}else{Effect.BlindDown(a,b)}}},createFolder:function(c){var b,f,j,g,h,e=this.getFolderId(c.m),a=decodeURIComponent(c.m),d=this.getSubFolderId(e),k=$(d),i=c.v?(c.co?"vcontainer":"virtual"):(c.co?"container":(c.s?"special":"folder"));j=new Element("LI",{className:"folder",id:e,l:c.l,mbox:a,ftype:i});b=new Element("DIV",{className:c.cl||"base",id:e+"_div"});if(c.i){b.update(c.i)}if(c.ch){b.writeAttribute({className:"exp"})}j.insert(b).insert(new Element("A",{id:e+"_label",title:c.l}).insert(c.l));if(k){if(k.insert({before:j}).visible()){b.removeClassName("exp").addClassName("col")}}else{if(c.s){h=$("specialfolders")}else{h=$(this.getSubFolderId(this.getFolderId(c.pa)));h=(h)?h.down("UL"):$("normalfolders")}g=a.toLowerCase();f=h.childElements().find(function(l){var m=l.readAttribute("mbox");return m&&(!c.s||m!="INBOX")&&(g=3){a.msgs.push({type:"horde.success",message:DIMP.text.ajax_recover})}this.server_error=0;if(!a.msgs_noauto){this.showNotifications(a.msgs)}if(this.onDoActionComplete){this.onDoActionComplete(a)}this.inAjaxCallback=false},setTitle:function(a){document.title=DIMP.conf.name+" :: "+a},showNotifications:function(a){if(!a.size()||this.is_logout){return}a.find(function(b){switch(b.type){case"dimp.timeout":this.logout(DIMP.conf.timeout_url);return true;case"horde.error":case"horde.message":case"horde.success":case"horde.warning":case"imp.reply":case"imp.forward":case"imp.redirect":case"dimp.request":case"dimp.sticky":var f,e,d,c,h=$("alerts"),i=new Element("DIV",{className:b.type.replace(".","-")}),g=b.message;if(!h){h=new Element("DIV",{id:"alerts"});$(document.body).insert(h)}if($w("dimp.request dimp.sticky").indexOf(b.type)==-1){g=g.unescapeHTML().unescapeHTML()}h.insert(i.update(g));if(DIMP.conf.is_ie6){f=new Element("DIV",{id:"ie6alertsfix"}).clonePosition(i,{setLeft:false,setTop:false});f.insert(i.remove());h.insert(f)}if($w("horde.error dimp.request dimp.sticky").indexOf(b.type)==-1){this.alertsFade.bind(this,i).delay(b.type=="horde.warning"?10:3)}if(b.type=="dimp.request"){this.alertrequest=i}if(c=$("alertslog")){switch(b.type){case"horde.error":e=DIMP.text.alog_error;break;case"horde.message":e=DIMP.text.alog_message;break;case"horde.success":e=DIMP.text.alog_success;break;case"horde.warning":e=DIMP.text.alog_warning;break}if(e){c=c.down("DIV UL");if(c.down().hasClassName("noalerts")){c.down().remove()}c.insert(new Element("LI").insert(new Element("P",{className:"label"}).insert(e)).insert(new Element("P",{className:"indent"}).insert(g).insert(new Element("SPAN",{className:"alertdate"}).insert("["+(new Date).toLocaleString()+"]"))))}}}},this)},alertsFade:function(a){if(a){Effect.Fade(a,{duration:1.5,afterFinish:this.removeAlert.bind(this)})}},toggleAlertsLog:function(){var a=$("alertsloglink").down("A"),c=$("alertslog").down("DIV"),b={duration:0.5};if(c.visible()){Effect.BlindUp(c,b);a.update(DIMP.text.showalog)}else{Effect.BlindDown(c,b);a.update(DIMP.text.hidealog)}},removeAlert:function(c){try{var a=$(c.element),b=a.up();if(b&&b.parentNode){this.addGC(a.remove());if(!b.childElements().size()&&b.hasClassName("ie6alertsfix")){this.addGC(b.remove())}}}catch(d){this.debug("removeAlert",d)}},compose:function(c,b){var a=DIMP.conf.compose_url;b=b||{};if(c){b.type=c}this.popupWindow(this.addURLParam(a,b),"compose"+new Date().getTime())},popupWindow:function(b,a){if(!(window.open(b,a.replace(/\W/g,"_"),"width="+DIMP.conf.popup_width+",height="+DIMP.conf.popup_height+",status=1,scrollbars=yes,resizable=yes"))){this.showNotifications([{type:"horde.warning",message:DIMP.text.popup_block}])}},closePopup:function(){if(this.inAjaxCallback){this.closePopup.bind(this).defer()}else{window.close()}},logout:function(a){this.is_logout=true;this.redirect(a||(DIMP.conf.URI_IMP+"/LogOut"))},redirect:function(a){a=this.addURLParam(a);if(parent.frames.horde_main){parent.location=a}else{window.location=a}},addMouseEvents:function(a){this.DMenu.addElement(a.id,"ctx_"+a.type,a)},removeMouseEvents:function(a){this.DMenu.removeElement($(a).readAttribute("id"));this.addGC(a)},addPopdown:function(b,a){var c=$(b);c.insert({after:$($("popdown_img").cloneNode(false)).writeAttribute("id",b+"_img").show()});this.DMenu.addElement(b+"_img","ctx_"+a,{offset:c.up(),left:true})},buildAddressLinks:function(d,a){var e,c,b=d.size();if(b>15){c=$("largeaddrspan").cloneNode(true);a.insert(c);e=c.down(".dispaddrlist");c=c.down();this.clickObserveHandler({d:c,f:function(f){[f.down(),f.down(1),f.next()].invoke("toggle")}.curry(c)});c=c.down();c.setText(c.getText().replace("%d",b))}else{e=a}d.each(function(j,h){var f,g;if(j.raw){f=j.raw}else{g=j.personal?(j.personal+" <"+j.inner+">"):j.inner;f=new Element("A",{className:"address",personal:j.personal,email:j.inner,address:g}).insert(g.escapeHTML());this.DMenu.addElement(f.identify(),"ctx_contacts",{offset:f,left:true})}e.insert(f);if(h+1!=b){e.insert(", ")}},this);return a},removeAddressLinks:function(a){[a.select(".address"),a.select(".largeaddrtoggle")].flatten().compact().each(this.removeMouseEvents.bind(this))},addGC:function(a){this.remove_gc=this.remove_gc.concat(a)},addURLParam:function(a,c){var b=a.indexOf("?");c=$H(c);if(DIMP.conf.SESSION_ID){c.update(DIMP.conf.SESSION_ID.toQueryParams())}if(b!=-1){c.update(a.toQueryParams());a=a.substring(0,b)}return c.size()?(a+"?"+c.toQueryString()):a},reloadMessage:function(a){if(typeof DimpFullmessage!="undefined"){window.location=this.addURLParam(document.location.href,a)}else{DimpBase.loadPreview(null,a)}},_clickHandler:function(c){if(c.isRightClick()){return}var a=c.element(),d,b;if(this.alertrequest){this.alertsFade(this.alertrequest);this.alertrequest=null}while(Object.isElement(a)){d=a.readAttribute("id");switch(d){case"partlist_toggle":b=$("partlist");$("partlist_col","partlist_exp").invoke("toggle");if(b.visible()){Effect.BlindUp(b,{duration:0.2})}else{Effect.BlindDown(b,{duration:0.2})}c.stop();return;case"msg_print":window.print();c.stop();return;case"msg_view_source":this.popupWindow(this.addURLParam(DIMP.conf.URI_VIEW,{index:DIMP.conf.msg_index,mailbox:DIMP.conf.msg_folder,actionID:"view_source",id:0},true),DIMP.conf.msg_index+"|"+DIMP.conf.msg_folder);break;case"ctx_contacts_new":this.compose("new",{to:this.DMenu.element().readAttribute("address")});break;case"ctx_contacts_add":this.doAction("AddContact",{name:this.DMenu.element().readAttribute("personal"),email:this.DMenu.element().readAttribute("email")},null,true);break;case"alertsloglink":this.toggleAlertsLog();break;case"alerts":this.alertsFade(a);break}a=a.up()}}};if(typeof ContextSensitive!="undefined"){DimpCore.DMenu=new ContextSensitive()}document.observe("dom:loaded",function(){try{if(parent.opener&&parent.opener.location.host==window.location.host&&parent.opener.DimpCore){DIMP.baseWindow=parent.opener.DIMP.baseWindow||parent.opener}}catch(a){}if(!DIMP.conf.spam_reporting){DimpCore.buttons=DimpCore.buttons.without("button_spam")}if(!DIMP.conf.ham_reporting){DimpCore.buttons=DimpCore.buttons.without("button_ham")}new PeriodicalExecuter(function(){if(DimpCore.remove_gc.size()){try{$A(DimpCore.remove_gc.splice(0,75)).compact().invoke("stopObserving")}catch(b){DimpCore.debug("remove_gc[].stopObserving",b)}}},10);document.observe("click",DimpCore._clickHandler.bindAsEventListener(DimpCore))});Event.observe(window,"load",function(){DimpCore.window_load=true});Element.addMethods({setText:function(b,c){var a=0;$A(b.childNodes).each(function(d){if(d.nodeType==3){if(a++){Element.remove(d)}else{d.nodeValue=c}}});if(!a){$(b).insert(c)}},getText:function(b,a){var c="";$A(b.childNodes).each(function(d){if(d.nodeType==3){c+=d.nodeValue}else{if(a&&d.hasChildNodes()){c+=$(d).getText(true)}}});return c}});Object.extend(Array.prototype,{numericSort:function(){return this.collect(Number).sort(function(d,c){if(d>c){return 1}else{if(d=3){a.msgs.push({type:"horde.success",message:DIMP.text.ajax_recover})}this.server_error=0;if(!a.msgs_noauto){this.showNotifications(a.msgs)}if(this.onDoActionComplete){this.onDoActionComplete(a)}this.inAjaxCallback=false},setTitle:function(a){document.title=DIMP.conf.name+" :: "+a},showNotifications:function(a){if(!a.size()||this.is_logout){return}a.find(function(b){switch(b.type){case"dimp.timeout":this.logout(DIMP.conf.timeout_url);return true;case"horde.error":case"horde.message":case"horde.success":case"horde.warning":case"imp.reply":case"imp.forward":case"imp.redirect":case"dimp.request":case"dimp.sticky":var e,d,c,g=$("alerts"),h=new Element("DIV",{className:b.type.replace(".","-")}),f=b.message;if(!g){g=new Element("DIV",{id:"alerts"});$(document.body).insert(g)}if($w("dimp.request dimp.sticky").indexOf(b.type)==-1){f=f.unescapeHTML().unescapeHTML()}g.insert(h.update(f));if(DIMP.conf.is_ie6){e=new Element("DIV",{id:"ie6alertsfix"}).clonePosition(h,{setLeft:false,setTop:false});e.insert(h.remove());g.insert(e)}if($w("horde.error dimp.request dimp.sticky").indexOf(b.type)==-1){this.alertsFade.bind(this,h).delay(b.type=="horde.warning"?10:3)}if(b.type=="dimp.request"){this.alertrequest=h}if(c=$("alertslog")){switch(b.type){case"horde.error":d=DIMP.text.alog_error;break;case"horde.message":d=DIMP.text.alog_message;break;case"horde.success":d=DIMP.text.alog_success;break;case"horde.warning":d=DIMP.text.alog_warning;break}if(d){c=c.down("DIV UL");if(c.down().hasClassName("noalerts")){c.down().remove()}c.insert(new Element("LI").insert(new Element("P",{className:"label"}).insert(d)).insert(new Element("P",{className:"indent"}).insert(f).insert(new Element("SPAN",{className:"alertdate"}).insert("["+(new Date).toLocaleString()+"]"))))}}}},this)},alertsFade:function(a){if(a){Effect.Fade(a,{duration:1.5,afterFinish:this.removeAlert.bind(this)})}},toggleAlertsLog:function(){var a=$("alertsloglink").down("A"),c=$("alertslog").down("DIV"),b={duration:0.5};if(c.visible()){Effect.BlindUp(c,b);a.update(DIMP.text.showalog)}else{Effect.BlindDown(c,b);a.update(DIMP.text.hidealog)}},removeAlert:function(c){try{var a=$(c.element),b=a.up();this.addGC(a.remove());if(!b.childElements().size()&&b.readAttribute("id")=="ie6alertsfix"){this.addGC(b.remove())}}catch(d){this.debug("removeAlert",d)}},compose:function(c,b){var a=DIMP.conf.compose_url;b=b||{};if(c){b.type=c}this.popupWindow(this.addURLParam(a,b),"compose"+new Date().getTime())},popupWindow:function(b,a){if(!(window.open(b,a.replace(/\W/g,"_"),"width="+DIMP.conf.popup_width+",height="+DIMP.conf.popup_height+",status=1,scrollbars=yes,resizable=yes"))){this.showNotifications([{type:"horde.warning",message:DIMP.text.popup_block}])}},closePopup:function(){if(this.inAjaxCallback){this.closePopup.bind(this).defer()}else{window.close()}},logout:function(a){this.is_logout=true;this.redirect(a||(DIMP.conf.URI_IMP+"/LogOut"))},redirect:function(a){a=this.addURLParam(a);if(parent.frames.horde_main){parent.location=a}else{window.location=a}},removeMouseEvents:function(a){this.DMenu.removeElement($(a).identify());this.addGC(a)},addPopdown:function(b,a){var c=$(b);c.insert({after:$($("popdown_img").cloneNode(false)).writeAttribute("id",b+"_img").show()});this.DMenu.addElement(b+"_img","ctx_"+a,{offset:c.up(),left:true})},buildAddressLinks:function(d,a){var e,c,b=d.size();if(b>15){c=$("largeaddrspan").cloneNode(true);a.insert(c);e=c.down(".dispaddrlist");c=c.down();this.clickObserveHandler({d:c,f:function(f){[f.down(),f.down(1),f.next()].invoke("toggle")}.curry(c)});c=c.down();c.setText(c.getText().replace("%d",b))}else{e=a}d.each(function(j,h){var f,g;if(j.raw){f=j.raw}else{g=j.personal?(j.personal+" <"+j.inner+">"):j.inner;f=new Element("A",{className:"address",personal:j.personal,email:j.inner,address:g}).insert(g.escapeHTML());this.DMenu.addElement(f.identify(),"ctx_contacts",{offset:f,left:true})}e.insert(f);if(h+1!=b){e.insert(", ")}},this);return a},removeAddressLinks:function(a){[a.select(".address"),a.select(".largeaddrtoggle")].flatten().compact().each(this.removeMouseEvents.bind(this))},addGC:function(a){this.remove_gc=this.remove_gc.concat(a)},addURLParam:function(a,c){var b=a.indexOf("?");c=$H(c);if(DIMP.conf.SESSION_ID){c.update(DIMP.conf.SESSION_ID.toQueryParams())}if(b!=-1){c.update(a.toQueryParams());a=a.substring(0,b)}return c.size()?(a+"?"+c.toQueryString()):a},reloadMessage:function(a){if(typeof DimpFullmessage!="undefined"){window.location=this.addURLParam(document.location.href,a)}else{DimpBase.loadPreview(null,a)}},_clickHandler:function(c){if(c.isRightClick()){return}var a=c.element(),d,b;if(this.alertrequest){this.alertsFade(this.alertrequest);this.alertrequest=null}while(Object.isElement(a)){d=a.readAttribute("id");switch(d){case"partlist_toggle":b=$("partlist");$("partlist_col","partlist_exp").invoke("toggle");if(b.visible()){Effect.BlindUp(b,{duration:0.2})}else{Effect.BlindDown(b,{duration:0.2})}c.stop();return;case"msg_print":window.print();c.stop();return;case"msg_view_source":this.popupWindow(this.addURLParam(DIMP.conf.URI_VIEW,{index:DIMP.conf.msg_index,mailbox:DIMP.conf.msg_folder,actionID:"view_source",id:0},true),DIMP.conf.msg_index+"|"+DIMP.conf.msg_folder);break;case"ctx_contacts_new":this.compose("new",{to:this.DMenu.element().readAttribute("address")});break;case"ctx_contacts_add":this.doAction("AddContact",{name:this.DMenu.element().readAttribute("personal"),email:this.DMenu.element().readAttribute("email")},null,true);break;case"alertsloglink":this.toggleAlertsLog();break;case"alerts":this.alertsFade(a);break}a=a.up()}}};if(typeof ContextSensitive!="undefined"){DimpCore.DMenu=new ContextSensitive()}document.observe("dom:loaded",function(){try{if(parent.opener&&parent.opener.location.host==window.location.host&&parent.opener.DimpCore){DIMP.baseWindow=parent.opener.DIMP.baseWindow||parent.opener}}catch(a){}if(!DIMP.conf.spam_reporting){DimpCore.buttons=DimpCore.buttons.without("button_spam")}if(!DIMP.conf.ham_reporting){DimpCore.buttons=DimpCore.buttons.without("button_ham")}new PeriodicalExecuter(function(){if(DimpCore.remove_gc.size()){try{$A(DimpCore.remove_gc.splice(0,75)).compact().invoke("stopObserving")}catch(b){DimpCore.debug("remove_gc[].stopObserving",b)}}},10);document.observe("click",DimpCore._clickHandler.bindAsEventListener(DimpCore))});Event.observe(window,"load",function(){DimpCore.window_load=true});Element.addMethods({setText:function(b,c){var a=0;$A(b.childNodes).each(function(d){if(d.nodeType==3){if(a++){Element.remove(d)}else{d.nodeValue=c}}});if(!a){$(b).insert(c)}},getText:function(b,a){var c="";$A(b.childNodes).each(function(d){if(d.nodeType==3){c+=d.nodeValue}else{if(a&&d.hasChildNodes()){c+=$(d).getText(true)}}});return c}});Object.extend(Array.prototype,{numericSort:function(){return this.collect(Number).sort(function(d,c){if(d>c){return 1}else{if(d
";g=""+d.sig.replace(/^ ?
\n/,"").replace(/ +/g," ")+"
";b=b.replace(/\s*[\s\S]*?\s*<\/p>/,e)}else{b=$F(h).replace(/\r\n/g,"\n");e=i.sig;g=d.sig}f=(i.id[2])?b.indexOf(e):b.lastIndexOf(e);if(f!=-1){if(d.id[2]==i.id[2]){b=b.substring(0,f)+g+b.substring(f+e.length,b.length)}else{if(d.id[2]){b=g+b.substring(0,f)+b.substring(f+e.length,b.length)}else{b=b.substring(0,f)+b.substring(f+e.length,b.length)+g}}b=b.replace(/\r\n/g,"\n").replace(/\n/g,"\r\n");if(this.editor_on){FCKeditorAPI.GetInstance("message").SetHTML(b)}else{h.setValue(b)}$("last_identity").setValue(a)}},get_identity:function(b,a){a=Object.isUndefined(a)?this.editor_on:a;return{id:DIMP.conf_compose.identities[b],sig:DIMP.conf_compose.identities[b][(a?1:0)].replace(/^\n/,"")}},uniqueSubmit:function(b){var a,d,f,e=$("compose");if(DIMP.SpellCheckerObject){DIMP.SpellCheckerObject.resume();if(!this.textarea_ready){this.uniqueSubmit.bind(this,b).defer();return}}e.setStyle({cursor:"wait"});if(b=="send_message"||b=="save_draft"){this.button_pressed=true;switch(b){case"send_message":if(!this.sbtext){f=$("send_button");this.sbtext=f.getText();f.setText(DIMP.text_compose.sending)}break;case"save_draft":if(!this.dbtext){a=$("draft_button");this.dbtext=a.getText();a.setText(DIMP.text_compose.saving)}break}if(this.uploading){(function(){if(this.button_pressed){this.uniqueSubmit(b)}}).bind(this).delay(0.25);return}}$("action").setValue(b);if(b=="add_attachment"){this.uploading=true;e.submit()}else{if(this.editor_on){FCKeditorAPI.GetInstance("message").UpdateLinkedField()}d=e.serialize(true);if(!DIMP.baseWindow){d.nonotify=true}DimpCore.doAction("*"+DIMP.conf.compose_url,d,null,this.uniqueSubmitCallback.bind(this))}},uniqueSubmitCallback:function(b){var a,c=b.response;if(!c){return}if(c.imp_compose){$("composeCache").setValue(c.imp_compose)}if(c.success||c.action=="add_attachment"){switch(c.action){case"auto_save_draft":this.button_pressed=false;$("draft_index").setValue(c.draft_index);break;case"save_draft":this.button_pressed=false;if(DIMP.baseWindow){DIMP.baseWindow.DimpBase.pollFolders();DIMP.baseWindow.DimpCore.showNotifications(b.msgs)}if(DIMP.conf_compose.close_draft){return this._closeCompose()}break;case"send_message":this.button_pressed=false;if(DIMP.baseWindow){switch(c.reply_type){case"reply":DIMP.baseWindow.DimpBase.flag("answered",c.index,c.reply_folder);break;case"forward":DIMP.baseWindow.DimpBase.flag("forwarded",c.index,c.reply_folder);break}if(c.folder){DIMP.baseWindow.DimpBase.createFolder(c.folder)}if(c.draft_delete){DIMP.baseWindow.DimpBase.pollFolders()}DIMP.baseWindow.DimpCore.showNotifications(b.msgs)}return this._closeCompose();case"add_attachment":this.uploading=false;if(c.success){this.addAttach(c.info.number,c.info.name,c.info.type,c.info.size)}else{this.button_pressed=false}if(DIMP.conf_compose.attach_limit!=-1&&$("attach_list").childElements().size()>DIMP.conf_compose.attach_limit){$("upload").writeAttribute("disabled",false);a=new Element("DIV",[DIMP.text_compose.attachment_limit])}else{a=new Element("INPUT",{type:"file",name:"file_1"});a.observe("change",this.uploadAttachment.bind(this))}$("upload_wait").replace(a.writeAttribute("id","upload"));this.resizeMsgArea();break}}else{this.button_pressed=false}$("compose").setStyle({cursor:null});if(!this.button_pressed){if(this.sbtext){$("send_button").setText(this.sbtext)}if(this.dbtext){$("draft_button").setText(this.dbtext)}this.dbtext=this.sbtext=null}DimpCore.showNotifications(b.msgs)},toggleHtmlEditor:function(a){if(!DIMP.conf_compose.rte_avail){return}a=a||false;if(DIMP.SpellCheckerObject){DIMP.SpellCheckerObject.resume()}var c;if(this.editor_on){this.editor_on=false;c=FCKeditorAPI.GetInstance("message").GetHTML();$("messageParent").childElements().invoke("hide");$("message").show();DimpCore.doAction("Html2Text",{text:c},null,this.setMessageText.bind(this),{asynchronous:false})}else{this.editor_on=true;if(!a){DimpCore.doAction("Text2Html",{text:$F("message")},null,this.setMessageText.bind(this),{asynchronous:false})}oFCKeditor.Height=this.getMsgAreaHeight();try{FCKeditorAPI.GetInstance("message").SetHTML($F("message"));$("messageParent").childElements().invoke("show");$("message").hide()}catch(b){this._RTELoading("show");FCKeditor_OnComplete=this._RTELoading.curry("hide");oFCKeditor.ReplaceTextarea()}}$("htmlcheckbox").checked=this.editor_on;$("html").setValue(this.editor_on?1:0)},_RTELoading:function(b){var c,a;if(!$("rteloading")){a=new Element("DIV",{id:"rteloading"}).clonePosition($("messageParent"));$(document.body).insert(a);c=a.viewportOffset();$(document.body).insert(new Element("SPAN",{id:"rteloadingtxt"}).setStyle({top:(c.top+15)+"px",left:(c.left+15)+"px"}).insert(DIMP.text.loading))}$("rteloading","rteloadingtxt").invoke(b)},toggleHtmlCheckbox:function(){if(!this.editor_on||window.confirm(DIMP.text_compose.toggle_html)){this.toggleHtmlEditor()}},getMsgAreaHeight:function(){return document.viewport.getHeight()-$("messageParent").cumulativeOffset()[1]-this.mp_padding},initializeSpellChecker:function(){if(!DIMP.conf_compose.rte_avail){return}if(typeof DIMP.SpellCheckerObject!="object"){this.initializeSpellChecker.bind(this).defer();return}DIMP.SpellCheckerObject.onBeforeSpellCheck=function(){if(!this.editor_on){return}DIMP.SpellCheckerObject.htmlAreaParent="messageParent";DIMP.SpellCheckerObject.htmlArea=$("message").adjacent("iframe[id*=message]").first();$("message").setValue(FCKeditorAPI.GetInstance("message").GetHTML());this.textarea_ready=false}.bind(this);DIMP.SpellCheckerObject.onAfterSpellCheck=function(){if(!this.editor_on){return}DIMP.SpellCheckerObject.htmlArea=DIMP.SpellCheckerObject.htmlAreaParent=null;var a=FCKeditorAPI.GetInstance("message");a.SetHTML($F("message"));a.Events.AttachEvent("OnAfterSetHTML",function(){this.textarea_ready=true}.bind(this))}.bind(this)},setMessageText:function(b){var a=$("message");if(!a){$("messageParent").insert(new Element("TEXTAREA",{id:"message",name:"message",style:"width:100%;"}).insert(b.response.text))}else{a.setValue(b.response.text)}if(!this.editor_on){this.resizeMsgArea()}},fillForm:function(g,h,b,e){if(!this.resizeto){this.fillForm.bind(this,g,h,b,e).defer();return}var a,d,c=this.get_identity($F("last_identity")),f=$("message");if(!this.last_msg.empty()&&this.last_msg!=$F(f).replace(/\r/g,"")&&!window.confirm(DIMP.text_compose.fillform)){return}if(DIMP.conf_compose.auto_save_interval_val&&!this.auto_save_interval){this.auto_save_interval=new PeriodicalExecuter(function(){var i;if(this.editor_on){i=FCKeditorAPI.GetInstance("message").GetHTML()}else{i=$F(f)}i=i.replace(/\r/g,"");if(!i.empty()&&this.last_msg!=i){this.uniqueSubmit("auto_save_draft");this.last_msg=i}}.bind(this),DIMP.conf_compose.auto_save_interval_val*60)}if(this.editor_on){d=FCKeditorAPI.GetInstance("message");d.SetHTML(g);this.last_msg=d.GetHTML().replace(/\r/g,"")}else{f.setValue(g);this.setCursorPosition(f);this.last_msg=$F(f).replace(/\r/g,"")}$("to").setValue(h.to);this.resizeto.resizeNeeded();if(h.cc){$("cc").setValue(h.cc);this.resizecc.resizeNeeded()}if(DIMP.conf_compose.cc){this.toggleCC("cc")}if(h.bcc){$("bcc").setValue(h.bcc);this.resizebcc.resizeNeeded()}if(c.id[6]){a=$F("bcc");if(a){a+=", "}$("bcc").setValue(a+c.id[6])}if(DIMP.conf_compose.bcc){this.toggleCC("bcc")}$("subject").setValue(h.subject);$("in_reply_to").setValue(h.in_reply_to);$("references").setValue(h.references);$("reply_type").setValue(h.replytype);Field.focus(b||"to");this.resizeMsgArea();if(DIMP.conf_compose.show_editor){if(!this.editor_on){this.toggleHtmlEditor(e||false)}if(b=="message"){this.focusEditor()}}},focusEditor:function(){try{FCKeditorAPI.GetInstance("message").Focus()}catch(a){this.focusEditor.bind(this).defer()}},addAttach:function(g,b,e,c){var d=new Element("SPAN").insert(b),f=new Element("DIV").insert(d).insert(" ["+e+"] ("+c+" KB) "),a=new Element("INPUT",{type:"button",atc_id:g,value:DIMP.text_compose.remove});f.insert(a);$("attach_list").insert(f);this.resizeMsgArea()},removeAttach:function(b){var a=[];b.each(function(c){c=$(c);a.push(c.down("INPUT").readAttribute("atc_id"));DimpCore.addGC(c.childElements());c.remove()});DimpCore.doAction("DeleteAttach",{atc_indices:a,imp_compose:$F("composeCache")});this.resizeMsgArea()},resizeMsgArea:function(){var a,b,d=document.documentElement,c=$("message");if(!DimpCore.window_load){this.resizeMsgArea.bind(this).defer();return}if(this.editor_on){a=$("messageParent").select("iframe").last();if(a){a.setStyle({height:this.getMsgAreaHeight()+"px"})}else{this.resizeMsgArea.bind(this).defer()}return}this.mp_padding=$("messageParent").getHeight()-c.getHeight();if(!this.row_height){a=$(c.cloneNode(false)).writeAttribute({id:null,name:null}).setStyle({visibility:"hidden"});$(document.body).insert(a);a.writeAttribute("rows",1);this.row_height=a.getHeight();a.writeAttribute("rows",2);this.row_height=a.getHeight()-this.row_height;a.remove()}b=parseInt(this.getMsgAreaHeight()/this.row_height);c.writeAttribute({rows:b,disabled:false});if(d.scrollHeight-d.clientHeight){c.writeAttribute({rows:b-1})}$("composeloading").hide()},uploadAttachment:function(){var a=$("upload");$("submit_frame").observe("load",this.attachmentComplete.bind(this));this.uniqueSubmit("add_attachment");a.stopObserving("change").replace(new Element("DIV",{id:"upload_wait"}).insert(DIMP.text_compose.uploading+" "+$F(a)))},attachmentComplete:function(){var a=$("submit_frame"),b=a.contentDocument||a.contentWindow.document;a.stopObserving("load");DimpCore.doActionComplete({responseJSON:b.body.innerHTML.evalJSON(true)},this.uniqueSubmitCallback.bind(this))},toggleCC:function(a){$("send"+a).show();$("toggle"+a).up().hide()},setCursorPosition:function(b){var c,a;switch(DIMP.conf_compose.compose_cursor){case"top":c=0;$("message").setValue("\n"+$F("message"));break;case"bottom":c=$F("message").length;break;case"sig":c=$F("message").replace(/\r\n/g,"\n").lastIndexOf(this.get_identity($F("last_identity")).sig)-1;break;default:return}if(b.setSelectionRange){Field.focus(b);b.setSelectionRange(c,c)}else{if(b.createTextRange){a=b.createTextRange();a.collapse(true);a.moveStart("character",c);a.moveEnd("character",0);Field.select(a);a.scrollIntoView(true)}}},openAddressbook:function(){window.open(DIMP.conf_compose.abook_url,"contacts","toolbar=no,location=no,status=no,scrollbars=yes,resizable=yes,width=550,height=300,left=100,top=100")},_clickHandler:function(c){if(c.isRightClick()){return}var a=c.element(),d,b;while(Object.isElement(a)){d=a.readAttribute("id");switch(d){case"togglebcc":case"togglecc":this.toggleCC(d.substring(6));this.resizeMsgArea();break;case"compose_close":this.confirmCancel();break;case"draft_button":case"send_button":this.uniqueSubmit(d=="send_button"?"send_message":"save_draft");break;case"htmlcheckbox":this.toggleHtmlCheckbox();break}a=a.up()}}},ResizeTextArea=Class.create({maxRows:5,initialize:function(c,b){this.field=$(c);this.defaultRows=Math.max(this.field.readAttribute("rows"),1);this.onResize=b;var a=this.resizeNeeded.bindAsEventListener(this);this.field.observe("mousedown",a).observe("keyup",a);this.resizeNeeded()},resizeNeeded:function(){var a=$F(this.field).split("\n"),c=this.field.readAttribute("cols"),b=a.size(),d=this.field.readAttribute("rows");a.each(function(e){if(e.length>=c){b+=Math.floor(e.length/c)}});if(b!=d){this.field.writeAttribute("rows",(b>d)?Math.min(b,this.maxRows):Math.max(this.defaultRows,b));if(this.onResize){this.onResize()}}}});document.observe("dom:loaded",function(){var b,a=DimpCompose,c=a.resizeMsgArea.bind(a);a.resizeMsgArea();a.initializeSpellChecker();$("upload").observe("change",a.uploadAttachment.bind(a));a.resizeto=new ResizeTextArea("to",c);a.resizecc=new ResizeTextArea("cc",c);a.resizebcc=new ResizeTextArea("bcc",c);if(Prototype.Browser.WebKit){$("submit_frame").writeAttribute({position:"absolute",width:"1px",height:"1px"}).setStyle({left:"-999px"}).show()}document.observe("click",a._clickHandler.bindAsEventListener(a));$("compose").observe("submit",Event.stop);$("identity").observe("change",a.change_identity.bind(a));Event.observe(window,"resize",c)});
\ No newline at end of file
+var DimpCompose={last_msg:"",textarea_ready:true,confirmCancel:function(){if(window.confirm(DIMP.text_compose.cancel)){if(DIMP.conf_compose.auto_save_interval_val){DimpCore.doAction("DeleteDraft",{index:$F("index")})}return this._closeCompose()}},_closeCompose:function(){if(DIMP.conf_compose.qreply){this.closeQReply()}else{if(DIMP.baseWindow||DIMP.conf_compose.popup){DimpCore.closePopup()}else{DimpCore.redirect(DIMP.conf.URI_DIMP_INBOX)}}},closeQReply:function(){var a=$("attach_list").childElements();this.last_msg="";if(a.size()){this.removeAttach(a)}$("draft_index","composeCache").invoke("setValue","");$("qreply","sendcc","sendbcc").invoke("hide");[$("msgData"),$("togglecc").up(),$("togglebcc").up()].invoke("show");if(this.editor_on){this.toggleHtmlEditor()}$("compose").reset();if(this.auto_save_interval){this.auto_save_interval.stop()}},change_identity:function(){var e,b,g,f,a=$F("identity"),i=this.get_identity($F("last_identity")),h=$("message"),d=this.get_identity(a),c=$("save_sent_mail");$("sent_mail_folder_label").setText(d.id[5]);$("bcc").setValue(d.id[6]);if(c){c.writeAttribute("checked",d.id[4])}if(this.editor_on){b=FCKeditorAPI.GetInstance("message").GetHTML().replace(/\r\n/g,"\n");e="
";g=""+d.sig.replace(/^ ?
\n/,"").replace(/ +/g," ")+"
";b=b.replace(/\s*[\s\S]*?\s*<\/p>/,e)}else{b=$F(h).replace(/\r\n/g,"\n");e=i.sig;g=d.sig}f=(i.id[2])?b.indexOf(e):b.lastIndexOf(e);if(f!=-1){if(d.id[2]==i.id[2]){b=b.substring(0,f)+g+b.substring(f+e.length,b.length)}else{if(d.id[2]){b=g+b.substring(0,f)+b.substring(f+e.length,b.length)}else{b=b.substring(0,f)+b.substring(f+e.length,b.length)+g}}b=b.replace(/\r\n/g,"\n").replace(/\n/g,"\r\n");if(this.editor_on){FCKeditorAPI.GetInstance("message").SetHTML(b)}else{h.setValue(b)}$("last_identity").setValue(a)}},get_identity:function(b,a){a=Object.isUndefined(a)?this.editor_on:a;return{id:DIMP.conf_compose.identities[b],sig:DIMP.conf_compose.identities[b][(a?1:0)].replace(/^\n/,"")}},uniqueSubmit:function(b){var a,d,f,e=$("compose");if(DIMP.SpellCheckerObject){DIMP.SpellCheckerObject.resume();if(!this.textarea_ready){this.uniqueSubmit.bind(this,b).defer();return}}e.setStyle({cursor:"wait"});if(b=="send_message"||b=="save_draft"){this.button_pressed=true;switch(b){case"send_message":if(!this.sbtext){f=$("send_button");this.sbtext=f.getText();f.setText(DIMP.text_compose.sending)}break;case"save_draft":if(!this.dbtext){a=$("draft_button");this.dbtext=a.getText();a.setText(DIMP.text_compose.saving)}break}if(this.uploading){(function(){if(this.button_pressed){this.uniqueSubmit(b)}}).bind(this).delay(0.25);return}}$("action").setValue(b);if(b=="add_attachment"){this.uploading=true;e.submit()}else{if(this.editor_on){FCKeditorAPI.GetInstance("message").UpdateLinkedField()}d=e.serialize(true);if(!DIMP.baseWindow){d.nonotify=true}DimpCore.doAction("*"+DIMP.conf.compose_url,d,null,this.uniqueSubmitCallback.bind(this))}},uniqueSubmitCallback:function(b){var a,c=b.response;if(!c){return}if(c.imp_compose){$("composeCache").setValue(c.imp_compose)}if(c.success||c.action=="add_attachment"){switch(c.action){case"auto_save_draft":this.button_pressed=false;$("draft_index").setValue(c.draft_index);break;case"save_draft":this.button_pressed=false;if(DIMP.baseWindow){DIMP.baseWindow.DimpBase.pollFolders();DIMP.baseWindow.DimpCore.showNotifications(b.msgs)}if(DIMP.conf_compose.close_draft){return this._closeCompose()}break;case"send_message":this.button_pressed=false;if(DIMP.baseWindow){switch(c.reply_type){case"reply":DIMP.baseWindow.DimpBase.flag("answered",c.index,c.reply_folder);break;case"forward":DIMP.baseWindow.DimpBase.flag("forwarded",c.index,c.reply_folder);break}if(c.folder){DIMP.baseWindow.DimpBase.createFolder(c.folder)}if(c.draft_delete){DIMP.baseWindow.DimpBase.pollFolders()}DIMP.baseWindow.DimpCore.showNotifications(b.msgs)}return this._closeCompose();case"add_attachment":this.uploading=false;if(c.success){this.addAttach(c.info.number,c.info.name,c.info.type,c.info.size)}else{this.button_pressed=false}if(DIMP.conf_compose.attach_limit!=-1&&$("attach_list").childElements().size()>DIMP.conf_compose.attach_limit){$("upload").writeAttribute("disabled",false);a=new Element("DIV",[DIMP.text_compose.attachment_limit])}else{a=new Element("INPUT",{type:"file",name:"file_1"});a.observe("change",this.uploadAttachment.bind(this))}$("upload_wait").replace(a.writeAttribute("id","upload"));this.resizeMsgArea();break}}else{this.button_pressed=false}$("compose").setStyle({cursor:null});if(!this.button_pressed){if(this.sbtext){$("send_button").setText(this.sbtext)}if(this.dbtext){$("draft_button").setText(this.dbtext)}this.dbtext=this.sbtext=null}DimpCore.showNotifications(b.msgs)},toggleHtmlEditor:function(a){if(!DIMP.conf_compose.rte_avail){return}a=a||false;if(DIMP.SpellCheckerObject){DIMP.SpellCheckerObject.resume()}var c;if(this.editor_on){this.editor_on=false;c=FCKeditorAPI.GetInstance("message").GetHTML();$("messageParent").childElements().invoke("hide");$("message").show();DimpCore.doAction("Html2Text",{text:c},null,this.setMessageText.bind(this),{asynchronous:false})}else{this.editor_on=true;if(!a){DimpCore.doAction("Text2Html",{text:$F("message")},null,this.setMessageText.bind(this),{asynchronous:false})}oFCKeditor.Height=this.getMsgAreaHeight();try{FCKeditorAPI.GetInstance("message").SetHTML($F("message"));$("messageParent").childElements().invoke("show");$("message").hide()}catch(b){this._RTELoading("show");FCKeditor_OnComplete=this._RTELoading.curry("hide");oFCKeditor.ReplaceTextarea()}}$("htmlcheckbox").checked=this.editor_on;$("html").setValue(this.editor_on?1:0)},_RTELoading:function(b){var c,a;if(!$("rteloading")){a=new Element("DIV",{id:"rteloading"}).clonePosition($("messageParent"));$(document.body).insert(a);c=a.viewportOffset();$(document.body).insert(new Element("SPAN",{id:"rteloadingtxt"}).setStyle({top:(c.top+15)+"px",left:(c.left+15)+"px"}).insert(DIMP.text.loading))}$("rteloading","rteloadingtxt").invoke(b)},toggleHtmlCheckbox:function(){if(!this.editor_on||window.confirm(DIMP.text_compose.toggle_html)){this.toggleHtmlEditor()}},getMsgAreaHeight:function(){return document.viewport.getHeight()-$("messageParent").cumulativeOffset()[1]-this.mp_padding},initializeSpellChecker:function(){if(!DIMP.conf_compose.rte_avail){return}if(typeof DIMP.SpellCheckerObject!="object"){this.initializeSpellChecker.bind(this).defer();return}DIMP.SpellCheckerObject.onBeforeSpellCheck=function(){if(!this.editor_on){return}DIMP.SpellCheckerObject.htmlAreaParent="messageParent";DIMP.SpellCheckerObject.htmlArea=$("message").adjacent("iframe[id*=message]").first();$("message").setValue(FCKeditorAPI.GetInstance("message").GetHTML());this.textarea_ready=false}.bind(this);DIMP.SpellCheckerObject.onAfterSpellCheck=function(){if(!this.editor_on){return}DIMP.SpellCheckerObject.htmlArea=DIMP.SpellCheckerObject.htmlAreaParent=null;var a=FCKeditorAPI.GetInstance("message");a.SetHTML($F("message"));a.Events.AttachEvent("OnAfterSetHTML",function(){this.textarea_ready=true}.bind(this))}.bind(this)},setMessageText:function(b){var a=$("message");if(!a){$("messageParent").insert(new Element("TEXTAREA",{id:"message",name:"message",style:"width:100%;"}).insert(b.response.text))}else{a.setValue(b.response.text)}if(!this.editor_on){this.resizeMsgArea()}},fillForm:function(g,h,b,e){if(!this.resizeto){this.fillForm.bind(this,g,h,b,e).defer();return}var a,d,c=this.get_identity($F("last_identity")),f=$("message");if(!this.last_msg.empty()&&this.last_msg!=$F(f).replace(/\r/g,"")&&!window.confirm(DIMP.text_compose.fillform)){return}if(DIMP.conf_compose.auto_save_interval_val&&!this.auto_save_interval){this.auto_save_interval=new PeriodicalExecuter(function(){var i;if(this.editor_on){i=FCKeditorAPI.GetInstance("message").GetHTML()}else{i=$F(f)}i=i.replace(/\r/g,"");if(!i.empty()&&this.last_msg!=i){this.uniqueSubmit("auto_save_draft");this.last_msg=i}}.bind(this),DIMP.conf_compose.auto_save_interval_val*60)}if(this.editor_on){d=FCKeditorAPI.GetInstance("message");d.SetHTML(g);this.last_msg=d.GetHTML().replace(/\r/g,"")}else{f.setValue(g);this.setCursorPosition(f);this.last_msg=$F(f).replace(/\r/g,"")}$("to").setValue(h.to);this.resizeto.resizeNeeded();if(h.cc){$("cc").setValue(h.cc);this.resizecc.resizeNeeded()}if(DIMP.conf_compose.cc){this.toggleCC("cc")}if(h.bcc){$("bcc").setValue(h.bcc);this.resizebcc.resizeNeeded()}if(c.id[6]){a=$F("bcc");if(a){a+=", "}$("bcc").setValue(a+c.id[6])}if(DIMP.conf_compose.bcc){this.toggleCC("bcc")}$("subject").setValue(h.subject);$("in_reply_to").setValue(h.in_reply_to);$("references").setValue(h.references);$("reply_type").setValue(h.replytype);Field.focus(b||"to");this.resizeMsgArea();if(DIMP.conf_compose.show_editor){if(!this.editor_on){this.toggleHtmlEditor(e||false)}if(b=="message"){this.focusEditor()}}},focusEditor:function(){try{FCKeditorAPI.GetInstance("message").Focus()}catch(a){this.focusEditor.bind(this).defer()}},addAttach:function(g,b,e,c){var d=new Element("SPAN").insert(b),f=new Element("DIV").insert(d).insert(" ["+e+"] ("+c+" KB) "),a=new Element("INPUT",{type:"button",atc_id:g,value:DIMP.text_compose.remove});f.insert(a);$("attach_list").insert(f);if(e!="application/octet-stream"){d.addClassName("attachName")}this.resizeMsgArea()},removeAttach:function(b){var a=[];b.each(function(c){c=$(c);a.push(c.down("INPUT").readAttribute("atc_id"));DimpCore.addGC(c.childElements());c.remove()});DimpCore.doAction("DeleteAttach",{atc_indices:a,imp_compose:$F("composeCache")});this.resizeMsgArea()},resizeMsgArea:function(){var a,b,d=document.documentElement,c=$("message");if(!DimpCore.window_load){this.resizeMsgArea.bind(this).defer();return}if(this.editor_on){a=$("messageParent").select("iframe").last();if(a){a.setStyle({height:this.getMsgAreaHeight()+"px"})}else{this.resizeMsgArea.bind(this).defer()}return}this.mp_padding=$("messageParent").getHeight()-c.getHeight();if(!this.row_height){a=$(c.cloneNode(false)).writeAttribute({id:null,name:null}).setStyle({visibility:"hidden"});$(document.body).insert(a);a.writeAttribute("rows",1);this.row_height=a.getHeight();a.writeAttribute("rows",2);this.row_height=a.getHeight()-this.row_height;a.remove()}b=parseInt(this.getMsgAreaHeight()/this.row_height);c.writeAttribute({rows:b,disabled:false});if(d.scrollHeight-d.clientHeight){c.writeAttribute({rows:b-1})}$("composeloading").hide()},uploadAttachment:function(){var a=$("upload");$("submit_frame").observe("load",this.attachmentComplete.bind(this));this.uniqueSubmit("add_attachment");a.stopObserving("change").replace(new Element("DIV",{id:"upload_wait"}).insert(DIMP.text_compose.uploading+" "+$F(a)))},attachmentComplete:function(){var a=$("submit_frame"),b=a.contentDocument||a.contentWindow.document;a.stopObserving("load");DimpCore.doActionComplete({responseJSON:b.body.innerHTML.evalJSON(true)},this.uniqueSubmitCallback.bind(this))},toggleCC:function(a){$("send"+a).show();$("toggle"+a).up().hide()},setCursorPosition:function(b){var c,a;switch(DIMP.conf_compose.compose_cursor){case"top":c=0;$("message").setValue("\n"+$F("message"));break;case"bottom":c=$F("message").length;break;case"sig":c=$F("message").replace(/\r\n/g,"\n").lastIndexOf(this.get_identity($F("last_identity")).sig)-1;break;default:return}if(b.setSelectionRange){Field.focus(b);b.setSelectionRange(c,c)}else{if(b.createTextRange){a=b.createTextRange();a.collapse(true);a.moveStart("character",c);a.moveEnd("character",0);Field.select(a);a.scrollIntoView(true)}}},openAddressbook:function(){window.open(DIMP.conf_compose.abook_url,"contacts","toolbar=no,location=no,status=no,scrollbars=yes,resizable=yes,width=550,height=300,left=100,top=100")},_clickHandler:function(b){if(b.isRightClick()){return}var a=orig=b.element(),d,c;while(Object.isElement(a)){c=a.readAttribute("id");switch(c){case"togglebcc":case"togglecc":this.toggleCC(c.substring(6));this.resizeMsgArea();break;case"compose_close":this.confirmCancel();break;case"draft_button":case"send_button":this.uniqueSubmit(c=="send_button"?"send_message":"save_draft");break;case"htmlcheckbox":this.toggleHtmlCheckbox();break;case"sendcc":case"sendbcc":case"sendto":if(orig.match("TD.label SPAN")){this.openAddressbook()}break;case"attach_list":if(orig.match("INPUT")){this.removeAttach([orig.up()])}else{if(orig.match("SPAN.attachName")){d=orig.next().readAttribute("atc_id");DimpCore.popupWindow(DimpCore.addURLParam(DIMP.conf.URI_VIEW,{composeCache:$F("composeCache"),actionID:"compose_attach_preview",id:d}),$F("composeCache")+"|"+d)}}break}a=a.up()}}},ResizeTextArea=Class.create({maxRows:5,initialize:function(c,b){this.field=$(c);this.defaultRows=Math.max(this.field.readAttribute("rows"),1);this.onResize=b;var a=this.resizeNeeded.bindAsEventListener(this);this.field.observe("mousedown",a).observe("keyup",a);this.resizeNeeded()},resizeNeeded:function(){var a=$F(this.field).split("\n"),c=this.field.readAttribute("cols"),b=a.size(),d=this.field.readAttribute("rows");a.each(function(e){if(e.length>=c){b+=Math.floor(e.length/c)}});if(b!=d){this.field.writeAttribute("rows",(b>d)?Math.min(b,this.maxRows):Math.max(this.defaultRows,b));if(this.onResize){this.onResize()}}}});document.observe("dom:loaded",function(){var b,a=DimpCompose,c=a.resizeMsgArea.bind(a);a.resizeMsgArea();a.initializeSpellChecker();$("upload").observe("change",a.uploadAttachment.bind(a));a.resizeto=new ResizeTextArea("to",c);a.resizecc=new ResizeTextArea("cc",c);a.resizebcc=new ResizeTextArea("bcc",c);if(Prototype.Browser.WebKit){$("submit_frame").writeAttribute({position:"absolute",width:"1px",height:"1px"}).setStyle({left:"-999px"}).show()}if(DIMP.conf_compose.abook_url){$("sendto","sendcc","sendbcc").each(function(d){d.down("TD.label SPAN").addClassName("composeAddrbook")})}document.observe("click",a._clickHandler.bindAsEventListener(a));$("compose").observe("submit",Event.stop);$("identity").observe("change",a.change_identity.bind(a));Event.observe(window,"resize",c)});
\ No newline at end of file
diff --git a/imp/js/dragdrop.js b/imp/js/dragdrop.js
index 590a92b29..eb7ee18a3 100644
--- a/imp/js/dragdrop.js
+++ b/imp/js/dragdrop.js
@@ -1 +1 @@
-var DragDrop={Drags:{drags:$H(),register:function(a){if(!this.drags.size()){if(!this.div){this.div=new Element("DIV",{className:a.options.classname}).hide()}$(document.body).insert(this.div)}this.drags.set(a.element.readAttribute("id"),a)},unregister:function(a){if(this.drag==a.element){this.drag.deactivate()}this.drags.unset(a.element.readAttribute("id"));if(!this.drags.size()&&this.div){this.div.remove()}},get_drag:function(a){return this.drags.get(Object.isElement(a)?$(a).readAttribute("id"):a)},activate:function(a){if(this.drag){this.deactivate()}this.drag=a;this.mousemoveE=a._mouseMove.bindAsEventListener(a);this.mouseupE=a._mouseUp.bindAsEventListener(a);document.observe("mousemove",this.mousemoveE);document.observe("mouseup",this.mouseupE)},deactivate:function(){if(this.drag){this.drag=null;document.stopObserving("mousemove",this.mousemoveE);document.stopObserving("mouseup",this.mouseupE)}}},Drops:{drops:$H(),register:function(a){this.drops.set(a.element.readAttribute("id"),a)},unregister:function(a){if(this.drop==a.element){this.drop=null}this.drops.unset(a.element.readAttribute("id"))},get_drop:function(a){return this.drops.get(Object.isElement(a)?$(a).readAttribute("id"):a)}},validDrop:function(a){var b=DragDrop.Drops.drop;return(b&&a&&a!=b.element&&(!b.options.accept.size()||b.options.accept.include(a.tagName)))}},Drag=Class.create({initialize:function(a){this.element=$(a);this.options=Object.extend({caption:"",classname:"drag",constraint:null,ghosting:false,scroll:null,snap:null,threshold:0,onDrag:null,onEnd:null,onStart:null},arguments[1]||{});this.mousedownE=this._mouseDown.bindAsEventListener(this);this.element.observe("mousedown",this.mousedownE);if(this.options.scroll){this.options.scroll=$(this.options.scroll)}DragDrop.Drags.register(this);if(Prototype.Browser.IE){this.element.observe("selectstart",Event.stop)}else{if(Prototype.Browser.Gecko){this.element.setStyle({MozUserSelect:"none"})}}},destroy:function(){this.element.stopObserving("mousedown",this.mousedownE);DragDrop.Drags.unregister(this)},_mouseDown:function(a){$(document.body).setStyle({cursor:"default"});DragDrop.Drags.activate(this);this.move=0;this.wasDragged=false;this.lastcaption=null;if(Object.isFunction(this.options.onStart)){this.options.onStart(this,a)}if(!Prototype.Browser.IE&&!Prototype.Browser.Gecko){a.stop()}},_mouseMove:function(f){var b,c,a,d;if(++this.move<=this.options.threshold){return}this.lastCoord=d=[f.pointerX(),f.pointerY()];if(this.options.ghosting){if(!this.ghost){b=this.element.offsetLeft;c=this.element.offsetTop;this.ghost=$(this.element.cloneNode(true)).writeAttribute("id",null).setOpacity(0.7).clonePosition(this.element,{setLeft:false,setTop:false}).setStyle({left:b+"px",position:"absolute",top:c+"px",zIndex:parseInt(this.element.getStyle("zIndex"))+1});this.element.insert({before:this.ghost});a=this.ghost.viewportOffset();this.ghostOffset=[a[0]-b,a[1]-c]}d[0]-=this.ghostOffset[0];d[1]-=this.ghostOffset[1];switch(this.options.constraint){case"horizontal":d[1]=this.ghost.offsetTop;break;case"vertical":d[0]=this.ghost.offsetLeft;break}if(this.options.snap){d=this.options.snap(d[0],d[1],this.element)}if(this.options.offset){d[0]+=this.options.offset.x;d[1]+=this.options.offset.y}this._setContents(this.ghost,d[0],d[1])}this._onMoveDrag(d,f);if(Object.isFunction(this.options.onDrag)){this.options.onDrag(this,f)}this.wasDragged=true;if(this.options.scroll){this._onMoveScroll()}},_mouseUp:function(a){var b=DragDrop.Drops.drop;this._stopScrolling();if(this.ghost){this.ghost.remove();this.ghost=null}DragDrop.Drags.div.hide();if(DragDrop.validDrop(this.element)&&Object.isFunction(b.options.onDrop)){b.options.onDrop(b.element,this.element,a)}DragDrop.Drags.deactivate();if(Object.isFunction(this.options.onEnd)){this.options.onEnd(this,a)}},_onMoveDrag:function(k,g){var i,j,f,c,h=DragDrop.Drops.drop,a=DragDrop.Drags.div,b=true;if(h&&DragDrop.validDrop(this.element)){c=h.options.caption;if(c){j=Object.isFunction(c)?c(h.element,this.element,g):c;if(j&&h.options.hoverclass){f=h.options.hoverclass}}else{b=false}}if(b){if(!j){i=this.options.caption;j=Object.isFunction(i)?i(this.element):i}if(j!=this.lastcaption){this.lastcaption=j;a.update(j).writeAttribute({className:f||this.options.classname});if(j.empty()){a.hide()}}}if(!this.lastcaption.empty()){this._setContents(a,k[0]+15,k[1]+(this.ghost?(this.ghost.getHeight()+5):5))}},_onMoveScroll:function(){this._stopScrolling();var e,d,b,a=this.options.scroll,c=a.getDimensions();if(a.scrollHeight==c.height){return}e=document.viewport.getScrollOffsets();d=a.viewportOffset(),b=[0,0];d[0]+=a.scrollLeft+e.left;d[2]=d[0]+c.width;if(this.lastCoord[0]>d[2]||this.lastCoord[0]d[3]){b[1]=this.lastCoord[1]-d[3]}if(b[0]||b[1]){this.lastScrolled=new Date();this.scrollInterval=setInterval(this._scroll.bind(this,b[0]*15,b[1]*15),10)}},_stopScrolling:function(){if(this.scrollInterval){clearInterval(this.scrollInterval);this.scrollInterval=null}},_scroll:function(a,e){var c=new Date(),d=c-this.lastScrolled,b=this.options.scroll;this.lastScrolled=c;b.scrollTop+=e*d/1000},_setContents:function(c,a,e){var d=document.viewport.getDimensions(),b=c.getDimensions();if((a+b.width>d.width)||(e+b.height>d.height)){c.hide()}else{c.setStyle({left:a+"px",top:e+"px"}).show()}}}),Drop=Class.create({initialize:function(a){this.element=$(a);this.options=Object.extend({accept:[],caption:"",hoverclass:"",onDrop:null,onOut:null,onOver:null},arguments[1]||{});this.mouseoverE=this._mouseOver.bindAsEventListener(this);this.mouseoutE=this._mouseOut.bindAsEventListener(this);this.element.observe("mouseover",this.mouseoverE);this.element.observe("mouseout",this.mouseoutE);DragDrop.Drops.register(this)},destroy:function(){this.element.stopObserving("mouseover",this.mouseoverE);this.element.stopObserving("mouseout",this.mouseoutE);DragDrop.Drops.unregister(this)},_mouseOver:function(a){if(DragDrop.Drags.drag){DragDrop.Drops.drop=this;if(Object.isFunction(this.options.onOver)){this.options.onOver(this.element,DragDrop.Drags.drag)}}},_mouseOut:function(a){if(Object.isFunction(this.options.onOut)){this.options.onOut(this.element,DragDrop.Drags.drag)}DragDrop.Drops.drop=null}});
\ No newline at end of file
+var DragDrop={Drags:{drags:$H(),register:function(a){if(!this.drags.size()){if(!this.div){this.div=new Element("DIV",{className:a.options.classname}).hide()}$(document.body).insert(this.div)}this.drags.set(a.element.identify(),a)},unregister:function(a){if(this.drag==a.element){this.drag.deactivate()}this.drags.unset(a.element.identify());if(!this.drags.size()&&this.div){this.div.remove()}},get_drag:function(a){return this.drags.get(Object.isElement(a)?$(a).identify():a)},activate:function(a){if(this.drag){this.deactivate()}this.drag=a;this.mousemoveE=a._mouseMove.bindAsEventListener(a);this.mouseupE=a._mouseUp.bindAsEventListener(a);document.observe("mousemove",this.mousemoveE);document.observe("mouseup",this.mouseupE)},deactivate:function(){if(this.drag){this.drag=null;document.stopObserving("mousemove",this.mousemoveE);document.stopObserving("mouseup",this.mouseupE)}}},Drops:{drops:$H(),register:function(a){this.drops.set(a.element.identify(),a)},unregister:function(a){if(this.drop==a.element){this.drop=null}this.drops.unset(a.element.identify())},get_drop:function(a){return this.drops.get(Object.isElement(a)?$(a).identify():a)}},validDrop:function(a){var b=DragDrop.Drops.drop;return(b&&a&&a!=b.element&&(!b.options.accept.size()||b.options.accept.include(a.tagName)))}},Drag=Class.create({initialize:function(a){this.element=$(a);this.options=Object.extend({caption:"",classname:"drag",constraint:null,ghosting:false,scroll:null,snap:null,threshold:0,onDrag:null,onEnd:null,onStart:null},arguments[1]||{});this.mousedownE=this._mouseDown.bindAsEventListener(this);this.element.observe("mousedown",this.mousedownE);if(this.options.scroll){this.options.scroll=$(this.options.scroll)}DragDrop.Drags.register(this);if(Prototype.Browser.IE){this.element.observe("selectstart",Event.stop)}else{if(Prototype.Browser.Gecko){this.element.setStyle({MozUserSelect:"none"})}}},destroy:function(){this.element.stopObserving("mousedown",this.mousedownE);DragDrop.Drags.unregister(this)},_mouseDown:function(a){$(document.body).setStyle({cursor:"default"});DragDrop.Drags.activate(this);this.move=0;this.wasDragged=false;this.lastcaption=null;if(Object.isFunction(this.options.onStart)){this.options.onStart(this,a)}if(!Prototype.Browser.IE&&!Prototype.Browser.Gecko){a.stop()}},_mouseMove:function(f){var b,c,a,d;if(++this.move<=this.options.threshold){return}this.lastCoord=d=[f.pointerX(),f.pointerY()];if(this.options.ghosting){if(!this.ghost){b=this.element.offsetLeft;c=this.element.offsetTop;this.ghost=$(this.element.cloneNode(true)).writeAttribute("id",null).setOpacity(0.7).clonePosition(this.element,{setLeft:false,setTop:false}).setStyle({left:b+"px",position:"absolute",top:c+"px",zIndex:parseInt(this.element.getStyle("zIndex"))+1});this.element.insert({before:this.ghost});a=this.ghost.viewportOffset();this.ghostOffset=[a[0]-b,a[1]-c]}d[0]-=this.ghostOffset[0];d[1]-=this.ghostOffset[1];switch(this.options.constraint){case"horizontal":d[1]=this.ghost.offsetTop;break;case"vertical":d[0]=this.ghost.offsetLeft;break}if(this.options.snap){d=this.options.snap(d[0],d[1],this.element)}if(this.options.offset){d[0]+=this.options.offset.x;d[1]+=this.options.offset.y}this._setContents(this.ghost,d[0],d[1])}this._onMoveDrag(d,f);if(Object.isFunction(this.options.onDrag)){this.options.onDrag(this,f)}this.wasDragged=true;if(this.options.scroll){this._onMoveScroll()}},_mouseUp:function(a){var b=DragDrop.Drops.drop;this._stopScrolling();if(this.ghost){this.ghost.remove();this.ghost=null}DragDrop.Drags.div.hide();if(DragDrop.validDrop(this.element)&&Object.isFunction(b.options.onDrop)){b.options.onDrop(b.element,this.element,a)}DragDrop.Drags.deactivate();if(Object.isFunction(this.options.onEnd)){this.options.onEnd(this,a)}},_onMoveDrag:function(k,g){var i,j,f,c,h=DragDrop.Drops.drop,a=DragDrop.Drags.div,b=true;if(h&&DragDrop.validDrop(this.element)){c=h.options.caption;if(c){j=Object.isFunction(c)?c(h.element,this.element,g):c;if(j&&h.options.hoverclass){f=h.options.hoverclass}}else{b=false}}if(b){if(!j){i=this.options.caption;j=Object.isFunction(i)?i(this.element):i}if(j!=this.lastcaption){this.lastcaption=j;a.update(j).writeAttribute({className:f||this.options.classname});if(j.empty()){a.hide()}}}if(!this.lastcaption.empty()){this._setContents(a,k[0]+15,k[1]+(this.ghost?(this.ghost.getHeight()+5):5))}},_onMoveScroll:function(){this._stopScrolling();var e,d,b,a=this.options.scroll,c=a.getDimensions();if(a.scrollHeight==c.height){return}e=document.viewport.getScrollOffsets();d=a.viewportOffset(),b=[0,0];d[0]+=a.scrollLeft+e.left;d[2]=d[0]+c.width;if(this.lastCoord[0]>d[2]||this.lastCoord[0]d[3]){b[1]=this.lastCoord[1]-d[3]}if(b[0]||b[1]){this.lastScrolled=new Date();this.scrollInterval=setInterval(this._scroll.bind(this,b[0]*15,b[1]*15),10)}},_stopScrolling:function(){if(this.scrollInterval){clearInterval(this.scrollInterval);this.scrollInterval=null}},_scroll:function(a,e){var c=new Date(),d=c-this.lastScrolled,b=this.options.scroll;this.lastScrolled=c;b.scrollTop+=e*d/1000},_setContents:function(c,a,e){var d=document.viewport.getDimensions(),b=c.getDimensions();if((a+b.width>d.width)||(e+b.height>d.height)){c.hide()}else{c.setStyle({left:a+"px",top:e+"px"}).show()}}}),Drop=Class.create({initialize:function(a){this.element=$(a);this.options=Object.extend({accept:[],caption:"",hoverclass:"",onDrop:null,onOut:null,onOver:null},arguments[1]||{});this.mouseoverE=this._mouseOver.bindAsEventListener(this);this.mouseoutE=this._mouseOut.bindAsEventListener(this);this.element.observe("mouseover",this.mouseoverE);this.element.observe("mouseout",this.mouseoutE);DragDrop.Drops.register(this)},destroy:function(){this.element.stopObserving("mouseover",this.mouseoverE);this.element.stopObserving("mouseout",this.mouseoutE);DragDrop.Drops.unregister(this)},_mouseOver:function(a){if(DragDrop.Drags.drag){DragDrop.Drops.drop=this;if(Object.isFunction(this.options.onOver)){this.options.onOver(this.element,DragDrop.Drags.drag)}}},_mouseOut:function(a){if(Object.isFunction(this.options.onOut)){this.options.onOut(this.element,DragDrop.Drags.drag)}DragDrop.Drops.drop=null}});
\ No newline at end of file
diff --git a/imp/js/fullmessage-dimp.js b/imp/js/fullmessage-dimp.js
index fc45f8bbe..c1f48a133 100644
--- a/imp/js/fullmessage-dimp.js
+++ b/imp/js/fullmessage-dimp.js
@@ -1 +1 @@
-var DimpFullmessage={quickreply:function(b){var c,a={};a[$F("folder")]=[$F("index")];$("msgData").hide();$("qreply").show();switch(b){case"reply":case"reply_all":case"reply_list":c="GetReplyData";break;case"forward_all":case"forward_body":case"forward_attachments":c="GetForwardData";break}DimpCore.doAction(c,{imp_compose:$F("composeCache"),type:b},a,this.msgTextCallback.bind(this))},msgTextCallback:function(b){if(!b.response){return}var d=b.response,a=((d.format=="html")&&!DimpCompose.editor_on),e=(d.identity===null)?$F("identity"):d.identity,c=DimpCompose.get_identity(e,a);$("identity","last_identity").invoke("setValue",e);DimpCompose.fillForm((c.id[2])?("\n"+c.sig+d.body):(d.body+"\n"+c.sig),d.header);if(d.fwd_list&&d.fwd_list.length){d.fwd_list.each(function(f){DimpCompose.addAttach(f.number,f.name,f.type,f.size)})}if(a){DimpCompose.toggleHtmlEditor(true)}if(d.imp_compose){$("composeCache").setValue(d.imp_compose)}},_clickHandler:function(b){if(b.isRightClick()){return}var a=b.element(),c;while(Object.isElement(a)){c=a.readAttribute("id");switch(c){case"windowclose":window.close();b.stop();exit;case"forward_link":case"reply_link":this.quickreply(c=="reply_link"?"reply":DIMP.conf.forward_default);b.stop();exit;case"button_deleted":case"button_ham":case"button_spam":DIMP.baseWindow.DimpBase.flag(c.substring(7),DIMP.conf.msg_index,DIMP.conf.msg_folder);window.close();b.stop();exit;case"ctx_replypopdown_reply":case"ctx_replypopdown_reply_all":case"ctx_replypopdown_reply_list":this.quickreply(c.substring(17));break;case"ctx_fwdpopdown_forward_all":case"ctx_fwdpopdown_forward_body":case"ctx_fwdpopdown_forward_attachments":this.quickreply(c.substring(15));break}a=a.up()}}};document.observe("dom:loaded",function(){window.focus();DimpCore.addPopdown("reply_link","replypopdown");DimpCore.addPopdown("forward_link","fwdpopdown");["from","to","cc","bcc","replyTo"].each(function(b){if(DimpFullmessage[b]){var c=$("msgHeader"+b.charAt(0).toUpperCase()+b.substring(1)).down("TD",1);c.replace(DimpCore.buildAddressLinks(DimpFullmessage[b],c.cloneNode(false)))}});document.observe("click",DimpFullmessage.clickHandler.bindAsEventListener(DimpFullmessage))});
\ No newline at end of file
+var DimpFullmessage={quickreply:function(b){var c,a={};a[$F("folder")]=[$F("index")];$("msgData").hide();$("qreply").show();switch(b){case"reply":case"reply_all":case"reply_list":c="GetReplyData";break;case"forward_all":case"forward_body":case"forward_attachments":c="GetForwardData";break}DimpCore.doAction(c,{imp_compose:$F("composeCache"),type:b},a,this.msgTextCallback.bind(this))},msgTextCallback:function(b){if(!b.response){return}var d=b.response,a=((d.format=="html")&&!DimpCompose.editor_on),e=(d.identity===null)?$F("identity"):d.identity,c=DimpCompose.get_identity(e,a);$("identity","last_identity").invoke("setValue",e);DimpCompose.fillForm((c.id[2])?("\n"+c.sig+d.body):(d.body+"\n"+c.sig),d.header);if(d.fwd_list&&d.fwd_list.length){d.fwd_list.each(function(f){DimpCompose.addAttach(f.number,f.name,f.type,f.size)})}if(a){DimpCompose.toggleHtmlEditor(true)}if(d.imp_compose){$("composeCache").setValue(d.imp_compose)}},_clickHandler:function(b){if(b.isRightClick()){return}var a=orig=b.element(),c;while(Object.isElement(a)){c=a.readAttribute("id");switch(c){case"windowclose":window.close();b.stop();return;case"forward_link":case"reply_link":this.quickreply(c=="reply_link"?"reply":DIMP.conf.forward_default);b.stop();return;case"button_deleted":case"button_ham":case"button_spam":DIMP.baseWindow.DimpBase.flag(c.substring(7),DIMP.conf.msg_index,DIMP.conf.msg_folder);window.close();b.stop();return;case"ctx_replypopdown_reply":case"ctx_replypopdown_reply_all":case"ctx_replypopdown_reply_list":this.quickreply(c.substring(17));break;case"ctx_fwdpopdown_forward_all":case"ctx_fwdpopdown_forward_body":case"ctx_fwdpopdown_forward_attachments":this.quickreply(c.substring(15));break;case"qreply":if(orig.match("DIV.headercloseimg IMG")){DimpCompose.confirmCancel()}break}a=a.up()}}};document.observe("dom:loaded",function(){window.focus();DimpCore.addPopdown("reply_link","replypopdown");DimpCore.addPopdown("forward_link","fwdpopdown");["from","to","cc","bcc","replyTo"].each(function(b){if(DimpFullmessage[b]){var c=$("msgHeader"+b.charAt(0).toUpperCase()+b.substring(1)).down("TD",1);c.replace(DimpCore.buildAddressLinks(DimpFullmessage[b],c.cloneNode(false)))}});document.observe("click",DimpFullmessage._clickHandler.bindAsEventListener(DimpFullmessage))});
\ No newline at end of file
--
2.11.0