From 9fc5c7d52a7377763cdb16f7b1f1e0c3816c0164 Mon Sep 17 00:00:00 2001 From: InverseBot Date: Sat, 28 Jul 2018 00:29:47 -0400 Subject: [PATCH] (js/css) Update generated files --- UI/WebServerResources/js/Mailer.services.js | 2 +- UI/WebServerResources/js/Mailer.services.js.map | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/UI/WebServerResources/js/Mailer.services.js b/UI/WebServerResources/js/Mailer.services.js index f3c573ebd..caed392ed 100644 --- a/UI/WebServerResources/js/Mailer.services.js +++ b/UI/WebServerResources/js/Mailer.services.js @@ -1,2 +1,2 @@ -!function(){"use strict";function e(t){"function"!=typeof t.then&&(angular.extend(this,t),_.forEach(this.identities,function(e){e.fullName?e.full=e.fullName+" <"+e.email+">":e.full="<"+e.email+">"}),e.$log.debug("Account: "+JSON.stringify(t,void 0,2)))}e.$factory=["$q","$timeout","$log","sgSettings","Resource","Preferences","Mailbox","Message",function(t,n,s,i,o,a,r,l){return angular.extend(e,{$q:t,$timeout:n,$log:s,$$resource:new o(i.activeUser("folderURL")+"Mail",i.activeUser()),$Preferences:a,$Mailbox:r,$Message:l}),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").factory("Account",e.$factory),e.$findAll=function(t){return t?e.$unwrapCollection(t):e.$$resource.fetch("","mailAccounts").then(function(t){return e.$unwrapCollection(t)})},e.$unwrapCollection=function(t){var n=[];return angular.forEach(t,function(t,s){t.id=s,n[s]=new e(t)}),e.$accounts=n,n},e.prototype.getLength=function(){return this.$flattenMailboxes().length},e.prototype.getItemAtIndex=function(e){var t;return t=this.$flattenMailboxes(),e>=0&&e=0,e.children&&e.children.length>0&&i(e.children)})};if(e.$Preferences.settings.Mail.ExpandedFolders){if(angular.isString(e.$Preferences.settings.Mail.ExpandedFolders))try{s=angular.fromJson(e.$Preferences.settings.Mail.ExpandedFolders)}catch(t){e.$log.warn("Can't parse list of expanded folders. String was: "+e.$Preferences.settings.Mail.ExpandedFolders),s=[]}else s=e.$Preferences.settings.Mail.ExpandedFolders;n.$expanded=s.indexOf("/"+n.id)>=0,s.length>0&&i(n.$mailboxes)}return e.$accounts&&(n.$expanded|=1==e.$accounts.length),n.$flattenMailboxes({reload:!0}),n.$mailboxes}):e.$q.when(this.$mailboxes)},e.prototype.$flattenMailboxes=function(t){var n=[],s=[],i=function(e){_.forEach(e,function(e){n.push(e),(t&&t.all||e.$expanded)&&e.children&&e.children.length>0&&i(e.children)})};return!this.$$flattenMailboxes||t&&(t.reload||t.all)?(i(this.$mailboxes),t&&t.all||(this.$$flattenMailboxes=n,t&&t.saveState&&(_.forEach(e.$accounts,function(e){e.$expanded&&s.push("/"+e.id),_.reduce(e.$$flattenMailboxes,function(e,t){return t.$expanded&&e.push("/"+t.id),e},s)}),e.$$resource.post(null,"saveFoldersState",s)))):n=this.$$flattenMailboxes,n},e.prototype.$getMailboxByType=function(e){var t=function(n){var s=_.find(n,function(t){return t.type==e});return s||angular.forEach(n,function(e){!s&&e.children&&e.children.length>0&&(s=t(e.children))}),s};return t(this.$mailboxes)},e.prototype.$getMailboxByPath=function(e){var t=function(n){var s=_.find(n,function(t){return t.path==e});return s||angular.forEach(n,function(e){!s&&e.children&&e.children.length>0&&(s=t(e.children))}),s};return t(this.$mailboxes)},e.prototype.$newMailbox=function(t,n){var s=this;return e.$$resource.post(t.toString(),"createFolder",{name:n}).then(function(){s.$getMailboxes({reload:!0})})},e.prototype.$certificate=function(){var t=this;return this.security&&this.security.hasCertificate?this.$$certificate?e.$q.when(this.$$certificate):e.$$resource.fetch(this.id.toString(),"certificate").then(function(e){return t.$$certificate=e,e}):e.$q.reject()},e.prototype.$removeCertificate=function(){var t=this;return e.$$resource.fetch(this.id.toString(),"removeCertificate").then(function(){t.security.hasCertificate=!1})},e.prototype.updateQuota=function(e){var t,n;t=Math.round(1e4*e.usedSpace/e.maxQuota)/100,n=l("quotasFormat").formatted(t,Math.round(e.maxQuota/10.24)/100),this.$quota={percent:t,description:n}},e.prototype.$newMessage=function(t){var n=this;return e.$$resource.fetch(this.id.toString(),"compose").then(function(t){e.$log.debug("New message (compose): "+JSON.stringify(t,void 0,2));return new e.$Message(t.accountId,n.$getMailboxByPath(t.mailboxPath),t)}).then(function(s){return e.$$resource.fetch(s.$absolutePath({asDraft:!0}),"edit").then(function(i){var o=e.$Preferences.defaults.AuxiliaryMailAccounts[n.id];return o.security&&(o.security.alwaysSign&&(i.sign=!0),o.security.alwaysEncrypt&&(i.encrypt=!0)),e.$log.debug("New message (edit): "+JSON.stringify(i,void 0,2)),angular.extend(s.editable,i),s.isNew=!0,t&&t.mailto&&(angular.isObject(t.mailto)?angular.extend(s.editable,t.mailto):s.$parseMailto(t.mailto)),s})})},e.prototype.$addDelegate=function(t){var n=this,s=e.$q.defer(),i={uid:t.uid};return!t.uid||_.indexOf(_.map(this.delegates,"uid"),t.uid)>-1?s.resolve():e.$$resource.fetch(this.id.toString(),"addDelegate",i).then(function(){n.delegates.push(t),s.resolve(n.users)},function(e,t){s.reject(l("An error occured please try again."))}),s.promise},e.prototype.$removeDelegate=function(t){var n=this,s={uid:t};return e.$$resource.fetch(this.id.toString(),"removeDelegate",s).then(function(){var e=_.indexOf(_.map(n.delegates,"uid"),t);e>=0&&n.delegates.splice(e,1)})}}(),function(){"use strict";function e(t,n){if(this.$account=t,"function"!=typeof n.then){if(this.init(n),this.name&&!this.path){var s=e.$$resource.create("createFolder",this.name);this.$unwrap(s)}}else this.$unwrap(n)}e.$factory=["$q","$timeout","$log","sgSettings","Resource","Message","Acl","Preferences","sgMailbox_PRELOAD",function(t,n,s,i,o,a,r,l,c){return angular.extend(e,{$q:t,$timeout:n,$log:s,$$resource:new o(i.activeUser("folderURL")+"Mail",i.activeUser()),$Message:a,$$Acl:r,$Preferences:l,$query:{sort:"arrival",asc:0},selectedFolder:null,$refreshTimeout:null,$virtualMode:!1,$virtualPath:!1,PRELOAD:c}),l.settings.Mail.SortingState&&(e.$query.sort=l.settings.Mail.SortingState[0],e.$query.asc=parseInt(l.settings.Mail.SortingState[1])),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMailbox_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("Mailbox",e.$factory),e.$find=function(t,n){var s;return s=n&&n.all?this.$$resource.fetch(t.id.toString(),"viewAll"):this.$$resource.fetch(t.id.toString(),"view"),e.$unwrapCollection(t,s)},e.$unwrapCollection=function(t,n){var s=[],i=function(n,s){for(var o=0;o=0&&e=0},e.prototype.isNoSelect=function(){return this.flags.indexOf("noselect")>=0},e.prototype.getClassName=function(e){return!1},e.prototype.$rename=function(){var t,n,s,i,o=this;return this.name==this.$shadowData.name?e.$q.when():(n=(t=function(e,n){var s=null;return _.find(n,function(e){return e.path==o.path})?s=e:angular.forEach(n,function(e){!s&&e.children&&e.children.length>0&&(s=t(e,e.children))}),s})(null,this.$account.$mailboxes),s=null===n?this.$account.$mailboxes:n.children,i=_.indexOf(_.map(s,"id"),this.id),this.$save().then(function(e){var t,n=o.path;o.init(e),s.splice(i,1),t=_.find(s,function(e){return"folder"==e.type&&e.name.localeCompare(o.name)>0}),i=t?_.indexOf(_.map(s,"id"),t.id):s.length,s.splice(i,0,o);var a=new RegExp("^"+n),r=function(e){_.forEach(e.children,function(e){e.path=e.path.replace(a,o.path),e.id=e.$id(),r(e)})};r(o)}))},e.prototype.$compact=function(){var t=this;return e.$$resource.post(this.id,"expunge").then(function(e){return e.quotas&&t.$account.updateQuota(e.quotas),!0})},e.prototype.$canFolderAs=function(){return"folder"==this.type&&0===this.level},e.prototype.$setFolderAs=function(t){return e.$$resource.post(this.id,"setAs"+t+"Folder")},e.prototype.$emptyTrash=function(){var t=this;return e.$$resource.post(this.id,"emptyTrash").then(function(e){t.$messages=[],t.uidsMap={},t.unseenCount=0,angular.isDefined(t.children)&&t.children.length&&t.$account.$getMailboxes({reload:!0}),e.quotas&&t.$account.updateQuota(e.quotas)})},e.prototype.$markAsRead=function(){var t=this;return e.$$resource.post(this.id,"markRead").then(function(){t.unseenCount=0,_.forEach(t.$messages,function(e){e.isread=!0})})},e.prototype.$flagMessages=function(t,n,s){var i={msgUIDs:_.map(t,"uid"),flags:n,operation:s};return e.$$resource.post(this.id,"addOrRemoveLabel",i).then(function(){return t})},e.prototype.saveSelectedMessages=function(){var t,n;return t=_.filter(this.$messages,function(e){return e.selected}),{uids:n=_.map(t,"uid")},{filename:l("Saved Messages.zip")},e.$$resource.download(this.id,"saveMessages",{uids:n})},e.prototype.exportFolder=function(){var t;return t={filename:this.name+".zip"},e.$$resource.open(this.id,"exportFolder",null,t)},e.prototype.$delete=function(t){var n=this;return e.$$resource.post(this.id,"delete",t).then(function(){return n.$account.$getMailboxes({reload:!0}),!0})},e.prototype.$_deleteMessages=function(e,t){var n,s=this,i=this.$messages.length;return n=_.filter(t,function(e,t){return!e.isread}),this.unseenCount-=n.length,_.forEachRight(this.$messages,function(t,n){var o=_.findIndex(e,function(e){return t.uid==e});o>-1?(e.splice(o,1),delete s.uidsMap[t.uid],t.uid==s.selectedMessage&&delete s.selectedMessage,s.$messages.splice(n,1),nt.uids.length-1)&&(n.$topIndex=0),n.init(t),n.uids&&(e.$log.debug("unwrapping "+n.uids.length+" messages"),a=_.invokeMap(n.headers[0],"toLowerCase"),n.headers.splice(0,1),n.threaded&&(o=n.uids[0],n.uids.splice(0,1)),_.reduce(n.uids,function(t,s,a){var r,l;return r=n.threaded?_.zipObject(o,s):{uid:s.toString()},n.uidsMap[r.uid]=a,(l=new e.$Message(n.$account.id,n,r,!0)).selected=i.indexOf(l.uid)>-1,t.push(l),t},n.$messages),_.forEach(n.headers,function(e){var t=_.zipObject(a,e),s=n.uidsMap[t.uid.toString()];n.$messages[s].init(t)})),e.$log.debug("mailbox "+n.id+" ready"),n.$isLoading=!1,s.resolve(n.$messages)})},function(e){angular.extend(n,e),n.isError=!0,n.$isLoading=!1,s.reject()}),s.promise},e.prototype.$unwrapHeaders=function(t){var n=this;t.then(function(t){e.$timeout(function(){var e,s;t.length>0&&(e=_.invokeMap(t[0],"toLowerCase"),t.splice(0,1),_.forEach(t,function(t){t=_.zipObject(e,t),s=n.uidsMap[t.uid.toString()],angular.isDefined(s)&&n.$messages[s].init(t)}))})})},e.prototype.$updateSubscribe=function(){var t=this.subscribed?"subscribe":"unsubscribe";e.$$resource.post(this.id,t)}}(),function(){"use strict";function e(e,t,n,s){this.accountId=e,this.$mailbox=t,this.$hasUnsafeContent=!1,this.$loadUnsafeContent=!1,this.editable={to:[],cc:[],bcc:[]},this.selected=!1,"function"!=typeof n.then?(!angular.isUndefined(s)&&s||this.init(n),this.uid=parseInt(n.uid)):this.$unwrap(n)}e.$factory=["$q","$timeout","$log","sgSettings","sgMessage_STATUS","Resource","Preferences",function(t,n,s,i,o,a,r){return angular.extend(e,{STATUS:o,$q:t,$timeout:n,$log:s,$$resource:new a(i.activeUser("folderURL")+"Mail",i.activeUser()),$Preferences:r,$avatar:angular.bind(r,r.avatar)}),r.defaults.SOGoMailLabelsColors&&(e.$tags=r.defaults.SOGoMailLabelsColors),r.defaults.SOGoMailDisplayRemoteInlineImages&&"always"==r.defaults.SOGoMailDisplayRemoteInlineImages&&(e.$displayRemoteInlineImages=!0),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMessage_STATUS",{NOT_LOADED:0,DELAYED_LOADING:1,LOADING:2,LOADED:3,DELAYED_MS:300}).factory("Message",e.$factory),e.filterTags=function(t,n){var s=new RegExp(t,"i"),i=[];return _.forEach(_.keys(e.$tags),function(t){var o=e.$tags[t];-1!=o[0].search(s)&&(_.includes(n,t)||i.push({name:t,description:o[0],color:o[1]}))}),i},e.prototype.init=function(e){var t=this;angular.extend(this,e),this.$formatFullAddresses(),this.$loadUnsafeContent=!1,_.forEach(this.flags,function(e,n){"$"==e.charAt(0)&&t.flags.splice(n,1,"_"+e)})},e.prototype.$absolutePath=function(t){var n=this,s=this.id;function i(){var e;return(e=_.map(n.$mailbox.path.split("/"),function(e){return"folder"+e.asCSSIdentifier()})).splice(0,0,n.accountId),e.join("/")}return(angular.isUndefined(this.id)||t&&t.nocache)&&(this.id=i()+"/"+this.uid,s=this.id),t&&t.asDraft&&this.draftId&&(s=i()+"/"+this.draftId),t&&t.withResourcePath&&(s=e.$$resource.path(s)),s},e.prototype.$setUID=function(e){var t,n=this.uid||-1,s=this;n!=parseInt(e)&&(this.uid=parseInt(e),this.$absolutePath({nocache:!0}),n>-1?(n=n.toString(),angular.isDefined(this.$mailbox.uidsMap[n])&&(t=this.$mailbox.uidsMap[n],this.$mailbox.uidsMap[e]=t,delete this.$mailbox.uidsMap[n],_.forEach(["from","to","subject"],function(e){s.$mailbox.$messages[t][e]=s[e]}))):this.$mailbox.constructor.selectedFolder&&"draft"==this.$mailbox.constructor.selectedFolder.type&&this.$mailbox.constructor.selectedFolder.$filter())},e.prototype.$formatFullAddresses=function(){var t=this,n=_.map(t.$mailbox.$account.identities,"email");_.forEach(["from","to","cc","bcc","reply-to"],function(s){_.forEach(t[s],function(t){t.name&&t.name!=t.email?(t.full=t.name+" <"+t.email+">",t.name.length<10?t.shortname=t.name:t.name.split(" ").length&&(t.shortname=_.first(_.last(t.name.split(/, */)).split(/ +/)).replace("'",""))):t.email&&(t.full="<"+t.email+">",t.shortname=t.email.split("@")[0]),t.image=e.$avatar(t.email,32),_.indexOf(n,t.email)>=0&&(t.shortname=l("me"))})})},e.prototype.$shortRecipients=function(e){var t=this,n=[],s=0,i=0;return _.forEach(["to","cc","bcc"],function(o){i+=t[o]?t[o].length:0,_.forEach(t[o],function(t,i){se&&n.push(l("and %{0} more...",i-e)),n.join(", ")},e.prototype.$shortAddress=function(e){var t="";return this[e]&&this[e].length>0&&(t=this[e][0].name||this[e][0].email||""),t},e.prototype.allowReplyAll=function(){var e=0;return e=_.reduce(["to","cc"],_.bind(function(e,t){return this[t]?e+this[t].length:e},this),e),!this.isDraft&&e>1},e.prototype.loadUnsafeContent=function(){this.$loadUnsafeContent=!0,delete this.$parts},e.prototype.$content=function(){var t=this,n=[],s=function(i){i.msgclass="msg-attachment-other","UIxMailPartAlternativeViewer"==i.type?s(_.find(i.content,function(e){return i.preferredPart==e.contentType})):angular.isArray(i.content)?("UIxMailPartSignedViewer"==i.type&&1===i["supports-smime"]?t.signed={valid:i.valid,certificate:i.certificates[i.certificates.length-1],message:i.message}:"UIxMailPartEncryptedViewer"==i.type&&(t.encrypted={valid:i.valid},i.valid?t.encrypted.message=l("This message is encrypted"):t.encrypted.message=l("This message can't be decrypted. Please make sure you have uploaded your S/MIME certificate from the mail preferences module.")),_.forEach(i.content,function(e){s(e)})):(angular.isUndefined(i.safeContent)&&(i.safeContent=i.content,t.$hasUnsafeContent|=i.safeContent.indexOf(" unsafe-")>-1),"UIxMailPartHTMLViewer"==i.type?(i.html=!0,t.$loadUnsafeContent||e.$displayRemoteInlineImages?(angular.isUndefined(i.unsafeContent)&&(i.unsafeContent=document.createElement("div"),i.unsafeContent.innerHTML=i.safeContent,angular.forEach(["src","data","classid","background","style"],function(e){var t,n,s,o=i.unsafeContent.querySelectorAll("[unsafe-"+e+"]");for(s=0;s"}),n={to:t},_.forEach(["subject","body"],function(t){var i=new RegExp(t+"=([^&]+)");t="body"==t?"text":t,(s=i.exec(e))&&(n[t]=decodeURIComponent(s[1]))}),_.forEach(["cc","bcc"],function(t){var i=new RegExp(t+"=([^&]+)");(s=i.exec(e))&&(n[t]=_.map(decodeURIComponent(s[1]).split(","),function(e){return"<"+e.trim()+">"}))}),angular.extend(this.editable,n))},e.prototype.$reply=function(){return this.$newDraft("reply")},e.prototype.$replyAll=function(){return this.$newDraft("replyall")},e.prototype.$forward=function(){return this.$newDraft("forward")},e.prototype.$newDraft=function(t){var n=this;return e.$$resource.fetch(this.$absolutePath(),t).then(function(s){var i,o;return e.$log.debug("New "+t+": "+JSON.stringify(s,void 0,2)),i=n.$mailbox.$account.$getMailboxByPath(s.mailboxPath),o=new e(s.accountId,i,s),e.$$resource.fetch(o.$absolutePath({asDraft:!0}),"edit").then(function(s){e.$log.debug("New "+t+": "+JSON.stringify(s,void 0,2)+" original UID: "+n.uid);var i=e.$Preferences.defaults.AuxiliaryMailAccounts[n.$mailbox.$account.id];return i.security&&(i.security.alwaysSign&&(s.sign=!0),i.security.alwaysEncrypt&&(s.encrypt=!0)),angular.extend(o.editable,s),o.origin={message:n,action:t},o})})},e.prototype.$save=function(){var t=this,n=this.editable;return e.$log.debug("save = "+JSON.stringify(n,void 0,2)),e.$$resource.save(this.$absolutePath({asDraft:!0}),n).then(function(n){e.$log.debug("save = "+JSON.stringify(n,void 0,2)),t.$setUID(n.uid),t.$reload(),t.isNew=!1})},e.prototype.$send=function(){var t=this,n=angular.copy(this.editable);return e.$log.debug("send = "+JSON.stringify(n,void 0,2)),e.$$resource.post(this.$absolutePath({asDraft:!0}),"send",n).then(function(n){return"success"==n.status?(angular.isDefined(t.origin)&&(t.origin.action.startsWith("reply")?t.origin.message.isanswered=!0:"forward"==t.origin.action&&(t.origin.message.isforwarded=!0)),n):e.$q.reject(n.data)})},e.prototype.$unwrap=function(t){var n=this;return this.$loaded=e.STATUS.DELAYED_LOADING,e.$timeout(function(){n.$loaded!=e.STATUS.LOADED&&(n.$loaded=e.STATUS.LOADING)},e.STATUS.DELAYED_MS),this.$futureMessageData=t.then(function(t){return 0===n.isread&&(n.isread=!0,n.$mailbox.unseenCount--),e.$timeout(function(){return delete n.$parts,n.$loaded=e.STATUS.LOADED,n.init(t),n})}),this.$futureMessageData},e.prototype.$omit=function(e){var t={},n=e&&e.privateAttributes;return angular.forEach(this,function(e,s){("constructor"!=s&&"$"!=s[0]||n)&&(t[s]=e)}),t},e.prototype.download=function(){var t,n;return t={uids:[this.uid]},n={filename:this.subject+".zip"},e.$$resource.download(this.$mailbox.id,"saveMessages",t,n)},e.prototype.downloadAttachments=function(){var t;return t={filename:l("attachments")+"-"+this.uid+".zip"},e.$$resource.download(this.$absolutePath(),"archiveAttachments",null,t)}}(),function(){"use strict";function e(){this.show=!1,this.message=null,this.elements=[]}e.$factory=["$document","$timeout","$mdPanel","sgHotkeys",function(t,n,s,i){return angular.extend(e,{$document:t,$timeout:n,$mdPanel:s,sgHotkeys:i}),new e}],e.prototype.setMessage=function(e){this.message=e},e.prototype.registerImage=function(e){this.elements.push(e)},e.prototype.registerHotkeys=function(t){this.keys=[e.sgHotkeys.createHotkey({key:"left",description:l("View previous item"),callback:angular.bind(t,t.previousImage)}),e.sgHotkeys.createHotkey({key:"right",description:l("View next item"),callback:angular.bind(t,t.nextImage)})],_.forEach(this.keys,function(t){e.sgHotkeys.registerHotkey(t)})},e.prototype.showGallery=function(t,n){var s=this,i=e.$mdPanel,o=angular.element(this.message.$content()[n].content).find("img")[0].src,a=_.filter(this.message.attachmentAttrs,function(e){return 0===e.mimetype.indexOf("image/")}),r=_.findIndex(a,function(e){return e.url.indexOf(o)>=0});angular.element(e.$document[0].body).addClass("sg-image-gallery-backdrop");var c=i.newPanelPosition().absolute(),u=i.newPanelAnimation().openFrom(t.target).duration(100).withAnimation(i.animation.FADE),d={attachTo:angular.element(document.body),locals:{lastIndex:a.length-1,images:a,selectedIndex:r,selectedImage:a[r]},bindToController:!0,controller:h,controllerAs:"$panelCtrl",position:c,animation:u,targetEvent:t,fullscreen:!0,hasBackdrop:!0,template:['','
',' '," arrow_back"," ",' image','
',' '," file_download"," ","
",'
',' '," navigate_before"," ",' ',' '," navigate_next"," ","
",'
','
',' ',"
","
","
"].join(""),trapFocus:!0,clickOutsideToClose:!0,escapeToClose:!0,focusOnOpen:!0,onOpenComplete:function(){s.show=!0,_.forEach(e.$document.find("sg-image-gallery")[0].getElementsByClassName("sg-image-thumbnail"),function(t){var n=t.children[0];angular.element(n).one("load",function(){n.naturalWidth0&&this.selectImage(this.selectedIndex-1)}}},angular.module("SOGo.MailerUI").factory("ImageGallery",e.$factory)}(),function(){"use strict";function e(e){this.$account=e}e.$factory=["$q","$timeout","$log","sgSettings","Resource","Message","Mailbox","sgMailbox_PRELOAD",function(t,n,s,i,o,a,r,l){return angular.extend(e,{$q:t,$timeout:n,$log:s,$$resource:new o(i.activeUser("folderURL")+"Mail",i.activeUser()),$Message:r,selectedFolder:null,PRELOAD:l}),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMailbox_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("VirtualMailbox",e.$factory),e.$absolutePath=function(e){return[e,"virtual"].join("/")},e.prototype.init=function(e){this.$isLoading=!1,this.$mailboxes=[],this.uidsMap={},angular.extend(this,e),this.id=this.$id()},e.prototype.setMailboxes=function(e){this.$mailboxes=e,_.forEach(this.$mailboxes,function(e){e.$messages=[],e.uidsMap={}})},e.prototype.startSearch=function(t,n){var s=this,i=e.$q.when();this.$isLoading=!0,_.forEach(this.$mailboxes,function(o){i=i.then(function(){if(s.$isLoading)return e.$log.debug("searching mailbox "+o.path),o.$filter({sort:"date",asc:!1,match:t},n)})}),i.finally(function(){s.$isLoading=!1})},e.prototype.stopSearch=function(){e.$log.debug("stopping search..."),this.$isLoading=!1},e.prototype.selectFolder=function(){},e.prototype.resetSelectedMessage=function(){_.forEach(this.$mailboxes,function(e){delete e.selectedMessage})},e.prototype.hasSelectedMessage=function(){return angular.isDefined(_.find(this.$mailboxes,function(e){return angular.isDefined(e.selectedMessage)}))},e.prototype.isSelectedMessage=function(e,t){return angular.isDefined(_.find(this.$mailboxes,function(n){return n.path==t&&n.selectedMessage==e}))},e.prototype.getLength=function(){var e=0;return angular.isDefined(this.$mailboxes)?(_.forEach(this.$mailboxes,function(t){e+=t.$messages.length}),e):e},e.prototype.getItemAtIndex=function(e){var t,n,s,i,o;if(angular.isDefined(this.$mailboxes)&&e>=0)for(t=0,n=0;n0})},e.prototype.$selectedCount=function(){return _.sum(_.invokeMap(this.$mailboxes,"$selectedCount"))},e.prototype.$flagMessages=function(t,n,s){var i={flags:n,operation:s},o=[],a=[];return _.forEach(t,function(t,n){if(t.length>0){var s=_.map(t,"uid");o.push(t);var r=e.$$resource.post(n,"addOrRemoveLabel",_.assign(i,{msgUIDs:s}));a.push(r)}}),e.$q.all(a).then(function(){return _.flatten(o)})},e.prototype.$deleteMessages=function(t){var n=this,s=[];if(_.isArray(t)&&1===t.length){var i=t[0],o=i.$mailbox;return o.$deleteMessages([i]).then(function(e){var t=0;return _.find(n.$mailboxes,function(e){return e.id===o.id||(t+=e.getLength(),!1)}),t+e})}return _.forEach(t,function(e,t){if(e.length>0){var n=e[0].$mailbox.$deleteMessages(e);s.push(n)}}),e.$q.all(s)},e.prototype.$markOrUnMarkMessagesAsJunk=function(t){var n=[];return _.forEach(t,function(e,t){if(e.length>0){var s=e[0].$mailbox.$markOrUnMarkMessagesAsJunk(e);n.push(s)}}),e.$q.all(n)},e.prototype.$copyMessages=function(t,n){var s=[];return _.forEach(t,function(e,t){if(e.length>0){var i=e[0].$mailbox.$copyMessages(e,n);s.push(i)}}),e.$q.all(s)},e.prototype.$moveMessages=function(t,n){var s=[];return _.forEach(t,function(e,t){if(e.length>0){var i=e[0].$mailbox.$moveMessages(e,n);s.push(i)}}),e.$q.all(s)},e.prototype.$comact=function(){return!0}}(),function(){"use strict";e.$inject=["$window","$scope","$timeout","$q","$state","$mdDialog","$mdToast","stateAccounts","stateAccount","stateMailbox","sgHotkeys","encodeUriFilter","sgSettings","sgFocus","Dialog","Preferences","Account","Mailbox"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p,$,b){var v,y=this,M=angular.element(e.document).find("title").attr("sg-default")||"SOGo",x=[];v={subject:"Subject",from:"From",date:"Date",size:"Size",arrival:"Order Received"},this.$onInit=function(){e.$mailboxController=y,this.service=b,this.accounts=r,this.account=c,this.selectedFolder=u,this.messageDialog=null,this.mode={search:!1,multiple:0},(n=x).push(d.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:y.searchMode})),n.push(d.createHotkey({key:l("hotkey_compose"),description:l("Write a new message"),callback:function(e){null===y.messageDialog&&y.newMessage(e)}})),n.push(d.createHotkey({key:l("hotkey_junk"),description:l("Mark the selected messages as junk"),callback:y.markOrUnMarkMessagesAsJunk})),n.push(d.createHotkey({key:"space",description:l("Toggle item"),callback:y.toggleMessageSelection})),n.push(d.createHotkey({key:"shift+space",description:l("Toggle range of items"),callback:y.toggleMessageSelection})),n.push(d.createHotkey({key:"up",description:l("View next item"),callback:w,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"down",description:l("View previous item"),callback:I,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+up",description:l("Add next item to selection"),callback:E,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+down",description:l("Add previous item to selection"),callback:S,preventInClass:["sg-mail-part"]})),_.forEach(["backspace","delete"],function(e){n.push(d.createHotkey({key:e,description:l("Delete selected message or folder"),callback:y.confirmDeleteSelectedMessages}))}),_.forEach(n,function(e){d.registerHotkey(e)});var n;angular.element(e).on("beforeunload",C),t.$on("$destroy",function(){angular.element(e).off("beforeunload",C),_.forEach(x,function(e){d.deregisterHotkey(e)})}),t.$watch(function(){return y.selectedFolder.unseenCount},function(t){var n=M+" - ";t&&(n+="("+t+") "),n+=y.selectedFolder.$displayName,e.document.title=n})};function C(e){return y.selectedFolder.$compact()}this.centerIsClose=function(e){return this.selectedFolder.hasSelectedMessage()&&!!e},this.sort=function(e){if(!e)return v[y.service.$query.sort];y.selectedFolder.$filter({sort:e})},this.sortedBy=function(e){return b.$query.sort==e},this.ascending=function(){return b.$query.asc},this.searchMode=function(e){y.mode.search=!0,f("search"),e&&e.preventDefault()},this.cancelSearch=function(){y.mode.search=!1,y.selectedFolder.$filter().then(function(){y.selectedFolder.selectedMessage&&n(function(){y.selectedFolder.$topIndex=y.selectedFolder.uidsMap[y.selectedFolder.selectedMessage]})})},this.composeWindowEnabled=function(){return p.defaults.SOGoMailComposeWindowEnabled},this.newMessage=function(t,n){var s;null===y.messageDialog&&(n||"popup"==p.defaults.SOGoMailComposeWindow?function(){var t=[g.baseURL(),"UIxMailPopupView#!/Mail",y.account.id,h(h(y.selectedFolder.path)),"new"].join("/"),n=y.selectedFolder.$id()+"/"+Math.random(0,1e3);console.debug(t),e.open(t,n,["width=680","height=520","resizable=1","scrollbars=1","toolbar=0","location=0","directories=0","status=0","menubar=0","copyhistory=0"].join(","))}():(s=y.account.$newMessage(),y.messageDialog=o.show({parent:angular.element(document.body),targetEvent:t,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:y.account,stateMessage:s}}).catch(_.noop).finally(function(){y.messageDialog=null})))};function w(e){var t=y.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t--,y.selectedFolder.$topIndex>0&&y.selectedFolder.$topIndex--):(t=y.selectedFolder.getLength()-1,y.selectedFolder.$topIndex=y.selectedFolder.getLength()),t>-1&&y.selectMessage(y.selectedFolder.getItemAtIndex(t)),e.preventDefault(),t}function I(e){var t=y.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t++,y.selectedFolder.$topIndex=0&&y.toggleMessageSelection(e,y.selectedFolder.$messages[t])}function S(e){var t;y.selectedFolder.hasSelectedMessage()&&(t=I(e))>=0&&y.toggleMessageSelection(e,y.selectedFolder.$messages[t])}this.selectMessage=function(e){b.$virtualMode?i.go("mail.account.virtualMailbox.message",{mailboxId:h(e.$mailbox.path),messageId:e.uid}):i.go("mail.account.mailbox.message",{messageId:e.uid})},this.toggleMessageSelection=function(e,t){var n,s,i,o=y.selectedFolder;if(t||(t=o.$selectedMessage()),!t)return!0;if(t.selected=!t.selected,y.mode.multiple+=t.selected?1:-1,e.shiftKey&&o.$selectedCount()>1){for(s=(n=o.uidsMap[t.uid])-2;s>=0&&!o.$messages[s].selected;)s--;if(s<0)for(s=n+2;s=0&&s0&&(a-=1,s=y.selectedFolder.$messages[a]),t0&&(y.messageDialog=m.confirm(l("Confirmation"),l("Are you sure you want to delete the selected messages?"),{ok:l("Delete")}).then(function(){var e=y.selectedFolder.hasSelectedMessage();y.selectedFolder.$deleteMessages(t).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):F(e,t)},function(n){y.messageDialog=m.confirm(l("Warning"),l("The messages could not be moved to the trash folder. Would you like to delete them immediately?"),{ok:l("Delete")}).then(function(){y.selectedFolder.$deleteMessages(t,{withoutTrash:!0}).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):F(e,t)})})})}).finally(function(){y.messageDialog=null})),e.preventDefault()},this.markOrUnMarkMessagesAsJunk=function(){var e=y.selectedFolder.hasSelectedMessage(),t=y.selectedFolder.$selectedMessages();0===_.size(t)&&e&&(t=[y.selectedFolder.$selectedMessage()]),_.size(t)>0&&y.selectedFolder.$markOrUnMarkMessagesAsJunk(t).then(function(){var n="/"+y.account.id+"/folderINBOX";"junk"!=y.selectedFolder.type&&(n="/"+y.account.$getMailboxByType("junk").id),y.selectedFolder.$moveMessages(t,n).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):F(e,t)})})},this.copySelectedMessages=function(e){var t=y.selectedFolder.$selectedMessages();_.size(t)>0&&y.selectedFolder.$copyMessages(t,"/"+e).then(function(){a.show(a.simple().content(l("%{0} message(s) copied",y.selectedFolder.$selectedCount())).position("top right").hideDelay(2e3))})},this.moveSelectedMessages=function(e){var t=y.selectedFolder.hasSelectedMessage(),n=y.selectedFolder.$selectedMessages(),s=y.selectedFolder.$selectedCount();_.size(n)>0&&y.selectedFolder.$moveMessages(n,"/"+e).then(function(e){a.show(a.simple().content(l("%{0} message(s) moved",s)).position("top right").hideDelay(2e3)),b.$virtualMode?t&&i.go("mail.account.virtualMailbox"):F(t,e)})},this.selectAll=function(){var e=0;_.forEach(A(),function(t){for(var n=0,s=t.$messages.length;n0&&y.selectedFolder.$flagMessages(e,"\\Flagged","add").then(function(e){_.forEach(e,function(e){e.isflagged=!0})})},this.markSelectedMessagesAsUnread=function(){var e=y.selectedFolder.$selectedMessages();_.size(e)>0&&y.selectedFolder.$flagMessages(e,"seen","remove").then(function(e){_.forEach(e,function(e){e.isread&&e.$mailbox.unseenCount++,e.isread=!1})})},this.markSelectedMessagesAsRead=function(){var e=y.selectedFolder.$selectedMessages();_.size(e)>0&&y.selectedFolder.$flagMessages(e,"seen","add").then(function(e){_.forEach(e,function(e){e.isread||e.$mailbox.unseenCount--,e.isread=!0})})}}angular.module("SOGo.MailerUI").controller("MailboxController",e),t.$inject=["$delegate"];function t(e){return e[0].controller.prototype.resetScroll=function(){"messagesList"==this.$element.parent().attr("id")?this.updateSize():this.scrollTo(0)},e}angular.module("material.components.virtualRepeat").decorator("mdVirtualRepeatContainerDirective",t)}(),function(){"use strict";e.$inject=["$scope","$state","$transitions","$timeout","$window","$mdMedia","$mdSidenav","$mdDialog","$mdToast","sgConstant","sgFocus","encodeUriFilter","Dialog","sgSettings","sgHotkeys","Account","Mailbox","VirtualMailbox","User","Preferences","stateAccounts"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p,$,b,v,y,M){var x,C,w=this,I=[];this.$onInit=function(){this.service=$,this.accounts=M,this.currentSearchParam="",this.search={options:{"":"",subject:l("Enter Subject"),from:l("Enter From"),to:l("Enter To"),cc:l("Enter Cc"),body:l("Enter Body")},subfolders:1,match:"AND",params:[]},this.showSubscribedOnly=y.defaults.SOGoMailShowSubscribedFoldersOnly,this.refreshUnseenCount(),t=I,_.forEach(["backspace","delete"],function(e){t.push(m.createHotkey({key:e,description:l("Delete selected message or folder"),callback:function(){$.selectedFolderController&&$.selectedFolder&&$.selectedFolder.$isEditable&&!$.selectedFolder.hasSelectedMessage()&&$.selectedFolderController.confirmDelete($.selectedFolder)}}))}),_.forEach(t,function(e){m.registerHotkey(e)});var t;e.$on("$destroy",function(){_.forEach(I,function(e){m.deregisterHotkey(e)})})};this.hideAdvancedSearch=function(){w.service.$virtualPath=!1,w.service.$virtualMode=!1,x=w.accounts[0],C=w.searchPreviousMailbox,t.go("mail.account.mailbox",{accountId:x.id,mailboxId:h(C.path)})},this.toggleAdvancedSearch=function(){if($.selectedFolder.$isLoading)w.virtualMailbox.stopSearch();else{var e,n=[],s=function(e){_.forEach(e,function(e){e.isNoSelect()||n.push(e),e.children&&e.children.length>0&&s(e.children)})};w.virtualMailbox=new b(w.accounts[0]),$.$virtualMode||(w.searchPreviousMailbox=$.selectedFolder),$.selectedFolder=w.virtualMailbox,$.$virtualMode=!0,$.$virtualPath.length?(e=w.accounts[0].$getMailboxByPath($.$virtualPath),n.push(e),w.search.subfolders&&e.children.length&&s(e.children)):n=_.filter(w.accounts[0].$flattenMailboxes({all:!0}),function(e){return!e.isNoSelect()}),w.virtualMailbox.setMailboxes(n),w.virtualMailbox.startSearch(w.search.match,w.search.params),"mail.account.virtualMailbox"!=t.$current.name&&t.go("mail.account.virtualMailbox",{accountId:w.accounts[0].id})}},this.addSearchParam=function(e){return this.currentSearchParam=e,d("advancedSearch"),!1},this.newSearchParam=function(e){if(e.length&&this.currentSearchParam.length){var t=0,n=this.currentSearchParam;return e.startsWith("!")&&(t=1,e=e.substring(1).trim()),this.currentSearchParam="",{searchBy:n,searchInput:e,negative:t}}},this.toggleAccountState=function(e){e.$expanded=!e.$expanded,e.$flattenMailboxes({reload:!0,saveState:!0})},this.subscribe=function(e){r.show({templateUrl:e.id+"/subscribe",controller:t,controllerAs:"subscriptions",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcAccount:e}}).finally(function(){e.$getMailboxes({reload:!0})}),t.$inject=["$scope","$mdDialog","srcAccount"];function t(e,t,n){var s=this;s.loading=!0,s.filter={name:""},s.account=new p({id:n.id,name:n.name}),s.close=function(){t.hide()},s.account.$getMailboxes({reload:!0,all:!0}).then(function(){s.loading=!1})}},this.showAdvancedSearch=function(){$.$virtualPath="",o(u["gt-md"])||a("left").close()},this.newFolder=function(e){g.prompt(l("New Folder..."),l("Enter the new name of your folder")).then(function(t){e.$newMailbox(e.id,t).then(function(){},function(e,n){g.alert(l('An error occured while creating the mailbox "%{0}".',t),l(e.error))})})},this.delegate=function(e){r.show({templateUrl:e.id+"/delegation",controller:t,controllerAs:"delegate",clickOutsideToClose:!0,escapeToClose:!0,locals:{User:v,account:e}}),t.$inject=["$scope","$mdDialog","User","account"];function t(e,t,n,s){var i=this;i.users=s.delegates,i.account=s,i.userToAdd="",i.searchText="",i.userFilter=function(e){return n.$filter(e,s.delegates)},i.closeModal=function(){t.hide()},i.removeUser=function(e){s.$removeDelegate(e.uid).catch(function(e,t){g.alert(l("Warning"),l("An error occured please try again."))})},i.addUser=function(e){e&&s.$addDelegate(e).then(function(){i.userToAdd="",i.searchText=""},function(e){g.alert(l("Warning"),e)})}}},this.refreshUnseenCount=function(){var e,t=i.unseenCountFolders;_.forEach(w.accounts,function(e){_.includes(t,e.id+"/folderINBOX")||t.push(e.id+"/folderINBOX"),_.forEach(e.$$flattenMailboxes,function(e){angular.isDefined(e.unseenCount)&&!_.includes(t,e.id)&&t.push(e.id)})}),p.$$resource.post("","unseenCount",{mailboxes:t}).then(function(e){_.forEach(w.accounts,function(t){_.forEach(t.$$flattenMailboxes,function(t){e[t.id]&&(t.unseenCount=e[t.id])})})}),(e=y.defaults.SOGoRefreshViewCheck)&&"manually"!=e&&s(w.refreshUnseenCount,1e3*e.timeInterval())},this.isDroppableFolder=function(e,t){return t.id!=e.id&&!t.isNoSelect()},this.dragSelectedMessages=function(e,n,s){var i,o,a,r,u,d;i="/"+n.id,0===(o=e.$selectedMessages()).length&&(o=[e.$selectedMessage()]),a=_.map(o,"uid"),r=e.selectedMessage&&a.indexOf(e.selectedMessage)>=0,"copy"==s?(u=e.$copyMessages(o,i),d=l("%{0} message(s) copied",o.length)):(u=e.$moveMessages(o,i),d=l("%{0} message(s) moved",o.length)),u.then(function(){r&&t.go("mail.account.mailbox"),c.show(c.simple().content(d).position("top right").hideDelay(2e3))})}}angular.module("SOGo.MailerUI").controller("MailboxesController",e)}(),function(){"use strict";e.$inject=["$window","$scope","$state","$mdMedia","$mdDialog","sgConstant","stateAccounts","stateAccount","stateMailbox","stateMessage","sgHotkeys","encodeUriFilter","sgSettings","ImageGallery","sgFocus","Dialog","Preferences","Calendar","Component","Account","Mailbox","Message"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p,$,b,v,y,M,x){var C=this,w=[];this.$onInit=function(){e.$messageController=C,f.setMessage(u),this.$state=n,this.accounts=a,this.account=r,this.mailbox=c,this.message=u,this.service=x,this.tags={searchText:"",selected:""},this.showFlags=u.flags&&u.flags.length>0,this.$showDetailedRecipients=!1,this.showRawSource=!1,(s=w).push(d.createHotkey({key:l("hotkey_reply"),description:l("Reply to the message"),callback:E(angular.bind(C,C.reply))})),s.push(d.createHotkey({key:l("hotkey_replyall"),description:l("Reply to sender and all recipients"),callback:E(angular.bind(C,C.replyAll))})),s.push(d.createHotkey({key:l("hotkey_forward"),description:l("Forward selected message"),callback:E(angular.bind(C,C.forward))})),s.push(d.createHotkey({key:l("hotkey_flag"),description:l("Flagged"),callback:E(angular.bind(u,u.toggleFlag))})),_.forEach(["backspace","delete"],function(e){s.push(d.createHotkey({key:e,callback:E(function(e){0===C.mailbox.$selectedCount()&&C.deleteMessage(),e.preventDefault()})}))}),_.forEach(s,function(e){d.registerHotkey(e)});var s;e.opener&&"$mailboxController"in e.opener?(t.$watchCollection(function(){return C.message.flags},function(e,t){var n;(e||t)&&(n=S()).messageCtrl&&n.messageCtrl.service.$timeout(function(){n.messageCtrl.showFlags=!0,n.messageCtrl.message.flags=e})}),t.$watch(function(){return C.message.isflagged},function(e,t){var n=S();n.mailboxCtrl&&n.mailboxCtrl.service.$timeout(function(){_.find(n.mailboxCtrl.selectedFolder.$messages,{uid:C.message.uid}).isflagged=e})})):t.$watchCollection(function(){return C.message.flags},function(e,t){var n,s,i;(e||t)&&(n=e||[],s=t||[],_.forEach(n,function(e,t){angular.isObject(e)&&(n[t]=e.name)}),n.length>s.length?(i=_.difference(n,s),_.forEach(i,function(e){C.message.addTag(e)})):n.length0&&(t.mailbox.messageDialog=arguments[0]),t.mailbox.messageDialog):null}function E(e){return function(){if(null===I())return e.apply(C,arguments)}}function S(){var t,n,s={};return e.opener&&"$mailboxController"in e.opener&&"selectedFolder"in e.opener.$mailboxController&&e.opener.$mailboxController.selectedFolder.$id()==c.$id()&&(n=e.opener.$mailboxController,s.mailboxCtrl=n,"$messageController"in e.opener&&e.opener.$messageController.message.uid==u.uid&&(t=e.opener.$messageController,s.messageCtrl=t)),s}this.addFlags=function(e){e.stopPropagation(),e.preventDefault(),this.showFlags=!0,m("flags")},this.toggleDetailedRecipients=function(e){this.$showDetailedRecipients=!this.$showDetailedRecipients,e.stopPropagation(),e.preventDefault()},this.filterMailtoLinks=function(e){var t;"A"==e.target.tagName&&"href"in e.target.attributes&&(t=e.target.attributes.href.value,/^mailto:([^\?]+)/.exec(t)&&(delete e.target.attributes.target,this.newMessage(e,t)))},this.deleteMessage=function(){var e,t,i,a,r,l=S();l.messageCtrl?(e=l.mailboxCtrl.selectedFolder,t=l.messageCtrl.message,i=l.messageCtrl.$state):(e=c,t=u,i=n),M.$virtualMode&&(e=M.selectedFolder),e.$deleteMessages([t]).then(function(n){var l=n;if(t=null,angular.isDefined(i)){n>0&&(l-=1,a=e.getItemAtIndex(l)),ne.$lastVisibleIndex&&(e.$topIndex=l-(e.$lastVisibleIndex-e.$topIndex))):i.go("mail.account.mailbox").then(function(){t=null,delete e.selectedMessage})}catch(e){}}C.closePopup()})};function A(e,t){null===I()&&I(i.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:C.account,stateMessage:t}}).catch(_.noop).finally(function(){I(null),C.closePopup()}))}this._showMailEditorInPopup=function(e){return!g.isPopup&&"popup"==$.defaults.SOGoMailComposeWindow&&(this.openInPopup(e),!0)},this.close=function(){var e=M.$virtualMode?"mail.account.virtualMailbox":"mail.account.mailbox";n.go(e).then(function(){C.message=null,delete c.selectedMessage})},this.reply=function(e){this._showMailEditorInPopup("reply")||A(e,this.message.$reply())},this.replyAll=function(e){this._showMailEditorInPopup("replyall")||A(e,this.message.$replyAll())},this.forward=function(e){this._showMailEditorInPopup("forward")||A(e,this.message.$forward())},this.edit=function(e){this._showMailEditorInPopup("edit")||this.message.$editableContent().then(function(){A(e,C.message)})},this.openInPopup=function(t){var n=[g.baseURL(),"UIxMailPopupView#!/Mail",this.message.accountId,h(h(this.message.$mailbox.path)),this.message.uid].join("/"),s=this.message.$absolutePath();t&&(n+="/"+t),e.open(n,s,["width=680","height=520","resizable=1","scrollbars=1","toolbar=0","location=0","directories=0","status=0","menubar=0","copyhistory=0"].join(","))},this.closePopup=function(){e.document.body.classList.contains("popup")&&e.close()},this.newMessage=function(e,t){e.stopPropagation(),e.preventDefault(),this.account.$newMessage({mailto:t}).then(function(t){A(e,t)})},this.toggleRawSource=function(e){this.showRawSource||this.message.$rawSource?this.showRawSource=!this.showRawSource:x.$$resource.post(this.message.id,"viewsource").then(function(e){C.message.$rawSource=e,C.showRawSource=!0})},this.print=function(t){e.print()},this.convertToEvent=function(e){return F(e,"appointment")},this.convertToTask=function(e){return F(e,"task")};function F(e,t){C.message.$plainContent().then(function(n){var s={pid:b.$defaultCalendar(),type:t,summary:n.subject,comment:n.content},o=new v(s),a=[g.activeUser("folderURL"),"Calendar","UIx"+t.capitalize()+"EditorTemplate"].join("/");return i.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:a,controller:"ComponentEditorController",controllerAs:"editor",locals:{stateComponent:o}})})}}angular.module("SOGo.MailerUI").controller("MessageController",e)}(),function(){"use strict";e.$inject=["$scope","$window","$stateParams","$mdConstant","$mdUtil","$mdDialog","$mdToast","FileUploader","stateAccount","stateMessage","encodeUriFilter","$timeout","Dialog","AddressBook","Card","Preferences"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p){var $=this;this.$onInit=function(){$.addRecipient=S,$.autocomplete={to:{},cc:{},bcc:{}},$.autosave=null,$.autosaveDrafts=A,$.cancel=x,$.contactFilter=E,$.isFullscreen=!1,$.hideBcc=0===u.editable.bcc.length,$.hideCc=0===u.editable.cc.length,$.identities=_.uniq(_.map(c.identities,"full")),$.message=u,$.recipientSeparatorKeys=[s.KEY_CODE.ENTER,s.KEY_CODE.TAB,s.KEY_CODE.COMMA,s.KEY_CODE.SEMICOLON],$.removeAttachment=M,$.save=C,$.send=w,$.sendState=!1,$.toggleFullscreen=I,$.uploader=new r({url:$.message.$absolutePath({asDraft:!0,withResourcePath:!0})+"/save",autoUpload:!0,alias:"attachments",removeAfterUpload:!1,onSuccessItem:function(e,t,n,s){$.message.$setUID(t.uid),$.message.$reload({asDraft:!1}),e.inlineUrl=t.lastAttachmentAttrs[0].url},onCancelItem:function(e,t,n,s){$.message.$deleteAttachment(e.file.name),this.removeFromQueue(e)},onErrorItem:function(e,t,n,s){a.show(a.simple().content(l('Error while uploading the file "%{0}":',e.file.name)+" "+(t.message?l(t.message):"")).position("top right").action(l("OK")).hideDelay(!1)),this.removeFromQueue(e)}}),p.defaults.SOGoMailAutoSave&&($.autosave=h($.autosaveDrafts,1e3*p.defaults.SOGoMailAutoSave*60)),$.localeCode=p.defaults.LocaleCode,e.$on("$destroy",function(){$.uploader.destroy()}),"reply"==n.actionName?u.$reply().then(function(e){$.message=e,$.hideCc=!e.editable.cc||0===e.editable.cc.length,$.hideBcc=!e.editable.bcc||0===e.editable.bcc.length,v()}):"replyall"==n.actionName?u.$replyAll().then(function(e){$.message=e,$.hideCc=!e.editable.cc||0===e.editable.cc.length,$.hideBcc=!e.editable.bcc||0===e.editable.bcc.length,v()}):"forward"==n.actionName?u.$forward().then(function(e){$.message=e,v(),y()}):angular.isDefined(u)&&($.message=u,v(),y())};function b(){var e,n={};try{t.opener&&"$mailboxController"in t.opener&&"selectedFolder"in t.opener.$mailboxController&&("draft"==t.opener.$mailboxController.selectedFolder.type?(n.draftMailboxCtrl=t.opener.$mailboxController,"$messageController"in t.opener&&t.opener.$messageController.message.uid==u.uid&&(n.draftMessageCtrl=t.opener.$messageController)):u.origin&&(e=u.origin.message,t.opener.$mailboxController.selectedFolder.$id()==e.$mailbox.$id()&&(n.originMailboxCtrl=t.opener.$mailboxController)))}catch(e){}return n}function v(){$.uploader.url=$.message.$absolutePath({asDraft:!0,withResourcePath:!0})+"/save"}function y(){var e,t,n,s=$.message.editable.attachmentAttrs;if(s)for(e=0;e',' '," {{$ctrl.mailbox.$icon}}"," ",'

',' ',' ',"

",' ',' '," ",' more_vert'].join(""),controller:"sgMailboxListItemController",controllerAs:"$ctrl"}})}(),function(){e.$inject=["$scope","$element","Mailbox"];function e(e,t,n){var s=this;this.$onInit=function(){var t=["uid","isread","isflagged","flags","subject"];this.MailboxService=n,"draft"==n.selectedFolder.type&&t.push("subject"),e.$watch(function(){return s.message?[_.pick(s.message,t)]:null},function(e,t){s.message&&s.onUpdate()},!0)},this.onUpdate=function(){this.message.isread?t.removeClass("unread"):t.addClass("unread"),n.selectedFolder.isSelectedMessage(this.message.uid,this.message.$mailbox.path)?t.addClass("md-default-theme md-accent md-bg md-hue-2"):t.removeClass("md-default-theme md-accent md-bg md-hue-2")},this.setVisibility=function(e,t){t?e.classList.remove("ng-hide"):e.classList.add("ng-hide")}}angular.module("SOGo.MailerUI").controller("sgMessageListItemController",e).directive("sgMessageListItem",function(){return{restrict:"C",scope:{},bindToController:{message:"=sgMessage"},controller:"sgMessageListItemController"}})}(),function(){e.$inject=["$scope","$element","$parse","$state","$mdUtil","$mdToast","Mailbox","Message","encodeUriFilter"];function e(e,t,n,s,i,o,a,r,l){var c=this;this.$postLink=function(){var n,s,o,l;this.parentController=e.parentController,o=this.parentController.onUpdate,l=this.parentController.setVisibility,_.forEach(t.find("div"),function(e){e.classList.contains("sg-tile-content")?n=angular.element(e):e.classList.contains("sg-tile-icons")&&(s=angular.element(e))}),this.priorityIconElement=n.find("md-icon")[0],a.$virtualMode&&(this.mailboxNameElement=n.find("span")[0],this.mailboxNameElement.classList.remove("ng-hide")),this.senderElement=n.find("span")[1],_.forEach(n.find("div"),function(e){e.classList.contains("sg-tile-subject")?c.subjectElement=e:e.classList.contains("sg-tile-size")?c.sizeElement=e:e.classList.contains("sg-tile-date")&&(c.dateElement=e)}),_.forEach(s.find("md-icon"),function(e){"star"==e.textContent?c.flagIconElement=e:"reply"==e.textContent?c.answerIconElement=e:"forward"==e.textContent?c.forwardIconElement=e:"attach_file"==e.textContent&&(c.attachmentIconElement=e)}),this.parentController.onUpdate=function(){var e;c.message=c.parentController.message;var n=i.nodesToArray(t[0].querySelectorAll(".sg-category"));for(_.forEach(n,function(e){t[0].removeChild(e)}),e=0;e');a.css("left",3*e+"px"),a.css("background-color",c.service.$tags[s][1]),t.prepend(a)}}c.mailboxNameElement&&(c.mailboxNameElement.innerHTML=c.message.$mailbox.$displayName),"sent"==c.MailboxService.selectedFolder.type?c.senderElement.innerHTML=c.message.$shortAddress("to").encodeEntities():c.senderElement.innerHTML=c.message.$shortAddress("from").encodeEntities(),c.message.priority&&c.message.priority.level<3?(c.priorityIconElement.classList.remove("ng-hide"),c.message.priority.level<2?c.priorityIconElement.classList.add("md-warn"):c.priorityIconElement.classList.remove("md-warn")):c.priorityIconElement.classList.add("ng-hide"),c.subjectElement.innerHTML=c.message.subject.encodeEntities(),c.sizeElement.innerHTML=c.message.size,c.dateElement.innerHTML=c.message.relativedate,l(c.flagIconElement,c.message.isflagged),l(c.answerIconElement,c.message.isanswered),l(c.forwardIconElement,c.message.isforwarded),l(c.attachmentIconElement,c.message.hasattachment),angular.bind(c.parentController,o)()},this.service=r,this.MailboxService=a}}angular.module("SOGo.MailerUI").controller("sgMessageListItemMainController",e).directive("sgMessageListItemMain",function(){return{restrict:"C",require:"^^sgMessageListItem",scope:{},template:['
','
',"
",' \x3c!-- mailbox --\x3e',' error'," \x3c!-- sender or recipient --\x3e","
",'
\x3c!-- date --\x3e
',"
",'
','
\x3c!-- subject --\x3e
','
\x3c!-- size --\x3e
',"
","
",'
',' star',' reply',' forward',' attach_file',"
",'
',' \x3c!-- message loading progress --\x3e',"
"].join(""),link:function(e,t,n,s){e.parentController=s},controller:"sgMessageListItemMainController",controllerAs:"$ctrl"}})}(),function(){"use strict";e.$inject=["$element","ImageGallery"];function e(e,t){var n=this;this.$postLink=function(){t.registerImage(e),e.on("click",this.showImage)},this.showImage=function(e){"IMG"==e.target.tagName&&t.showGallery(e,n.partIndex)}}angular.module("SOGo.MailerUI").directive("sgZoomableImage",function(){return{restrict:"A",bindToController:{partIndex:"=sgZoomableImage"},controller:e}})}(); +!function(){"use strict";function e(t){"function"!=typeof t.then&&(angular.extend(this,t),_.forEach(this.identities,function(e){e.fullName?e.full=e.fullName+" <"+e.email+">":e.full="<"+e.email+">"}),e.$log.debug("Account: "+JSON.stringify(t,void 0,2)))}e.$factory=["$q","$timeout","$log","sgSettings","Resource","Preferences","Mailbox","Message",function(t,n,s,i,o,a,r,l){return angular.extend(e,{$q:t,$timeout:n,$log:s,$$resource:new o(i.activeUser("folderURL")+"Mail",i.activeUser()),$Preferences:a,$Mailbox:r,$Message:l}),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").factory("Account",e.$factory),e.$findAll=function(t){return t?e.$unwrapCollection(t):e.$$resource.fetch("","mailAccounts").then(function(t){return e.$unwrapCollection(t)})},e.$unwrapCollection=function(t){var n=[];return angular.forEach(t,function(t,s){t.id=s,n[s]=new e(t)}),e.$accounts=n,n},e.prototype.getLength=function(){return this.$flattenMailboxes().length},e.prototype.getItemAtIndex=function(e){var t;return t=this.$flattenMailboxes(),e>=0&&e=0,e.children&&e.children.length>0&&i(e.children)})};if(e.$Preferences.settings.Mail.ExpandedFolders){if(angular.isString(e.$Preferences.settings.Mail.ExpandedFolders))try{s=angular.fromJson(e.$Preferences.settings.Mail.ExpandedFolders)}catch(t){e.$log.warn("Can't parse list of expanded folders. String was: "+e.$Preferences.settings.Mail.ExpandedFolders),s=[]}else s=e.$Preferences.settings.Mail.ExpandedFolders;n.$expanded=s.indexOf("/"+n.id)>=0,s.length>0&&i(n.$mailboxes)}return e.$accounts&&(n.$expanded|=1==e.$accounts.length),n.$flattenMailboxes({reload:!0}),n.$mailboxes}):e.$q.when(this.$mailboxes)},e.prototype.$flattenMailboxes=function(t){var n=[],s=[],i=function(e){_.forEach(e,function(e){n.push(e),(t&&t.all||e.$expanded)&&e.children&&e.children.length>0&&i(e.children)})};return!this.$$flattenMailboxes||t&&(t.reload||t.all)?(i(this.$mailboxes),t&&t.all||(this.$$flattenMailboxes=n,t&&t.saveState&&(_.forEach(e.$accounts,function(e){e.$expanded&&s.push("/"+e.id),_.reduce(e.$$flattenMailboxes,function(e,t){return t.$expanded&&e.push("/"+t.id),e},s)}),e.$$resource.post(null,"saveFoldersState",s)))):n=this.$$flattenMailboxes,n},e.prototype.$getMailboxByType=function(e){var t=function(n){var s=_.find(n,function(t){return t.type==e});return s||angular.forEach(n,function(e){!s&&e.children&&e.children.length>0&&(s=t(e.children))}),s};return t(this.$mailboxes)},e.prototype.$getMailboxByPath=function(e){var t=function(n){var s=_.find(n,function(t){return t.path==e});return s||angular.forEach(n,function(e){!s&&e.children&&e.children.length>0&&(s=t(e.children))}),s};return t(this.$mailboxes)},e.prototype.$newMailbox=function(t,n){var s=this;return e.$$resource.post(t.toString(),"createFolder",{name:n}).then(function(){s.$getMailboxes({reload:!0})})},e.prototype.$certificate=function(){var t=this;return this.security&&this.security.hasCertificate?this.$$certificate?e.$q.when(this.$$certificate):e.$$resource.fetch(this.id.toString(),"certificate").then(function(e){return t.$$certificate=e,e}):e.$q.reject()},e.prototype.$removeCertificate=function(){var t=this;return e.$$resource.fetch(this.id.toString(),"removeCertificate").then(function(){t.security.hasCertificate=!1})},e.prototype.updateQuota=function(e){var t,n;t=Math.round(1e4*e.usedSpace/e.maxQuota)/100,n=l("quotasFormat").formatted(t,Math.round(e.maxQuota/10.24)/100),this.$quota={percent:t,description:n}},e.prototype.$newMessage=function(t){var n=this;return e.$$resource.fetch(this.id.toString(),"compose").then(function(t){e.$log.debug("New message (compose): "+JSON.stringify(t,void 0,2));return new e.$Message(t.accountId,n.$getMailboxByPath(t.mailboxPath),t)}).then(function(s){return e.$$resource.fetch(s.$absolutePath({asDraft:!0}),"edit").then(function(i){var o=e.$Preferences.defaults.AuxiliaryMailAccounts[n.id];return o.security&&(o.security.alwaysSign&&(i.sign=!0),o.security.alwaysEncrypt&&(i.encrypt=!0)),e.$log.debug("New message (edit): "+JSON.stringify(i,void 0,2)),angular.extend(s.editable,i),s.isNew=!0,t&&t.mailto&&(angular.isObject(t.mailto)?angular.extend(s.editable,t.mailto):s.$parseMailto(t.mailto)),s})})},e.prototype.$addDelegate=function(t){var n=this,s=e.$q.defer(),i={uid:t.uid};return!t.uid||_.indexOf(_.map(this.delegates,"uid"),t.uid)>-1?s.resolve():e.$$resource.fetch(this.id.toString(),"addDelegate",i).then(function(){n.delegates.push(t),s.resolve(n.users)},function(e,t){s.reject(l("An error occured please try again."))}),s.promise},e.prototype.$removeDelegate=function(t){var n=this,s={uid:t};return e.$$resource.fetch(this.id.toString(),"removeDelegate",s).then(function(){var e=_.indexOf(_.map(n.delegates,"uid"),t);e>=0&&n.delegates.splice(e,1)})}}(),function(){"use strict";function e(t,n){if(this.$account=t,"function"!=typeof n.then){if(this.init(n),this.name&&!this.path){var s=e.$$resource.create("createFolder",this.name);this.$unwrap(s)}}else this.$unwrap(n)}e.$factory=["$q","$timeout","$log","sgSettings","Resource","Message","Acl","Preferences","sgMailbox_PRELOAD",function(t,n,s,i,o,a,r,l,c){return angular.extend(e,{$q:t,$timeout:n,$log:s,$$resource:new o(i.activeUser("folderURL")+"Mail",i.activeUser()),$Message:a,$$Acl:r,$Preferences:l,$query:{sort:"arrival",asc:0},selectedFolder:null,$refreshTimeout:null,$virtualMode:!1,$virtualPath:!1,PRELOAD:c}),l.settings.Mail.SortingState&&(e.$query.sort=l.settings.Mail.SortingState[0],e.$query.asc=parseInt(l.settings.Mail.SortingState[1])),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMailbox_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("Mailbox",e.$factory),e.$find=function(t,n){var s;return s=n&&n.all?this.$$resource.fetch(t.id.toString(),"viewAll"):this.$$resource.fetch(t.id.toString(),"view"),e.$unwrapCollection(t,s)},e.$unwrapCollection=function(t,n){var s=[],i=function(n,s){for(var o=0;o=0&&e=0},e.prototype.isNoSelect=function(){return this.flags.indexOf("noselect")>=0},e.prototype.getClassName=function(e){return!1},e.prototype.$rename=function(){var t,n,s,i,o=this;return this.name==this.$shadowData.name?e.$q.when():(n=(t=function(e,n){var s=null;return _.find(n,function(e){return e.path==o.path})?s=e:angular.forEach(n,function(e){!s&&e.children&&e.children.length>0&&(s=t(e,e.children))}),s})(null,this.$account.$mailboxes),s=null===n?this.$account.$mailboxes:n.children,i=_.indexOf(_.map(s,"id"),this.id),this.$save().then(function(e){var t,n=o.path;o.init(e),s.splice(i,1),t=_.find(s,function(e){return"folder"==e.type&&e.name.localeCompare(o.name)>0}),i=t?_.indexOf(_.map(s,"id"),t.id):s.length,s.splice(i,0,o);var a=new RegExp("^"+n),r=function(e){_.forEach(e.children,function(e){e.path=e.path.replace(a,o.path),e.id=e.$id(),r(e)})};r(o)}))},e.prototype.$compact=function(){var t=this;return e.$$resource.post(this.id,"expunge").then(function(e){return e.quotas&&t.$account.updateQuota(e.quotas),!0})},e.prototype.$canFolderAs=function(){return"folder"==this.type&&0===this.level},e.prototype.$setFolderAs=function(t){return e.$$resource.post(this.id,"setAs"+t+"Folder")},e.prototype.$emptyTrash=function(){var t=this;return e.$$resource.post(this.id,"emptyTrash").then(function(e){t.$messages=[],t.uidsMap={},t.unseenCount=0,angular.isDefined(t.children)&&t.children.length&&t.$account.$getMailboxes({reload:!0}),e.quotas&&t.$account.updateQuota(e.quotas)})},e.prototype.$markAsRead=function(){var t=this;return e.$$resource.post(this.id,"markRead").then(function(){t.unseenCount=0,_.forEach(t.$messages,function(e){e.isread=!0})})},e.prototype.$flagMessages=function(t,n,s){var i={msgUIDs:_.map(t,"uid"),flags:n,operation:s};return e.$$resource.post(this.id,"addOrRemoveLabel",i).then(function(){return t})},e.prototype.saveSelectedMessages=function(){var t,n;return t=_.filter(this.$messages,function(e){return e.selected}),{uids:n=_.map(t,"uid")},{filename:l("Saved Messages.zip")},e.$$resource.download(this.id,"saveMessages",{uids:n})},e.prototype.exportFolder=function(){var t;return t={filename:this.name+".zip"},e.$$resource.open(this.id,"exportFolder",null,t)},e.prototype.$delete=function(t){var n=this;return e.$$resource.post(this.id,"delete",t).then(function(){return n.$account.$getMailboxes({reload:!0}),!0})},e.prototype.$_deleteMessages=function(e,t){var n,s=this,i=this.$messages.length;return n=_.filter(t,function(e,t){return!e.isread}),this.unseenCount-=n.length,_.forEachRight(this.$messages,function(t,n){var o=_.findIndex(e,function(e){return t.uid==e});o>-1?(e.splice(o,1),delete s.uidsMap[t.uid],t.uid==s.selectedMessage&&delete s.selectedMessage,s.$messages.splice(n,1),nt.uids.length-1)&&(n.$topIndex=0),n.init(t),n.uids&&(e.$log.debug("unwrapping "+n.uids.length+" messages"),a=_.invokeMap(n.headers[0],"toLowerCase"),n.headers.splice(0,1),n.threaded&&(o=n.uids[0],n.uids.splice(0,1)),_.reduce(n.uids,function(t,s,a){var r,l;return r=n.threaded?_.zipObject(o,s):{uid:s.toString()},n.uidsMap[r.uid]=a,(l=new e.$Message(n.$account.id,n,r,!0)).selected=i.indexOf(l.uid)>-1,t.push(l),t},n.$messages),_.forEach(n.headers,function(e){var t=_.zipObject(a,e),s=n.uidsMap[t.uid.toString()];n.$messages[s].init(t)})),e.$log.debug("mailbox "+n.id+" ready"),n.$isLoading=!1,s.resolve(n.$messages)})},function(e){angular.extend(n,e),n.isError=!0,n.$isLoading=!1,s.reject()}),s.promise},e.prototype.$unwrapHeaders=function(t){var n=this;t.then(function(t){e.$timeout(function(){var e,s;t.length>0&&(e=_.invokeMap(t[0],"toLowerCase"),t.splice(0,1),_.forEach(t,function(t){t=_.zipObject(e,t),s=n.uidsMap[t.uid.toString()],angular.isDefined(s)&&n.$messages[s].init(t)}))})})},e.prototype.$updateSubscribe=function(){var t=this.subscribed?"subscribe":"unsubscribe";e.$$resource.post(this.id,t)}}(),function(){"use strict";function e(e,t,n,s){this.accountId=e,this.$mailbox=t,this.$hasUnsafeContent=!1,this.$loadUnsafeContent=!1,this.editable={to:[],cc:[],bcc:[]},this.selected=!1,"function"!=typeof n.then?(!angular.isUndefined(s)&&s||this.init(n),this.uid=parseInt(n.uid)):this.$unwrap(n)}e.$factory=["$q","$timeout","$log","sgSettings","sgMessage_STATUS","Resource","Preferences",function(t,n,s,i,o,a,r){return angular.extend(e,{STATUS:o,$q:t,$timeout:n,$log:s,$$resource:new a(i.activeUser("folderURL")+"Mail",i.activeUser()),$Preferences:r,$avatar:angular.bind(r,r.avatar)}),r.defaults.SOGoMailLabelsColors&&(e.$tags=r.defaults.SOGoMailLabelsColors),r.defaults.SOGoMailDisplayRemoteInlineImages&&"always"==r.defaults.SOGoMailDisplayRemoteInlineImages&&(e.$displayRemoteInlineImages=!0),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMessage_STATUS",{NOT_LOADED:0,DELAYED_LOADING:1,LOADING:2,LOADED:3,DELAYED_MS:300}).factory("Message",e.$factory),e.filterTags=function(t,n){var s=new RegExp(t,"i"),i=[];return _.forEach(_.keys(e.$tags),function(t){var o=e.$tags[t];-1!=o[0].search(s)&&(_.includes(n,t)||i.push({name:t,description:o[0],color:o[1]}))}),i},e.prototype.init=function(e){var t=this;angular.extend(this,e),this.$formatFullAddresses(),this.$loadUnsafeContent=!1,_.forEach(this.flags,function(e,n){"$"==e.charAt(0)&&t.flags.splice(n,1,"_"+e)})},e.prototype.$absolutePath=function(t){var n=this,s=this.id;function i(){var e;return(e=_.map(n.$mailbox.path.split("/"),function(e){return"folder"+e.asCSSIdentifier()})).splice(0,0,n.accountId),e.join("/")}return(angular.isUndefined(this.id)||t&&t.nocache)&&(this.id=i()+"/"+this.uid,s=this.id),t&&t.asDraft&&this.draftId&&(s=i()+"/"+this.draftId),t&&t.withResourcePath&&(s=e.$$resource.path(s)),s},e.prototype.$setUID=function(e){var t,n=this.uid||-1,s=this;n!=parseInt(e)&&(this.uid=parseInt(e),this.$absolutePath({nocache:!0}),n>-1?(n=n.toString(),angular.isDefined(this.$mailbox.uidsMap[n])&&(t=this.$mailbox.uidsMap[n],this.$mailbox.uidsMap[e]=t,delete this.$mailbox.uidsMap[n],_.forEach(["from","to","subject"],function(e){s.$mailbox.$messages[t][e]=s[e]}))):this.$mailbox.constructor.selectedFolder&&"draft"==this.$mailbox.constructor.selectedFolder.type&&this.$mailbox.constructor.selectedFolder.$filter())},e.prototype.$formatFullAddresses=function(){var t=this,n=_.map(t.$mailbox.$account.identities,"email");_.forEach(["from","to","cc","bcc","reply-to"],function(s){_.forEach(t[s],function(t){t.name&&t.name!=t.email?(t.full=t.name+" <"+t.email+">",t.name.length<10?t.shortname=t.name:t.name.split(" ").length&&(t.shortname=_.first(_.last(t.name.split(/, */)).split(/ +/)).replace("'",""))):t.email&&(t.full="<"+t.email+">",t.shortname=t.email.split("@")[0]),t.image=e.$avatar(t.email,32),_.indexOf(n,t.email)>=0&&(t.shortname=l("me"))})})},e.prototype.$shortRecipients=function(e){var t=this,n=[],s=0,i=0;return _.forEach(["to","cc","bcc"],function(o){i+=t[o]?t[o].length:0,_.forEach(t[o],function(t,i){se&&n.push(l("and %{0} more...",i-e)),n.join(", ")},e.prototype.$shortAddress=function(e){var t="";return this[e]&&this[e].length>0&&(t=this[e][0].name||this[e][0].email||""),t},e.prototype.allowReplyAll=function(){var e=0;return e=_.reduce(["to","cc"],_.bind(function(e,t){return this[t]?e+this[t].length:e},this),e),!this.isDraft&&e>1},e.prototype.loadUnsafeContent=function(){this.$loadUnsafeContent=!0,delete this.$parts},e.prototype.$content=function(){var t=this,n=[],s=function(i){i.msgclass="msg-attachment-other","UIxMailPartAlternativeViewer"==i.type?s(_.find(i.content,function(e){return i.preferredPart==e.contentType})):angular.isArray(i.content)?("UIxMailPartSignedViewer"==i.type&&1===i["supports-smime"]?t.signed={valid:i.valid,certificate:i.certificates[i.certificates.length-1],message:i.message}:"UIxMailPartEncryptedViewer"==i.type&&(t.encrypted={valid:i.valid},i.valid?t.encrypted.message=l("This message is encrypted"):t.encrypted.message=l("This message can't be decrypted. Please make sure you have uploaded your S/MIME certificate from the mail preferences module.")),_.forEach(i.content,function(e){s(e)})):(angular.isUndefined(i.safeContent)&&(i.safeContent=i.content,t.$hasUnsafeContent|=i.safeContent.indexOf(" unsafe-")>-1),"UIxMailPartHTMLViewer"==i.type?(i.html=!0,t.$loadUnsafeContent||e.$displayRemoteInlineImages?(angular.isUndefined(i.unsafeContent)&&(i.unsafeContent=document.createElement("div"),i.unsafeContent.innerHTML=i.safeContent,angular.forEach(["src","data","classid","background","style"],function(e){var t,n,s,o=i.unsafeContent.querySelectorAll("[unsafe-"+e+"]");for(s=0;s"}),n={to:t},_.forEach(["subject","body"],function(t){var i=new RegExp(t+"=([^&]+)");t="body"==t?"text":t,(s=i.exec(e))&&(n[t]=decodeURIComponent(s[1]))}),_.forEach(["cc","bcc"],function(t){var i=new RegExp(t+"=([^&]+)");(s=i.exec(e))&&(n[t]=_.map(decodeURIComponent(s[1]).split(","),function(e){return"<"+e.trim()+">"}))}),angular.extend(this.editable,n))},e.prototype.$reply=function(){return this.$newDraft("reply")},e.prototype.$replyAll=function(){return this.$newDraft("replyall")},e.prototype.$forward=function(){return this.$newDraft("forward")},e.prototype.$newDraft=function(t){var n=this;return e.$$resource.fetch(this.$absolutePath(),t).then(function(s){var i,o;return e.$log.debug("New "+t+": "+JSON.stringify(s,void 0,2)),i=n.$mailbox.$account.$getMailboxByPath(s.mailboxPath),o=new e(s.accountId,i,s),e.$$resource.fetch(o.$absolutePath({asDraft:!0}),"edit").then(function(s){e.$log.debug("New "+t+": "+JSON.stringify(s,void 0,2)+" original UID: "+n.uid);var i=e.$Preferences.defaults.AuxiliaryMailAccounts[n.$mailbox.$account.id];return i.security&&(i.security.alwaysSign&&(s.sign=!0),i.security.alwaysEncrypt&&(s.encrypt=!0)),angular.extend(o.editable,s),o.origin={message:n,action:t},o})})},e.prototype.$save=function(){var t=this,n=this.editable;return e.$log.debug("save = "+JSON.stringify(n,void 0,2)),e.$$resource.save(this.$absolutePath({asDraft:!0}),n).then(function(n){e.$log.debug("save = "+JSON.stringify(n,void 0,2)),t.$setUID(n.uid),t.$reload(),t.isNew=!1})},e.prototype.$send=function(){var t=this,n=angular.copy(this.editable);return e.$log.debug("send = "+JSON.stringify(n,void 0,2)),e.$$resource.post(this.$absolutePath({asDraft:!0}),"send",n).then(function(n){return"success"==n.status?(angular.isDefined(t.origin)&&(t.origin.action.startsWith("reply")?t.origin.message.isanswered=!0:"forward"==t.origin.action&&(t.origin.message.isforwarded=!0)),n):e.$q.reject(n.data)})},e.prototype.$unwrap=function(t){var n=this;return this.$loaded=e.STATUS.DELAYED_LOADING,e.$timeout(function(){n.$loaded!=e.STATUS.LOADED&&(n.$loaded=e.STATUS.LOADING)},e.STATUS.DELAYED_MS),this.$futureMessageData=t.then(function(t){return 0===n.isread&&(n.isread=!0,n.$mailbox.unseenCount--),e.$timeout(function(){return delete n.$parts,n.$loaded=e.STATUS.LOADED,n.init(t),n})}),this.$futureMessageData},e.prototype.$omit=function(e){var t={},n=e&&e.privateAttributes;return angular.forEach(this,function(e,s){("constructor"!=s&&"$"!=s[0]||n)&&(t[s]=e)}),t},e.prototype.download=function(){var t,n;return t={uids:[this.uid]},n={filename:this.subject+".zip"},e.$$resource.download(this.$mailbox.id,"saveMessages",t,n)},e.prototype.downloadAttachments=function(){var t;return t={filename:l("attachments")+"-"+this.uid+".zip"},e.$$resource.download(this.$absolutePath(),"archiveAttachments",null,t)}}(),function(){"use strict";function e(){this.show=!1,this.message=null,this.elements=[]}e.$factory=["$document","$timeout","$mdPanel","sgHotkeys",function(t,n,s,i){return angular.extend(e,{$document:t,$timeout:n,$mdPanel:s,sgHotkeys:i}),new e}],e.prototype.setMessage=function(e){this.message=e},e.prototype.registerImage=function(e){this.elements.push(e)},e.prototype.registerHotkeys=function(t){this.keys=[e.sgHotkeys.createHotkey({key:"left",description:l("View previous item"),callback:angular.bind(t,t.previousImage)}),e.sgHotkeys.createHotkey({key:"right",description:l("View next item"),callback:angular.bind(t,t.nextImage)})],_.forEach(this.keys,function(t){e.sgHotkeys.registerHotkey(t)})},e.prototype.showGallery=function(t,n){var s=this,i=e.$mdPanel,o=angular.element(this.message.$content()[n].content).find("img")[0].src,a=_.filter(this.message.attachmentAttrs,function(e){return 0===e.mimetype.indexOf("image/")}),r=_.findIndex(a,function(e){return e.url.indexOf(o)>=0});angular.element(e.$document[0].body).addClass("sg-image-gallery-backdrop");var c=i.newPanelPosition().absolute(),u=i.newPanelAnimation().openFrom(t.target).duration(100).withAnimation(i.animation.FADE),d={attachTo:angular.element(document.body),locals:{lastIndex:a.length-1,images:a,selectedIndex:r,selectedImage:a[r]},bindToController:!0,controller:h,controllerAs:"$panelCtrl",position:c,animation:u,targetEvent:t,fullscreen:!0,hasBackdrop:!0,template:['','
',' '," arrow_back"," ",' image','
',' '," file_download"," ","
",'
',' '," navigate_before"," ",' ',' '," navigate_next"," ","
",'
','
',' ',"
","
","
"].join(""),trapFocus:!0,clickOutsideToClose:!0,escapeToClose:!0,focusOnOpen:!0,onOpenComplete:function(){s.show=!0,_.forEach(e.$document.find("sg-image-gallery")[0].getElementsByClassName("sg-image-thumbnail"),function(t){var n=t.children[0];angular.element(n).one("load",function(){n.naturalWidth0&&this.selectImage(this.selectedIndex-1)}}},angular.module("SOGo.MailerUI").factory("ImageGallery",e.$factory)}(),function(){"use strict";function e(e){this.$account=e}e.$factory=["$q","$timeout","$log","sgSettings","Resource","Message","Mailbox","sgMailbox_PRELOAD",function(t,n,s,i,o,a,r,l){return angular.extend(e,{$q:t,$timeout:n,$log:s,$$resource:new o(i.activeUser("folderURL")+"Mail",i.activeUser()),$Message:r,selectedFolder:null,PRELOAD:l}),e}];try{angular.module("SOGo.MailerUI")}catch(e){angular.module("SOGo.MailerUI",["SOGo.Common"])}angular.module("SOGo.MailerUI").constant("sgMailbox_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("VirtualMailbox",e.$factory),e.$absolutePath=function(e){return[e,"virtual"].join("/")},e.prototype.init=function(e){this.$isLoading=!1,this.$mailboxes=[],this.uidsMap={},angular.extend(this,e),this.id=this.$id()},e.prototype.setMailboxes=function(e){this.$mailboxes=e,_.forEach(this.$mailboxes,function(e){e.$messages=[],e.uidsMap={}})},e.prototype.startSearch=function(t,n){var s=this,i=e.$q.when();this.$isLoading=!0,_.forEach(this.$mailboxes,function(o){i=i.then(function(){if(s.$isLoading)return e.$log.debug("searching mailbox "+o.path),o.$filter({sort:"date",asc:!1,match:t},n)})}),i.finally(function(){s.$isLoading=!1})},e.prototype.stopSearch=function(){e.$log.debug("stopping search..."),this.$isLoading=!1},e.prototype.selectFolder=function(){},e.prototype.resetSelectedMessage=function(){_.forEach(this.$mailboxes,function(e){delete e.selectedMessage})},e.prototype.hasSelectedMessage=function(){return angular.isDefined(_.find(this.$mailboxes,function(e){return angular.isDefined(e.selectedMessage)}))},e.prototype.isSelectedMessage=function(e,t){return angular.isDefined(_.find(this.$mailboxes,function(n){return n.path==t&&n.selectedMessage==e}))},e.prototype.getLength=function(){var e=0;return angular.isDefined(this.$mailboxes)?(_.forEach(this.$mailboxes,function(t){e+=t.$messages.length}),e):e},e.prototype.getItemAtIndex=function(e){var t,n,s,i,o;if(angular.isDefined(this.$mailboxes)&&e>=0)for(t=0,n=0;n0})},e.prototype.$selectedCount=function(){return _.sum(_.invokeMap(this.$mailboxes,"$selectedCount"))},e.prototype.$flagMessages=function(t,n,s){var i={flags:n,operation:s},o=[],a=[];return _.forEach(t,function(t,n){if(t.length>0){var s=_.map(t,"uid");o.push(t);var r=e.$$resource.post(n,"addOrRemoveLabel",_.assign(i,{msgUIDs:s}));a.push(r)}}),e.$q.all(a).then(function(){return _.flatten(o)})},e.prototype.$deleteMessages=function(t){var n=this,s=[];if(_.isArray(t)&&1===t.length){var i=t[0],o=i.$mailbox;return o.$deleteMessages([i]).then(function(e){var t=0;return _.find(n.$mailboxes,function(e){return e.id===o.id||(t+=e.getLength(),!1)}),t+e})}return _.forEach(t,function(e,t){if(e.length>0){var n=e[0].$mailbox.$deleteMessages(e);s.push(n)}}),e.$q.all(s)},e.prototype.$markOrUnMarkMessagesAsJunk=function(t){var n=[];return _.forEach(t,function(e,t){if(e.length>0){var s=e[0].$mailbox.$markOrUnMarkMessagesAsJunk(e);n.push(s)}}),e.$q.all(n)},e.prototype.$copyMessages=function(t,n){var s=[];return _.forEach(t,function(e,t){if(e.length>0){var i=e[0].$mailbox.$copyMessages(e,n);s.push(i)}}),e.$q.all(s)},e.prototype.$moveMessages=function(t,n){var s=[];return _.forEach(t,function(e,t){if(e.length>0){var i=e[0].$mailbox.$moveMessages(e,n);s.push(i)}}),e.$q.all(s)},e.prototype.$comact=function(){return!0}}(),function(){"use strict";e.$inject=["$window","$scope","$timeout","$q","$state","$mdDialog","$mdToast","stateAccounts","stateAccount","stateMailbox","sgHotkeys","encodeUriFilter","sgSettings","sgFocus","Dialog","Preferences","Account","Mailbox"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p,$,b){var v,y=this,M=angular.element(e.document).find("title").attr("sg-default")||"SOGo",x=[];v={subject:"Subject",from:"From",date:"Date",size:"Size",arrival:"Order Received"},this.$onInit=function(){e.$mailboxController=y,this.service=b,this.accounts=r,this.account=c,this.selectedFolder=u,this.messageDialog=null,this.mode={search:!1,multiple:0},(n=x).push(d.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:y.searchMode})),n.push(d.createHotkey({key:l("hotkey_compose"),description:l("Write a new message"),callback:function(e){null===y.messageDialog&&y.newMessage(e)}})),n.push(d.createHotkey({key:l("hotkey_junk"),description:l("Mark the selected messages as junk"),callback:y.markOrUnMarkMessagesAsJunk})),n.push(d.createHotkey({key:"space",description:l("Toggle item"),callback:y.toggleMessageSelection})),n.push(d.createHotkey({key:"shift+space",description:l("Toggle range of items"),callback:y.toggleMessageSelection})),n.push(d.createHotkey({key:"up",description:l("View next item"),callback:w,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"down",description:l("View previous item"),callback:I,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+up",description:l("Add next item to selection"),callback:E,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+down",description:l("Add previous item to selection"),callback:S,preventInClass:["sg-mail-part"]})),_.forEach(["backspace","delete"],function(e){n.push(d.createHotkey({key:e,description:l("Delete selected message or folder"),callback:y.confirmDeleteSelectedMessages}))}),_.forEach(n,function(e){d.registerHotkey(e)});var n;angular.element(e).on("beforeunload",C),t.$on("$destroy",function(){angular.element(e).off("beforeunload",C),_.forEach(x,function(e){d.deregisterHotkey(e)})}),t.$watch(function(){return y.selectedFolder.unseenCount},function(t){var n=M+" - ";t&&(n+="("+t+") "),n+=y.selectedFolder.$displayName,e.document.title=n})};function C(e){return y.selectedFolder.$compact()}this.centerIsClose=function(e){return this.selectedFolder.hasSelectedMessage()&&!!e},this.sort=function(e){if(!e)return v[y.service.$query.sort];y.selectedFolder.$filter({sort:e})},this.sortedBy=function(e){return b.$query.sort==e},this.ascending=function(){return b.$query.asc},this.searchMode=function(e){y.mode.search=!0,f("search"),e&&e.preventDefault()},this.cancelSearch=function(){y.mode.search=!1,y.selectedFolder.$filter().then(function(){y.selectedFolder.selectedMessage&&n(function(){y.selectedFolder.$topIndex=y.selectedFolder.uidsMap[y.selectedFolder.selectedMessage]})})},this.composeWindowEnabled=function(){return p.defaults.SOGoMailComposeWindowEnabled},this.newMessage=function(t,n){var s;null===y.messageDialog&&(n||"popup"==p.defaults.SOGoMailComposeWindow?function(){var t=[g.baseURL(),"UIxMailPopupView#!/Mail",y.account.id,h(h(y.selectedFolder.path)),"new"].join("/"),n=y.selectedFolder.$id()+"/"+Math.random(0,1e3);console.debug(t),e.open(t,n,["width=680","height=520","resizable=1","scrollbars=1","toolbar=0","location=0","directories=0","status=0","menubar=0","copyhistory=0"].join(","))}():(s=y.account.$newMessage(),y.messageDialog=o.show({parent:angular.element(document.body),targetEvent:t,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:y.account,stateMessage:s}}).catch(_.noop).finally(function(){y.messageDialog=null})))};function w(e){var t=y.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t--,y.selectedFolder.$topIndex>0&&y.selectedFolder.$topIndex--):(t=y.selectedFolder.getLength()-1,y.selectedFolder.$topIndex=y.selectedFolder.getLength()),t>-1&&y.selectMessage(y.selectedFolder.getItemAtIndex(t)),e.preventDefault(),t}function I(e){var t=y.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t++,y.selectedFolder.$topIndex=0&&y.toggleMessageSelection(e,y.selectedFolder.$messages[t])}function S(e){var t;y.selectedFolder.hasSelectedMessage()&&(t=I(e))>=0&&y.toggleMessageSelection(e,y.selectedFolder.$messages[t])}this.selectMessage=function(e){b.$virtualMode?i.go("mail.account.virtualMailbox.message",{mailboxId:h(e.$mailbox.path),messageId:e.uid}):i.go("mail.account.mailbox.message",{messageId:e.uid})},this.toggleMessageSelection=function(e,t){var n,s,i,o=y.selectedFolder;if(t||(t=o.$selectedMessage()),!t)return!0;if(t.selected=!t.selected,y.mode.multiple+=t.selected?1:-1,e.shiftKey&&o.$selectedCount()>1){for(s=(n=o.uidsMap[t.uid])-2;s>=0&&!o.$messages[s].selected;)s--;if(s<0)for(s=n+2;s=0&&s0&&(a-=1,s=y.selectedFolder.$messages[a]),t0&&(y.messageDialog=m.confirm(l("Confirmation"),l("Are you sure you want to delete the selected messages?"),{ok:l("Delete")}).then(function(){var e=y.selectedFolder.hasSelectedMessage();y.selectedFolder.$deleteMessages(t).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):F(e,t)},function(n){y.messageDialog=m.confirm(l("Warning"),l("The messages could not be moved to the trash folder. Would you like to delete them immediately?"),{ok:l("Delete")}).then(function(){y.selectedFolder.$deleteMessages(t,{withoutTrash:!0}).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):F(e,t)})})})}).finally(function(){y.messageDialog=null})),e.preventDefault()},this.markOrUnMarkMessagesAsJunk=function(){var e=y.selectedFolder.hasSelectedMessage(),t=y.selectedFolder.$selectedMessages();0===_.size(t)&&e&&(t=[y.selectedFolder.$selectedMessage()]),_.size(t)>0&&y.selectedFolder.$markOrUnMarkMessagesAsJunk(t).then(function(){var n="/"+y.account.id+"/folderINBOX";"junk"!=y.selectedFolder.type&&(n="/"+y.account.$getMailboxByType("junk").id),y.selectedFolder.$moveMessages(t,n).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):F(e,t)})})},this.copySelectedMessages=function(e){var t=y.selectedFolder.$selectedMessages();_.size(t)>0&&y.selectedFolder.$copyMessages(t,"/"+e).then(function(){a.show(a.simple().content(l("%{0} message(s) copied",y.selectedFolder.$selectedCount())).position("top right").hideDelay(2e3))})},this.moveSelectedMessages=function(e){var t=y.selectedFolder.hasSelectedMessage(),n=y.selectedFolder.$selectedMessages(),s=y.selectedFolder.$selectedCount();_.size(n)>0&&y.selectedFolder.$moveMessages(n,"/"+e).then(function(e){a.show(a.simple().content(l("%{0} message(s) moved",s)).position("top right").hideDelay(2e3)),b.$virtualMode?t&&i.go("mail.account.virtualMailbox"):F(t,e)})},this.selectAll=function(){var e=0;_.forEach(A(),function(t){for(var n=0,s=t.$messages.length;n0&&y.selectedFolder.$flagMessages(e,"\\Flagged","add").then(function(e){_.forEach(e,function(e){e.isflagged=!0})})},this.markSelectedMessagesAsUnread=function(){var e=y.selectedFolder.$selectedMessages();_.size(e)>0&&y.selectedFolder.$flagMessages(e,"seen","remove").then(function(e){_.forEach(e,function(e){e.isread&&e.$mailbox.unseenCount++,e.isread=!1})})},this.markSelectedMessagesAsRead=function(){var e=y.selectedFolder.$selectedMessages();_.size(e)>0&&y.selectedFolder.$flagMessages(e,"seen","add").then(function(e){_.forEach(e,function(e){e.isread||e.$mailbox.unseenCount--,e.isread=!0})})}}angular.module("SOGo.MailerUI").controller("MailboxController",e),t.$inject=["$delegate"];function t(e){return e[0].controller.prototype.resetScroll=function(){"messagesList"==this.$element.parent().attr("id")?this.updateSize():this.scrollTo(0)},e}angular.module("material.components.virtualRepeat").decorator("mdVirtualRepeatContainerDirective",t)}(),function(){"use strict";e.$inject=["$scope","$state","$transitions","$timeout","$window","$mdMedia","$mdSidenav","$mdDialog","$mdToast","sgConstant","sgFocus","encodeUriFilter","Dialog","sgSettings","sgHotkeys","Account","Mailbox","VirtualMailbox","User","Preferences","stateAccounts"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p,$,b,v,y,M){var x,C,w=this,I=[];this.$onInit=function(){this.service=$,this.accounts=M,this.currentSearchParam="",this.search={options:{"":"",subject:l("Enter Subject"),from:l("Enter From"),to:l("Enter To"),cc:l("Enter Cc"),body:l("Enter Body")},subfolders:1,match:"AND",params:[]},this.showSubscribedOnly=y.defaults.SOGoMailShowSubscribedFoldersOnly,this.refreshUnseenCount(),t=I,_.forEach(["backspace","delete"],function(e){t.push(m.createHotkey({key:e,description:l("Delete selected message or folder"),callback:function(){$.selectedFolderController&&$.selectedFolder&&$.selectedFolder.$isEditable&&!$.selectedFolder.hasSelectedMessage()&&$.selectedFolderController.confirmDelete($.selectedFolder)}}))}),_.forEach(t,function(e){m.registerHotkey(e)});var t;e.$on("$destroy",function(){_.forEach(I,function(e){m.deregisterHotkey(e)})})};this.hideAdvancedSearch=function(){w.service.$virtualPath=!1,w.service.$virtualMode=!1,x=w.accounts[0],C=w.searchPreviousMailbox,t.go("mail.account.mailbox",{accountId:x.id,mailboxId:h(C.path)})},this.toggleAdvancedSearch=function(){if($.selectedFolder.$isLoading)w.virtualMailbox.stopSearch();else{var e,n=[],s=function(e){_.forEach(e,function(e){e.isNoSelect()||n.push(e),e.children&&e.children.length>0&&s(e.children)})};w.virtualMailbox=new b(w.accounts[0]),$.$virtualMode||(w.searchPreviousMailbox=$.selectedFolder),$.selectedFolder=w.virtualMailbox,$.$virtualMode=!0,$.$virtualPath.length?(e=w.accounts[0].$getMailboxByPath($.$virtualPath),n.push(e),w.search.subfolders&&e.children.length&&s(e.children)):n=_.filter(w.accounts[0].$flattenMailboxes({all:!0}),function(e){return!e.isNoSelect()}),w.virtualMailbox.setMailboxes(n),w.virtualMailbox.startSearch(w.search.match,w.search.params),"mail.account.virtualMailbox"!=t.$current.name&&t.go("mail.account.virtualMailbox",{accountId:w.accounts[0].id})}},this.addSearchParam=function(e){return this.currentSearchParam=e,d("advancedSearch"),!1},this.newSearchParam=function(e){if(e.length&&this.currentSearchParam.length){var t=0,n=this.currentSearchParam;return e.startsWith("!")&&(t=1,e=e.substring(1).trim()),this.currentSearchParam="",{searchBy:n,searchInput:e,negative:t}}},this.toggleAccountState=function(e){e.$expanded=!e.$expanded,e.$flattenMailboxes({reload:!0,saveState:!0})},this.subscribe=function(e){r.show({templateUrl:e.id+"/subscribe",controller:t,controllerAs:"subscriptions",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcAccount:e}}).finally(function(){e.$getMailboxes({reload:!0})}),t.$inject=["$scope","$mdDialog","srcAccount"];function t(e,t,n){var s=this;s.loading=!0,s.filter={name:""},s.account=new p({id:n.id,name:n.name}),s.close=function(){t.hide()},s.account.$getMailboxes({reload:!0,all:!0}).then(function(){s.loading=!1})}},this.showAdvancedSearch=function(){$.$virtualPath="",o(u["gt-md"])||a("left").close()},this.newFolder=function(e){g.prompt(l("New Folder..."),l("Enter the new name of your folder")).then(function(t){e.$newMailbox(e.id,t).then(function(){},function(e,n){g.alert(l('An error occured while creating the mailbox "%{0}".',t),l(e.error))})})},this.delegate=function(e){r.show({templateUrl:e.id+"/delegation",controller:t,controllerAs:"delegate",clickOutsideToClose:!0,escapeToClose:!0,locals:{User:v,account:e}}),t.$inject=["$scope","$mdDialog","User","account"];function t(e,t,n,s){var i=this;i.users=s.delegates,i.account=s,i.userToAdd="",i.searchText="",i.userFilter=function(e){return n.$filter(e,s.delegates)},i.closeModal=function(){t.hide()},i.removeUser=function(e){s.$removeDelegate(e.uid).catch(function(e,t){g.alert(l("Warning"),l("An error occured please try again."))})},i.addUser=function(e){e&&s.$addDelegate(e).then(function(){i.userToAdd="",i.searchText=""},function(e){g.alert(l("Warning"),e)})}}},this.refreshUnseenCount=function(){var e,t=i.unseenCountFolders;_.forEach(w.accounts,function(e){_.includes(t,e.id+"/folderINBOX")||t.push(e.id+"/folderINBOX"),_.forEach(e.$$flattenMailboxes,function(e){angular.isDefined(e.unseenCount)&&!_.includes(t,e.id)&&t.push(e.id)})}),p.$$resource.post("","unseenCount",{mailboxes:t}).then(function(e){_.forEach(w.accounts,function(t){_.forEach(t.$$flattenMailboxes,function(t){e[t.id]&&(t.unseenCount=e[t.id])})})}),(e=y.defaults.SOGoRefreshViewCheck)&&"manually"!=e&&s(w.refreshUnseenCount,1e3*e.timeInterval())},this.isDroppableFolder=function(e,t){return t.id!=e.id&&!t.isNoSelect()},this.dragSelectedMessages=function(e,n,s){var i,o,a,r,u,d;i="/"+n.id,0===(o=e.$selectedMessages()).length&&(o=[e.$selectedMessage()]),a=_.map(o,"uid"),r=e.selectedMessage&&a.indexOf(e.selectedMessage)>=0,"copy"==s?(u=e.$copyMessages(o,i),d=l("%{0} message(s) copied",o.length)):(u=e.$moveMessages(o,i),d=l("%{0} message(s) moved",o.length)),u.then(function(){r&&t.go("mail.account.mailbox"),c.show(c.simple().content(d).position("top right").hideDelay(2e3))})}}angular.module("SOGo.MailerUI").controller("MailboxesController",e)}(),function(){"use strict";e.$inject=["$window","$scope","$state","$mdMedia","$mdDialog","sgConstant","stateAccounts","stateAccount","stateMailbox","stateMessage","sgHotkeys","encodeUriFilter","sgSettings","ImageGallery","sgFocus","Dialog","Preferences","Calendar","Component","Account","Mailbox","Message"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p,$,b,v,y,M,x){var C=this,w=[];this.$onInit=function(){e.$messageController=C,f.setMessage(u),this.$state=n,this.accounts=a,this.account=r,this.mailbox=c,this.message=u,this.service=x,this.tags={searchText:"",selected:""},this.showFlags=u.flags&&u.flags.length>0,this.$showDetailedRecipients=!1,this.showRawSource=!1,(s=w).push(d.createHotkey({key:l("hotkey_reply"),description:l("Reply to the message"),callback:E(angular.bind(C,C.reply))})),s.push(d.createHotkey({key:l("hotkey_replyall"),description:l("Reply to sender and all recipients"),callback:E(angular.bind(C,C.replyAll))})),s.push(d.createHotkey({key:l("hotkey_forward"),description:l("Forward selected message"),callback:E(angular.bind(C,C.forward))})),s.push(d.createHotkey({key:l("hotkey_flag"),description:l("Flagged"),callback:E(angular.bind(u,u.toggleFlag))})),_.forEach(["backspace","delete"],function(e){s.push(d.createHotkey({key:e,callback:E(function(e){0===C.mailbox.$selectedCount()&&C.deleteMessage(),e.preventDefault()})}))}),_.forEach(s,function(e){d.registerHotkey(e)});var s;e.opener&&"$mailboxController"in e.opener?(t.$watchCollection(function(){return C.message.flags},function(e,t){var n;(e||t)&&(n=S()).messageCtrl&&n.messageCtrl.service.$timeout(function(){n.messageCtrl.showFlags=!0,n.messageCtrl.message.flags=e})}),t.$watch(function(){return C.message.isflagged},function(e,t){var n=S();n.mailboxCtrl&&n.mailboxCtrl.service.$timeout(function(){_.find(n.mailboxCtrl.selectedFolder.$messages,{uid:C.message.uid}).isflagged=e})})):t.$watchCollection(function(){return C.message.flags},function(e,t){var n,s,i;(e||t)&&(n=e||[],s=t||[],_.forEach(n,function(e,t){angular.isObject(e)&&(n[t]=e.name)}),n.length>s.length?(i=_.difference(n,s),_.forEach(i,function(e){C.message.addTag(e)})):n.length0&&(t.mailbox.messageDialog=arguments[0]),t.mailbox.messageDialog):null}function E(e){return function(){if(null===I())return e.apply(C,arguments)}}function S(){var t,n,s={};return e.opener&&"$mailboxController"in e.opener&&"selectedFolder"in e.opener.$mailboxController&&e.opener.$mailboxController.selectedFolder.$id()==c.$id()&&(n=e.opener.$mailboxController,s.mailboxCtrl=n,"$messageController"in e.opener&&e.opener.$messageController.message.uid==u.uid&&(t=e.opener.$messageController,s.messageCtrl=t)),s}this.addFlags=function(e){e.stopPropagation(),e.preventDefault(),this.showFlags=!0,m("flags")},this.toggleDetailedRecipients=function(e){this.$showDetailedRecipients=!this.$showDetailedRecipients,e.stopPropagation(),e.preventDefault()},this.filterMailtoLinks=function(e){var t;"A"==e.target.tagName&&"href"in e.target.attributes&&(t=e.target.attributes.href.value,/^mailto:([^\?]+)/.exec(t)&&(delete e.target.attributes.target,this.newMessage(e,t)))},this.deleteMessage=function(){var e,t,i,a,r,l=S();l.messageCtrl?(e=l.mailboxCtrl.selectedFolder,t=l.messageCtrl.message,i=l.messageCtrl.$state):(e=c,t=u,i=n),M.$virtualMode&&(e=M.selectedFolder),e.$deleteMessages([t]).then(function(n){var l=n;if(t=null,angular.isDefined(i)){n>0&&(l-=1,a=e.getItemAtIndex(l)),ne.$lastVisibleIndex&&(e.$topIndex=l-(e.$lastVisibleIndex-e.$topIndex))):i.go("mail.account.mailbox").then(function(){t=null,delete e.selectedMessage})}catch(e){}}C.closePopup()})};function A(e,t){null===I()&&I(i.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:C.account,stateMessage:t}}).catch(_.noop).finally(function(){I(null),C.closePopup()}))}this._showMailEditorInPopup=function(e){return!g.isPopup&&"popup"==$.defaults.SOGoMailComposeWindow&&(this.openInPopup(e),!0)},this.close=function(){var e=M.$virtualMode?"mail.account.virtualMailbox":"mail.account.mailbox";n.go(e).then(function(){C.message=null,delete c.selectedMessage})},this.reply=function(e){this._showMailEditorInPopup("reply")||A(e,this.message.$reply())},this.replyAll=function(e){this._showMailEditorInPopup("replyall")||A(e,this.message.$replyAll())},this.forward=function(e){this._showMailEditorInPopup("forward")||A(e,this.message.$forward())},this.edit=function(e){this._showMailEditorInPopup("edit")||this.message.$editableContent().then(function(){A(e,C.message)})},this.openInPopup=function(t){var n=[g.baseURL(),"UIxMailPopupView#!/Mail",this.message.accountId,h(h(this.message.$mailbox.path)),this.message.uid].join("/"),s=this.message.$absolutePath();t&&(n+="/"+t),e.open(n,s,["width=680","height=520","resizable=1","scrollbars=1","toolbar=0","location=0","directories=0","status=0","menubar=0","copyhistory=0"].join(","))},this.closePopup=function(){e.document.body.classList.contains("popup")&&e.close()},this.newMessage=function(e,t){e.stopPropagation(),e.preventDefault(),this.account.$newMessage({mailto:t}).then(function(t){A(e,t)})},this.toggleRawSource=function(e){this.showRawSource||this.message.$rawSource?this.showRawSource=!this.showRawSource:x.$$resource.post(this.message.id,"viewsource").then(function(e){C.message.$rawSource=e,C.showRawSource=!0})},this.print=function(t){e.print()},this.convertToEvent=function(e){return F(e,"appointment")},this.convertToTask=function(e){return F(e,"task")};function F(e,t){C.message.$plainContent().then(function(n){var s={pid:b.$defaultCalendar(),type:t,summary:n.subject,comment:n.content},o=new v(s),a=[g.activeUser("folderURL"),"Calendar","UIx"+t.capitalize()+"EditorTemplate"].join("/");return i.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:a,controller:"ComponentEditorController",controllerAs:"editor",locals:{stateComponent:o}})})}}angular.module("SOGo.MailerUI").controller("MessageController",e)}(),function(){"use strict";e.$inject=["$scope","$window","$stateParams","$mdConstant","$mdUtil","$mdDialog","$mdToast","FileUploader","stateAccount","stateMessage","encodeUriFilter","$timeout","Dialog","AddressBook","Card","Preferences"];function e(e,t,n,s,i,o,a,r,c,u,d,h,g,f,m,p){var $=this;this.$onInit=function(){$.addRecipient=S,$.autocomplete={to:{},cc:{},bcc:{}},$.autosave=null,$.autosaveDrafts=A,$.cancel=x,$.contactFilter=E,$.isFullscreen=!1,$.hideBcc=0===u.editable.bcc.length,$.hideCc=0===u.editable.cc.length,$.identities=_.uniq(_.map(c.identities,"full")),$.message=u,$.recipientSeparatorKeys=[s.KEY_CODE.ENTER,s.KEY_CODE.TAB,s.KEY_CODE.COMMA,s.KEY_CODE.SEMICOLON],$.removeAttachment=M,$.save=C,$.send=w,$.sendState=!1,$.toggleFullscreen=I,$.uploader=new r({url:$.message.$absolutePath({asDraft:!0,withResourcePath:!0})+"/save",autoUpload:!0,alias:"attachments",removeAfterUpload:!1,onSuccessItem:function(e,t,n,s){$.message.$setUID(t.uid),$.message.$reload({asDraft:!1}),e.inlineUrl=t.lastAttachmentAttrs[0].url},onCancelItem:function(e,t,n,s){$.message.$deleteAttachment(e.file.name),this.removeFromQueue(e)},onErrorItem:function(e,t,n,s){a.show(a.simple().content(l('Error while uploading the file "%{0}":',e.file.name)+" "+(t.message?l(t.message):"")).position("top right").action(l("OK")).hideDelay(!1)),this.removeFromQueue(e)}}),p.defaults.SOGoMailAutoSave&&($.autosave=h($.autosaveDrafts,1e3*p.defaults.SOGoMailAutoSave*60)),$.localeCode=p.defaults.LocaleCode,e.$on("$destroy",function(){$.uploader.destroy()}),"reply"==n.actionName?u.$reply().then(function(e){$.message=e,$.hideCc=!e.editable.cc||0===e.editable.cc.length,$.hideBcc=!e.editable.bcc||0===e.editable.bcc.length,v()}):"replyall"==n.actionName?u.$replyAll().then(function(e){$.message=e,$.hideCc=!e.editable.cc||0===e.editable.cc.length,$.hideBcc=!e.editable.bcc||0===e.editable.bcc.length,v()}):"forward"==n.actionName?u.$forward().then(function(e){$.message=e,v(),y()}):angular.isDefined(u)&&($.message=u,v(),y())};function b(){var e,n={};try{t.opener&&"$mailboxController"in t.opener&&"selectedFolder"in t.opener.$mailboxController&&("draft"==t.opener.$mailboxController.selectedFolder.type?(n.draftMailboxCtrl=t.opener.$mailboxController,"$messageController"in t.opener&&t.opener.$messageController.message.uid==u.uid&&(n.draftMessageCtrl=t.opener.$messageController)):u.origin&&(e=u.origin.message,t.opener.$mailboxController.selectedFolder.$id()==e.$mailbox.$id()&&(n.originMailboxCtrl=t.opener.$mailboxController)))}catch(e){}return n}function v(){$.uploader.url=$.message.$absolutePath({asDraft:!0,withResourcePath:!0})+"/save"}function y(){var e,t,n,s=$.message.editable.attachmentAttrs;if(s)for(e=0;e0))return n.path==e;for(var s=0;s0){if(t(i))return!0}else if(i.path==e)return!0}})(this.folder)},this.moveFolder=function(t){this.folder.$move(t),e.close()}}}}angular.module("SOGo.MailerUI").controller("sgMailboxListItemController",e).directive("sgMailboxListItem",function(){return{restrict:"C",require:{accountController:"^^sgAccountSection"},scope:{},bindToController:{mailbox:"=sgMailbox"},template:['
',' '," {{$ctrl.mailbox.$icon}}","
",'

',' ',' ',"

",' ',' '," ",' more_vert'].join(""),controller:"sgMailboxListItemController",controllerAs:"$ctrl"}})}(),function(){e.$inject=["$scope","$element","Mailbox"];function e(e,t,n){var s=this;this.$onInit=function(){var t=["uid","isread","isflagged","flags","subject"];this.MailboxService=n,"draft"==n.selectedFolder.type&&t.push("subject"),e.$watch(function(){return s.message?[_.pick(s.message,t)]:null},function(e,t){s.message&&s.onUpdate()},!0)},this.onUpdate=function(){this.message.isread?t.removeClass("unread"):t.addClass("unread"),n.selectedFolder.isSelectedMessage(this.message.uid,this.message.$mailbox.path)?t.addClass("md-default-theme md-accent md-bg md-hue-2"):t.removeClass("md-default-theme md-accent md-bg md-hue-2")},this.setVisibility=function(e,t){t?e.classList.remove("ng-hide"):e.classList.add("ng-hide")}}angular.module("SOGo.MailerUI").controller("sgMessageListItemController",e).directive("sgMessageListItem",function(){return{restrict:"C",scope:{},bindToController:{message:"=sgMessage"},controller:"sgMessageListItemController"}})}(),function(){e.$inject=["$scope","$element","$parse","$state","$mdUtil","$mdToast","Mailbox","Message","encodeUriFilter"];function e(e,t,n,s,i,o,a,r,l){var c=this;this.$postLink=function(){var n,s,o,l;this.parentController=e.parentController,o=this.parentController.onUpdate,l=this.parentController.setVisibility,_.forEach(t.find("div"),function(e){e.classList.contains("sg-tile-content")?n=angular.element(e):e.classList.contains("sg-tile-icons")&&(s=angular.element(e))}),this.priorityIconElement=n.find("md-icon")[0],a.$virtualMode&&(this.mailboxNameElement=n.find("span")[0],this.mailboxNameElement.classList.remove("ng-hide")),this.senderElement=n.find("span")[1],_.forEach(n.find("div"),function(e){e.classList.contains("sg-tile-subject")?c.subjectElement=e:e.classList.contains("sg-tile-size")?c.sizeElement=e:e.classList.contains("sg-tile-date")&&(c.dateElement=e)}),_.forEach(s.find("md-icon"),function(e){"star"==e.textContent?c.flagIconElement=e:"reply"==e.textContent?c.answerIconElement=e:"forward"==e.textContent?c.forwardIconElement=e:"attach_file"==e.textContent&&(c.attachmentIconElement=e)}),this.parentController.onUpdate=function(){var e;c.message=c.parentController.message;var n=i.nodesToArray(t[0].querySelectorAll(".sg-category"));for(_.forEach(n,function(e){t[0].removeChild(e)}),e=0;e');a.css("left",3*e+"px"),a.css("background-color",c.service.$tags[s][1]),t.prepend(a)}}c.mailboxNameElement&&(c.mailboxNameElement.innerHTML=c.message.$mailbox.$displayName),"sent"==c.MailboxService.selectedFolder.type?c.senderElement.innerHTML=c.message.$shortAddress("to").encodeEntities():c.senderElement.innerHTML=c.message.$shortAddress("from").encodeEntities(),c.message.priority&&c.message.priority.level<3?(c.priorityIconElement.classList.remove("ng-hide"),c.message.priority.level<2?c.priorityIconElement.classList.add("md-warn"):c.priorityIconElement.classList.remove("md-warn")):c.priorityIconElement.classList.add("ng-hide"),c.subjectElement.innerHTML=c.message.subject.encodeEntities(),c.sizeElement.innerHTML=c.message.size,c.dateElement.innerHTML=c.message.relativedate,l(c.flagIconElement,c.message.isflagged),l(c.answerIconElement,c.message.isanswered),l(c.forwardIconElement,c.message.isforwarded),l(c.attachmentIconElement,c.message.hasattachment),angular.bind(c.parentController,o)()},this.service=r,this.MailboxService=a}}angular.module("SOGo.MailerUI").controller("sgMessageListItemMainController",e).directive("sgMessageListItemMain",function(){return{restrict:"C",require:"^^sgMessageListItem",scope:{},template:['
','
',"
",' \x3c!-- mailbox --\x3e',' error'," \x3c!-- sender or recipient --\x3e","
",'
\x3c!-- date --\x3e
',"
",'
','
\x3c!-- subject --\x3e
','
\x3c!-- size --\x3e
',"
","
",'
',' star',' reply',' forward',' attach_file',"
",'
',' \x3c!-- message loading progress --\x3e',"
"].join(""),link:function(e,t,n,s){e.parentController=s},controller:"sgMessageListItemMainController",controllerAs:"$ctrl"}})}(),function(){"use strict";e.$inject=["$element","ImageGallery"];function e(e,t){var n=this;this.$postLink=function(){t.registerImage(e),e.on("click",this.showImage)},this.showImage=function(e){"IMG"==e.target.tagName&&t.showGallery(e,n.partIndex)}}angular.module("SOGo.MailerUI").directive("sgZoomableImage",function(){return{restrict:"A",bindToController:{partIndex:"=sgZoomableImage"},controller:e}})}(); //# sourceMappingURL=Mailer.services.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Mailer.services.js.map b/UI/WebServerResources/js/Mailer.services.js.map index b61dfbd53..b37202ff2 100644 --- a/UI/WebServerResources/js/Mailer.services.js.map +++ b/UI/WebServerResources/js/Mailer.services.js.map @@ -1 +1 @@ -{"version":3,"sources":["Mailer/Account.service.js","Mailer/Mailbox.service.js","Mailer/Message.service.js","Mailer/sgImageGallery.service.js","Mailer/VirtualMailbox.service.js","Mailer/MailboxController.js","Mailer/MailboxesController.js","Mailer/MessageController.js","Mailer/MessageEditorController.js","Mailer/sgAccountSection.directive.js","Mailer/sgIMIP.directive.js","Mailer/sgMailboxListItem.directive.js","Mailer/sgMessageListItem.directive.js","Mailer/sgMessageListItemMain.directive.js","Mailer/sgZoomableImage.directive.js"],"names":["Account","futureAccountData","then","angular","extend","this","_","forEach","identities","identity","fullName","full","email","$log","debug","JSON","stringify","undefined","$factory","$q","$timeout","Settings","Resource","Preferences","Mailbox","Message","$$resource","activeUser","$Preferences","$Mailbox","$Message","module","e","factory","$findAll","data","$unwrapCollection","fetch","o","collection","i","id","$accounts","prototype","getLength","$flattenMailboxes","length","getItemAtIndex","index","expandedMailboxes","$getMailboxes","options","_this","$mailboxes","reload","$find","$expanded","expandedFolders","_visit","mailboxes","indexOf","children","settings","Mail","ExpandedFolders","isString","fromJson","warn","when","allMailboxes","push","all","$$flattenMailboxes","saveState","account","reduce","mailbox","post","$getMailboxByType","type","_find","find","$getMailboxByPath","path","$newMailbox","name","toString","$certificate","security","hasCertificate","$$certificate","reject","$removeCertificate","updateQuota","percent","description","Math","round","usedSpace","maxQuota","l","formatted","$quota","$newMessage","accountId","mailboxPath","message","$absolutePath","asDraft","accountDefaults","defaults","AuxiliaryMailAccounts","alwaysSign","sign","alwaysEncrypt","encrypt","editable","isNew","mailto","isObject","$parseMailto","$addDelegate","user","deferred","defer","param","uid","map","delegates","resolve","users","status","promise","$removeDelegate","splice","futureMailboxData","$account","init","newMailboxData","create","$unwrap","Acl","PRELOAD","$$Acl","$query","sort","asc","selectedFolder","$refreshTimeout","$virtualMode","$virtualPath","SortingState","parseInt","constant","LOOKAHEAD","SIZE","createMailboxes","level","quotas","split","component","asCSSIdentifier","join","isUndefined","uidsMap","headers","$isLoading","$messages","$id","$acl","$displayName","$isEditable","isEditable","$isSpecial","$icon","$isNoInferiors","isNoInferiors","$shadowData","$omit","selectFolder","$lastVisibleIndex","max","$loadMessage","$selectedMessages","filter","selected","$selectedCount","isSelectedMessage","messageId","selectedMessage","$selectedMessage","$selectedMessageIndex","hasSelectedMessage","isDefined","$filter","sortingAttributes","filters","unseenCount","cancel","searchInput","secondFilter","match","searchBy","copy","refreshViewCheck","SOGoRefreshViewCheck","f","bind","timeInterval","endIndex","uids","futureHeadersData","startIndex","loaded","subject","min","loading","$unwrapHeaders","flags","isNoSelect","getClassName","base","$rename","findParent","parent","parentMailbox","$save","sibling","oldPath","localeCompare","pathRE","RegExp","_updateChildren","child","replace","$compact","$canFolderAs","$setFolderAs","$emptyTrash","$markAsRead","isread","$flagMessages","messages","operation","msgUIDs","saveSelectedMessages","selectedMessages","selectedUIDs","filename","download","exportFolder","open","$delete","$_deleteMessages","unseen","firstIndex","forEachRight","selectedIndex","findIndex","$deleteMessages","$markOrUnMarkMessagesAsJunk","method","$copyMessages","folder","$moveMessages","$reset","value","key","save","response","error","$futureMailboxData","$topIndex","invokeMap","threaded","msgs","msg","msgObject","zipObject","isError","j","messageHeaders","$updateSubscribe","action","subscribed","futureMessageData","lazy","$mailbox","$hasUnsafeContent","$loadUnsafeContent","to","cc","bcc","Message_STATUS","STATUS","$avatar","avatar","SOGoMailLabelsColors","$tags","SOGoMailDisplayRemoteInlineImages","$displayRemoteInlineImages","NOT_LOADED","DELAYED_LOADING","LOADING","LOADED","DELAYED_MS","filterTags","query","excludedTags","re","results","keys","tag","pair","search","includes","color","$formatFullAddresses","flag","charAt","buildPath","nocache","draftId","withResourcePath","$setUID","oldUID","attr","constructor","shortname","first","last","image","$shortRecipients","result","count","total","$shortAddress","address","allowReplyAll","recipientsCount","isDraft","loadUnsafeContent","$parts","$content","parts","part","msgclass","content","alternatePart","preferredPart","contentType","isArray","signed","valid","certificate","certificates","encrypted","mixedPart","safeContent","html","unsafeContent","document","createElement","innerHTML","suffix","element","elements","querySelectorAll","removeAttr","compile","$editableContent","from","toLowerCase","text","$plainContent","addTag","$addOrRemoveTag","removeTag","$imipAction","$reload","$sendMDN","shouldAskReceipt","$deleteAttachment","attachmentAttrs","attachment","toggleFlag","isflagged","$loaded","useCache","$futureMessageData","exec","decodeURIComponent","trim","$reply","$newDraft","$replyAll","$forward","origin","$send","startsWith","isanswered","isforwarded","privateAttributes","downloadAttachments","ImageGallery","show","$document","$mdPanel","sgHotkeys","setMessage","registerImage","registerHotkeys","$ctrl","createHotkey","callback","previousImage","nextImage","registerHotkey","showGallery","$event","partIndex","partSrc","src","images","attrs","mimetype","url","body","addClass","panelPosition","newPanelPosition","absolute","panelAnimation","newPanelAnimation","openFrom","target","duration","withAnimation","animation","FADE","config","attachTo","locals","lastIndex","selectedImage","bindToController","controller","PanelController","controllerAs","position","targetEvent","fullscreen","hasBackdrop","template","trapFocus","clickOutsideToClose","escapeToClose","focusOnOpen","onOpenComplete","getElementsByClassName","imgContainer","imgEl","one","naturalWidth","naturalHeight","classList","add","remove","onDomRemoved","removeClass","hotkeys","deregisterHotkey","mdPanelRef","$inject","close","selectImage","VirtualMailbox","setMailboxes","startSearch","params","finally","stopSearch","resetSelectedMessage","len","k","offset","selectedMailbox","transform","messagesMap","size","sum","allMessages","promises","assign","flatten","currentMailbox","$comact","MailboxController","$window","$scope","$state","$mdDialog","$mdToast","stateAccounts","stateAccount","stateMailbox","encodeUriFilter","sgSettings","focus","Dialog","sortLabels","vm","defaultWindowTitle","date","arrival","$onInit","$mailboxController","service","accounts","messageDialog","mode","multiple","searchMode","newMessage","markOrUnMarkMessagesAsJunk","toggleMessageSelection","_nextMessage","preventInClass","_previousMessage","_addNextMessageToSelection","_addPreviousMessageToSelection","hotkey","confirmDeleteSelectedMessages","on","_compactBeforeUnload","$on","off","$watch","title","event","centerIsClose","navController_centerIsClose","field","sortedBy","ascending","preventDefault","cancelSearch","composeWindowEnabled","SOGoMailComposeWindowEnabled","inPopup","SOGoMailComposeWindow","baseURL","wId","random","console","_newMessageInPopup","templateUrl","stateMessage","catch","noop","selectMessage","go","mailboxId","nextSelectedIndex","shiftKey","stopPropagation","_currentMailboxes","_unselectMessage","nextMessage","previousMessage","nextIndex","confirm","ok","deleteSelectedMessage","withoutTrash","moveSelectedMessage","dstFolder","copySelectedMessages","simple","hideDelay","moveSelectedMessages","selectAll","unselectMessages","markSelectedMessagesAsFlagged","markSelectedMessagesAsUnread","markSelectedMessagesAsRead","mdVirtualRepeatContainerDirectiveDecorator","$delegate","resetScroll","$element","updateSize","scrollTo","decorator","MailboxesController","$transitions","$mdMedia","$mdSidenav","sgConstant","User","currentSearchParam","","subfolders","showSubscribedOnly","SOGoMailShowSubscribedFoldersOnly","refreshUnseenCount","selectedFolderController","confirmDelete","hideAdvancedSearch","searchPreviousMailbox","toggleAdvancedSearch","virtualMailbox","root","folders","$current","addSearchParam","v","newSearchParam","pattern","n","searchParam","substring","negative","toggleAccountState","subscribe","SubscriptionsDialogController","srcAccount","hide","showAdvancedSearch","newFolder","parentFolder","prompt","alert","delegate","MailboxDelegationController","userToAdd","searchText","userFilter","closeModal","removeUser","addUser","unseenCountFolders","isDroppableFolder","srcFolder","dragSelectedMessages","dstId","clearMessageView","success","MessageController","Calendar","Component","$messageController","tags","showFlags","$showDetailedRecipients","showRawSource","_unlessInDialog","reply","replyAll","forward","deleteMessage","opener","$watchCollection","newTags","oldTags","ctrls","$parentControllers","messageCtrl","wasflagged","mailboxCtrl","_newTags","_oldTags","difference","_messageDialog","arguments","apply","addFlags","toggleDetailedRecipients","filterMailtoLinks","href","tagName","attributes","state","parentCtrls","closePopup","_showMailEditor","_showMailEditorInPopup","isPopup","openInPopup","destination","edit","contains","toggleRawSource","$rawSource","print","convertToEvent","_convertToComponent","convertToTask","componentData","pid","$defaultCalendar","summary","comment","capitalize","stateComponent","MessageEditorController","$stateParams","$mdConstant","$mdUtil","FileUploader","AddressBook","Card","addRecipient","autocomplete","autosave","autosaveDrafts","contactFilter","isFullscreen","hideBcc","hideCc","uniq","recipientSeparatorKeys","KEY_CODE","ENTER","TAB","COMMA","SEMICOLON","removeAttachment","send","sendState","toggleFullscreen","uploader","autoUpload","alias","removeAfterUpload","onSuccessItem","item","inlineUrl","lastAttachmentAttrs","onCancelItem","file","removeFromQueue","onErrorItem","SOGoMailAutoSave","localeCode","LocaleCode","destroy","actionName","_updateFileUploader","_addAttachments","originMessage","draftMailboxCtrl","draftMessageCtrl","originMailboxCtrl","fileItem","FileItem","progress","isUploaded","isSuccess","queue","isUploading","cancelItem","getElementById","prop","errorMessage","statusText","$filterAll","cards","explodedCards","manyCards","card","uniqBy","$$fullname","$$email","contact","recipients","recipient","list","emailRE","charCodeAt","test","$isList","expandable","refs","ref","$shortFormat","container","c_name","listId","SendMessageToastController","closeToast","sgAccountController","$postLink","quotaElement","div","addMailboxController","mailboxController","selectedMailboxCtrl","ctrl","unselectFolder","directive","restrict","scope","sgImipController","delegateInvitation","delegatedTo","iCalendarAction","receiveUpdates","c_email","viewer","pathToAttachment","link","iElement","sgImipPath","sgMailboxListItemController","editMode","accountController","selectableElement","clickableElement","inputContainer","inputElement","moreOptionsButton","childLevel","editFolder","srcEvent","select","panel","saveFolder","disabled","revertEditing","showMenu","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","itemCtrl","MenuController","panelRef","panelEl","$menuCtrl","markFolderRead","compactFolder","emptyTrashFolder","share","$users","usersWithACL","setFolderAs","require","sgMessageListItemController","watchedAttrs","MailboxService","pick","newId","oldId","onUpdate","setVisibility","visible","sgMessageListItemMainController","$parse","contentDivElement","iconsDivElement","parentControllerOnUpdate","parentController","priorityIconElement","mailboxNameElement","senderElement","subjectElement","sizeElement","dateElement","textContent","flagIconElement","answerIconElement","forwardIconElement","attachmentIconElement","flagElements","nodesToArray","flagElement","removeChild","css","prepend","encodeEntities","priority","relativedate","hasattachment","sgZoomableImageController","showImage"],"mappings":"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","file":"Mailer.services.js"} \ No newline at end of file +{"version":3,"sources":["Mailer/Account.service.js","Mailer/Mailbox.service.js","Mailer/Message.service.js","Mailer/sgImageGallery.service.js","Mailer/VirtualMailbox.service.js","Mailer/MailboxController.js","Mailer/MailboxesController.js","Mailer/MessageController.js","Mailer/MessageEditorController.js","Mailer/sgAccountSection.directive.js","Mailer/sgIMIP.directive.js","Mailer/sgMailboxListItem.directive.js","Mailer/sgMessageListItem.directive.js","Mailer/sgMessageListItemMain.directive.js","Mailer/sgZoomableImage.directive.js"],"names":["Account","futureAccountData","then","angular","extend","this","_","forEach","identities","identity","fullName","full","email","$log","debug","JSON","stringify","undefined","$factory","$q","$timeout","Settings","Resource","Preferences","Mailbox","Message","$$resource","activeUser","$Preferences","$Mailbox","$Message","module","e","factory","$findAll","data","$unwrapCollection","fetch","o","collection","i","id","$accounts","prototype","getLength","$flattenMailboxes","length","getItemAtIndex","index","expandedMailboxes","$getMailboxes","options","_this","$mailboxes","reload","$find","$expanded","expandedFolders","_visit","mailboxes","indexOf","children","settings","Mail","ExpandedFolders","isString","fromJson","warn","when","allMailboxes","push","all","$$flattenMailboxes","saveState","account","reduce","mailbox","post","$getMailboxByType","type","_find","find","$getMailboxByPath","path","$newMailbox","name","toString","$certificate","security","hasCertificate","$$certificate","reject","$removeCertificate","updateQuota","percent","description","Math","round","usedSpace","maxQuota","l","formatted","$quota","$newMessage","accountId","mailboxPath","message","$absolutePath","asDraft","accountDefaults","defaults","AuxiliaryMailAccounts","alwaysSign","sign","alwaysEncrypt","encrypt","editable","isNew","mailto","isObject","$parseMailto","$addDelegate","user","deferred","defer","param","uid","map","delegates","resolve","users","status","promise","$removeDelegate","splice","futureMailboxData","$account","init","newMailboxData","create","$unwrap","Acl","PRELOAD","$$Acl","$query","sort","asc","selectedFolder","$refreshTimeout","$virtualMode","$virtualPath","SortingState","parseInt","constant","LOOKAHEAD","SIZE","createMailboxes","level","quotas","split","component","asCSSIdentifier","join","isUndefined","uidsMap","headers","$isLoading","$messages","$id","$acl","$displayName","$isEditable","isEditable","$isSpecial","$icon","$isNoInferiors","isNoInferiors","$shadowData","$omit","selectFolder","$lastVisibleIndex","max","$loadMessage","$selectedMessages","filter","selected","$selectedCount","isSelectedMessage","messageId","selectedMessage","$selectedMessage","$selectedMessageIndex","hasSelectedMessage","isDefined","$filter","sortingAttributes","filters","unseenCount","cancel","searchInput","secondFilter","match","searchBy","copy","refreshViewCheck","SOGoRefreshViewCheck","f","bind","timeInterval","endIndex","uids","futureHeadersData","startIndex","loaded","subject","min","loading","$unwrapHeaders","flags","isNoSelect","getClassName","base","$rename","findParent","parent","parentMailbox","$save","sibling","oldPath","localeCompare","pathRE","RegExp","_updateChildren","child","replace","$compact","$canFolderAs","$setFolderAs","$emptyTrash","$markAsRead","isread","$flagMessages","messages","operation","msgUIDs","saveSelectedMessages","selectedMessages","selectedUIDs","filename","download","exportFolder","open","$delete","$_deleteMessages","unseen","firstIndex","forEachRight","selectedIndex","findIndex","$deleteMessages","$markOrUnMarkMessagesAsJunk","method","$copyMessages","folder","$moveMessages","$reset","value","key","$move","parentPath","finally","save","response","error","$futureMailboxData","$topIndex","invokeMap","threaded","msgs","msg","msgObject","zipObject","isError","j","messageHeaders","$updateSubscribe","action","subscribed","futureMessageData","lazy","$mailbox","$hasUnsafeContent","$loadUnsafeContent","to","cc","bcc","Message_STATUS","STATUS","$avatar","avatar","SOGoMailLabelsColors","$tags","SOGoMailDisplayRemoteInlineImages","$displayRemoteInlineImages","NOT_LOADED","DELAYED_LOADING","LOADING","LOADED","DELAYED_MS","filterTags","query","excludedTags","re","results","keys","tag","pair","search","includes","color","$formatFullAddresses","flag","charAt","buildPath","nocache","draftId","withResourcePath","$setUID","oldUID","attr","constructor","shortname","first","last","image","$shortRecipients","result","count","total","$shortAddress","address","allowReplyAll","recipientsCount","isDraft","loadUnsafeContent","$parts","$content","parts","part","msgclass","content","alternatePart","preferredPart","contentType","isArray","signed","valid","certificate","certificates","encrypted","mixedPart","safeContent","html","unsafeContent","document","createElement","innerHTML","suffix","element","elements","querySelectorAll","removeAttr","compile","$editableContent","from","toLowerCase","text","$plainContent","addTag","$addOrRemoveTag","removeTag","$imipAction","$reload","$sendMDN","shouldAskReceipt","$deleteAttachment","attachmentAttrs","attachment","toggleFlag","isflagged","$loaded","useCache","$futureMessageData","exec","decodeURIComponent","trim","$reply","$newDraft","$replyAll","$forward","origin","$send","startsWith","isanswered","isforwarded","privateAttributes","downloadAttachments","ImageGallery","show","$document","$mdPanel","sgHotkeys","setMessage","registerImage","registerHotkeys","$ctrl","createHotkey","callback","previousImage","nextImage","registerHotkey","showGallery","$event","partIndex","partSrc","src","images","attrs","mimetype","url","body","addClass","panelPosition","newPanelPosition","absolute","panelAnimation","newPanelAnimation","openFrom","target","duration","withAnimation","animation","FADE","config","attachTo","locals","lastIndex","selectedImage","bindToController","controller","PanelController","controllerAs","position","targetEvent","fullscreen","hasBackdrop","template","trapFocus","clickOutsideToClose","escapeToClose","focusOnOpen","onOpenComplete","getElementsByClassName","imgContainer","imgEl","one","naturalWidth","naturalHeight","classList","add","remove","onDomRemoved","removeClass","hotkeys","deregisterHotkey","mdPanelRef","$inject","close","selectImage","VirtualMailbox","setMailboxes","startSearch","params","stopSearch","resetSelectedMessage","len","k","offset","selectedMailbox","transform","messagesMap","size","sum","allMessages","promises","assign","flatten","currentMailbox","$comact","MailboxController","$window","$scope","$state","$mdDialog","$mdToast","stateAccounts","stateAccount","stateMailbox","encodeUriFilter","sgSettings","focus","Dialog","sortLabels","vm","defaultWindowTitle","date","arrival","$onInit","$mailboxController","service","accounts","messageDialog","mode","multiple","searchMode","newMessage","markOrUnMarkMessagesAsJunk","toggleMessageSelection","_nextMessage","preventInClass","_previousMessage","_addNextMessageToSelection","_addPreviousMessageToSelection","hotkey","confirmDeleteSelectedMessages","on","_compactBeforeUnload","$on","off","$watch","title","event","centerIsClose","navController_centerIsClose","field","sortedBy","ascending","preventDefault","cancelSearch","composeWindowEnabled","SOGoMailComposeWindowEnabled","inPopup","SOGoMailComposeWindow","baseURL","wId","random","console","_newMessageInPopup","templateUrl","stateMessage","catch","noop","selectMessage","go","mailboxId","nextSelectedIndex","shiftKey","stopPropagation","_currentMailboxes","_unselectMessage","nextMessage","previousMessage","nextIndex","confirm","ok","deleteSelectedMessage","withoutTrash","moveSelectedMessage","dstFolder","copySelectedMessages","simple","hideDelay","moveSelectedMessages","selectAll","unselectMessages","markSelectedMessagesAsFlagged","markSelectedMessagesAsUnread","markSelectedMessagesAsRead","mdVirtualRepeatContainerDirectiveDecorator","$delegate","resetScroll","$element","updateSize","scrollTo","decorator","MailboxesController","$transitions","$mdMedia","$mdSidenav","sgConstant","User","currentSearchParam","","subfolders","showSubscribedOnly","SOGoMailShowSubscribedFoldersOnly","refreshUnseenCount","selectedFolderController","confirmDelete","hideAdvancedSearch","searchPreviousMailbox","toggleAdvancedSearch","virtualMailbox","root","folders","$current","addSearchParam","v","newSearchParam","pattern","n","searchParam","substring","negative","toggleAccountState","subscribe","SubscriptionsDialogController","srcAccount","hide","showAdvancedSearch","newFolder","parentFolder","prompt","alert","delegate","MailboxDelegationController","userToAdd","searchText","userFilter","closeModal","removeUser","addUser","unseenCountFolders","isDroppableFolder","srcFolder","dragSelectedMessages","dstId","clearMessageView","success","MessageController","Calendar","Component","$messageController","tags","showFlags","$showDetailedRecipients","showRawSource","_unlessInDialog","reply","replyAll","forward","deleteMessage","opener","$watchCollection","newTags","oldTags","ctrls","$parentControllers","messageCtrl","wasflagged","mailboxCtrl","_newTags","_oldTags","difference","_messageDialog","arguments","apply","addFlags","toggleDetailedRecipients","filterMailtoLinks","href","tagName","attributes","state","parentCtrls","closePopup","_showMailEditor","_showMailEditorInPopup","isPopup","openInPopup","destination","edit","contains","toggleRawSource","$rawSource","print","convertToEvent","_convertToComponent","convertToTask","componentData","pid","$defaultCalendar","summary","comment","capitalize","stateComponent","MessageEditorController","$stateParams","$mdConstant","$mdUtil","FileUploader","AddressBook","Card","addRecipient","autocomplete","autosave","autosaveDrafts","contactFilter","isFullscreen","hideBcc","hideCc","uniq","recipientSeparatorKeys","KEY_CODE","ENTER","TAB","COMMA","SEMICOLON","removeAttachment","send","sendState","toggleFullscreen","uploader","autoUpload","alias","removeAfterUpload","onSuccessItem","item","inlineUrl","lastAttachmentAttrs","onCancelItem","file","removeFromQueue","onErrorItem","SOGoMailAutoSave","localeCode","LocaleCode","destroy","actionName","_updateFileUploader","_addAttachments","originMessage","draftMailboxCtrl","draftMessageCtrl","originMailboxCtrl","fileItem","FileItem","progress","isUploaded","isSuccess","queue","isUploading","cancelItem","getElementById","prop","errorMessage","statusText","$filterAll","cards","explodedCards","manyCards","card","uniqBy","$$fullname","$$email","contact","recipients","recipient","list","emailRE","charCodeAt","test","$isList","expandable","refs","ref","$shortFormat","container","c_name","listId","SendMessageToastController","closeToast","sgAccountController","$postLink","quotaElement","div","addMailboxController","mailboxController","selectedMailboxCtrl","ctrl","unselectFolder","directive","restrict","scope","sgImipController","delegateInvitation","delegatedTo","iCalendarAction","receiveUpdates","c_email","viewer","pathToAttachment","link","iElement","sgImipPath","sgMailboxListItemController","editMode","accountController","selectableElement","clickableElement","inputContainer","inputElement","moreOptionsButton","childLevel","editFolder","srcEvent","select","panel","saveFolder","disabled","revertEditing","showMenu","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","itemCtrl","MenuController","panelRef","panelEl","$menuCtrl","markFolderRead","compactFolder","emptyTrashFolder","share","$users","usersWithACL","setFolderAs","isParentOf","findChildren","moveFolder","require","sgMessageListItemController","watchedAttrs","MailboxService","pick","newId","oldId","onUpdate","setVisibility","visible","sgMessageListItemMainController","$parse","contentDivElement","iconsDivElement","parentControllerOnUpdate","parentController","priorityIconElement","mailboxNameElement","senderElement","subjectElement","sizeElement","dateElement","textContent","flagIconElement","answerIconElement","forwardIconElement","attachmentIconElement","flagElements","nodesToArray","flagElement","removeChild","css","prepend","encodeEntities","priority","relativedate","hasattachment","sgZoomableImageController","showImage"],"mappings":"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","file":"Mailer.services.js"} \ No newline at end of file