diff --git a/UI/WebServerResources/js/Contacts.js b/UI/WebServerResources/js/Contacts.js index b6a79d798..e06dfa54f 100644 --- a/UI/WebServerResources/js/Contacts.js +++ b/UI/WebServerResources/js/Contacts.js @@ -1,2 +1,2 @@ -!function(){"use strict";angular.module("SOGo.ContactsUI",["ngCookies","ui.router","angularFileUpload","ck","SOGo.Common","SOGo.PreferencesUI","SOGo.MailerUI"]).config(e).run(a),e.$inject=["$stateProvider","$urlRouterProvider"];function e(e,a){e.state("app",{url:"/addressbooks",abstract:!0,views:{addressbooks:{templateUrl:"UIxContactFoldersView",controller:"AddressBooksController",controllerAs:"app"}},resolve:{stateAddressbooks:t}}).state("app.addressbook",{url:"/:addressbookId",views:{addressbook:{templateUrl:"addressbook",controller:"AddressBookController",controllerAs:"addressbook"}},resolve:{stateAddressbook:o}}).state("app.addressbook.new",{url:"/{contactType:(?:card|list)}/new",params:{refs:{array:!0}},views:{card:{templateUrl:"UIxContactEditorTemplate",controller:"CardController",controllerAs:"editor"}},resolve:{stateCard:r}}).state("app.addressbook.card",{url:"/:cardId",abstract:!0,views:{card:{template:""}},resolve:{stateCard:s},onEnter:d,onExit:n}).state("app.addressbook.card.view",{url:"/view",views:{"card@app.addressbook":{templateUrl:"UIxContactViewTemplate",controller:"CardController",controllerAs:"editor"}}}).state("app.addressbook.card.editor",{url:"/edit",views:{"card@app.addressbook":{templateUrl:"UIxContactEditorTemplate",controller:"CardController",controllerAs:"editor"}}}),a.otherwise("/addressbooks/personal")}t.$inject=["AddressBook"];function t(e){return e.$findAll(window.contactFolders)}o.$inject=["$q","$state","$stateParams","AddressBook"];function o(e,t,o,r){var s=_.find(r.$findAll(),function(e){return e.id==o.addressbookId});return s?(delete s.selectedCard,s.$reload(),s):e.reject("Addressbook "+o.addressbookId+" not found")}r.$inject=["$stateParams","stateAddressbook","Card"];function r(e,t,o){var r="v"+e.contactType,s=new o({pid:e.addressbookId,c_component:r,refs:e.refs});return t.selectedCard=!0,s}s.$inject=["$state","$stateParams","stateAddressbook"];function s(e,t,o){return o.$futureAddressBookData.then(function(){var r=_.find(o.$cards,function(e){return e.id==t.cardId});if(r)return r.$reload();e.go("app.addressbook")})}d.$inject=["$stateParams","stateAddressbook"];function d(e,t){t.selectedCard=e.cardId}n.$inject=["stateAddressbook"];function n(e){delete o.selectedCard}a.$inject=["$rootScope","$log","$state"];function a(e,t,o){e.$on("$stateChangeError",function(e,r,s,d,n,a){t.error(a),o.go("app.addressbook",{addressbookId:"personal"})}),e.$on("$routeChangeError",function(e,o,r,s){t.error(e,o,r,s)})}}(),function(){"use strict";e.$inject=["$scope","$q","$window","$state","$timeout","$mdDialog","$mdToast","Account","Card","AddressBook","sgFocus","Dialog","sgSettings","sgHotkeys","stateAddressbooks","stateAddressbook"];function e(e,t,o,r,s,d,n,a,c,i,u,f,p,h,m,g){var $=this,k=[];this.$onInit=function(){i.selectedFolder=g,this.service=i,this.selectedFolder=g,this.mode={search:!1,multiple:0},(t=k).push(h.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:angular.bind($,$.searchMode)})),t.push(h.createHotkey({key:l("key_create_card"),description:l("Create a new address book card"),callback:angular.bind($,$.newComponent,"card")})),t.push(h.createHotkey({key:l("key_create_list"),description:l("Create a new list"),callback:angular.bind($,$.newComponent,"list")})),t.push(h.createHotkey({key:"space",description:l("Toggle item"),callback:angular.bind($,$.toggleCardSelection)})),t.push(h.createHotkey({key:"shift+space",description:l("Toggle range of items"),callback:angular.bind($,$.toggleCardSelection)})),t.push(h.createHotkey({key:"up",description:l("View next item"),callback:b})),t.push(h.createHotkey({key:"down",description:l("View previous item"),callback:C})),t.push(h.createHotkey({key:"shift+up",description:l("Add next item to selection"),callback:v})),t.push(h.createHotkey({key:"shift+down",description:l("Add previous item to selection"),callback:w})),_.forEach(["backspace","delete"],function(e){t.push(h.createHotkey({key:e,description:l("Delete selected card or address book"),callback:angular.bind($,$.confirmDeleteSelectedCards)}))}),_.forEach(t,function(e){h.registerHotkey(e)});var t;e.$on("$destroy",function(){_.forEach(k,function(e){h.deregisterHotkey(e)})})};this.selectCard=function(e){r.go("app.addressbook.card.view",{cardId:e.id})},this.toggleCardSelection=function(e,t){var o,r,s,d=this.selectedFolder;if(t||(t=d.$selectedCard()),t.selected=!t.selected,this.mode.multiple+=t.selected?1:-1,e.shiftKey&&d.$selectedCount()>1){for(r=(o=d.idsMap[t.id])-2;r>=0&&!d.$cards[r].selected;)r--;if(r<0)for(r=o+2;r=0&&r0&&$.selectedFolder.$topIndex--):(t=$.selectedFolder.$cards.length()-1,$.selectedFolder.$topIndex=$.selectedFolder.getLength()),t>-1&&$.selectCard($.selectedFolder.$cards[t]),e.preventDefault(),t}function C(e){var t=$.selectedFolder.$selectedCardIndex();return angular.isDefined(t)?(t++,$.selectedFolder.$topIndex<$.selectedFolder.$cards.length&&$.selectedFolder.$topIndex++):t=0,t<$.selectedFolder.$cards.length?$.selectCard($.selectedFolder.$cards[t]):t=-1,e.preventDefault(),t}function v(e){var t;$.selectedFolder.hasSelectedCard()&&(t=b(e))>=0&&toggleCardSelection(e,$.selectedFolder.$cards[t])}function w(e){var t;$.selectedFolder.hasSelectedCard()&&(t=C(e))>=0&&toggleCardSelection(e,$.selectedFolder.$cards[t])}this.confirmDeleteSelectedCards=function(e){var t=this.selectedFolder.$selectedCards();_.size(t)>0&&f.confirm(l("Warning"),l("Are you sure you want to delete the selected contacts?"),{ok:l("Delete")}).then(function(){$.selectedFolder.$deleteCards(t).then(function(){$.mode.multiple=0,$.selectedFolder.selectedCard||r.go("app.addressbook")})}),e.preventDefault()};function y(e,t){var o,s,d,a,c,i,u;o=$.selectedFolder,c=!1,s=o.$selectedCards(),(d=_.filter(s,function(e){return e.$isCard()})).length!=s.length&&n.show(n.simple().content(l("Lists can't be moved or copied.")).position("top right").hideDelay(2e3)),d.length&&("copy"==e?(i=o.$copyCards(d,t),u=l("%{0} card(s) copied",d.length)):(i=o.$moveCards(d,t),u=l("%{0} card(s) moved",d.length),a=_.map(d,"id"),c=o.selectedCard&&a.indexOf(o.selectedCard)>=0),i.then(function(){c&&r.go("app.addressbook"),n.show(n.simple().content(u).position("top right").hideDelay(2e3))}))}this.copySelectedCards=function(e){y("copy",e)},this.moveSelectedCards=function(e){y("move",e)},this.selectAll=function(){_.forEach(this.selectedFolder.$cards,function(e){e.selected=!0}),this.mode.multiple=this.selectedFolder.$cards.length},this.sort=function(e){this.selectedFolder.$filter("",{sort:e})},this.sortedBy=function(e){return i.$query.sort==e},this.searchMode=function(){$.mode.search=!0,u("search")},this.cancelSearch=function(){this.mode.search=!1,this.selectedFolder.$filter("")},this.newMessage=function(e,t,o){a.$findAll().then(function(r){var s=_.find(r,function(e){if(0===e.id)return e});s.$getMailboxes().then(function(r){s.$newMessage().then(function(r){r.editable[o]=t,d.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"../Mail/UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:s,stateMessage:r}})})})})},this.newMessageWithRecipient=function(e,t,o){var r=[o+" <"+t+">"];this.newMessage(e,r,"to"),e.stopPropagation(),e.preventDefault()},this.newMessageWithSelectedCards=function(e,o){var r=_.filter(this.selectedFolder.$cards,function(e){return e.selected}),s=[],d=[];_.forEach(r,function(e){e.$isList({expandable:!0})?angular.isDefined(e.refs)&&e.refs.length?_.forEach(e.refs,function(e){e.email.length&&d.push(e.$shortFormat())}):s.push(e.$reload().then(function(e){_.forEach(e.refs,function(e){e.email.length&&d.push(e.$shortFormat())})})):e.c_mail.length&&d.push(e.$shortFormat())}),t.all(s).then(function(){(d=_.uniq(d)).length&&$.newMessage(e,d,o)})},this.newListWithSelectedCards=function(){var e=_.filter(this.selectedFolder.$cards,function(e){return e.selected}),o=[],s=[];_.forEach(e,function(e){e.$isList({expandable:!0})?angular.isDefined(e.refs)&&e.refs.length?_.forEach(e.refs,function(e){e.email.length&&s.push(e)}):o.push(e.$reload().then(function(e){_.forEach(e.refs,function(e){e.email.length&&s.push(e)})})):e.$$email&&e.$$email.length&&s.push(e)}),t.all(o).then(function(){(s=_.uniqBy(_.map(s,function(e){return{reference:e.id||e.reference,email:e.$$email||e.email}}),"reference")).length&&r.go("app.addressbook.new",{contactType:"list",refs:s})})}}angular.module("SOGo.ContactsUI").controller("AddressBookController",e)}(),function(){"use strict";e.$inject=["$q","$state","$scope","$rootScope","$stateParams","$timeout","$window","$mdDialog","$mdToast","$mdMedia","$mdSidenav","FileUploader","sgConstant","sgHotkeys","sgFocus","Card","AddressBook","Dialog","sgSettings","User","stateAddressbooks"];function e(e,t,o,r,s,d,n,a,c,i,u,f,p,h,m,g,$,k,b,C,v){var w=this,y=[];w.activeUser=b.activeUser,w.service=$,w.select=function(e,o){t.params.addressbookId!=o.id&&w.editMode!=o.id&&(w.editMode=!1,$.$query.value="",i(p["gt-md"])||u("left").close(),t.go("app.addressbook",{addressbookId:o.id}))},w.newAddressbook=function(){k.prompt(l("New Addressbook..."),l("Name of the Address Book")).then(function(e){var t=new $({name:e,isEditable:!0,isRemote:!1,owner:UserLogin});$.$add(t)})},w.edit=function(e){e.isRemote||(w.editMode=e.id,w.originalAddressbook=e.$omit(),m("addressBookName_"+e.id))},w.revertEditing=function(e){e.name=w.originalAddressbook.name,w.editMode=!1},w.save=function(e){var t=e.name;t&&t.length>0&&(t!=w.originalAddressbook.name?e.$rename(t).then(function(e){w.editMode=!1},function(e,t){k.alert(l("Warning"),e)}):w.editMode=!1)},w.confirmDelete=A,w.importCards=function(e,t){a.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxContactsImportDialog",controller:o,controllerAs:"$CardsImportDialogController",locals:{folder:t}}),o.$inject=["scope","$mdDialog","folder"];function o(e,t,o){this.uploader=new f({url:ApplicationBaseURL+[o.id,"import"].join("/"),autoUpload:!0,queueLimit:1,filters:[{name:r,fn:r}],onSuccessItem:function(e,o,r,s){var d;t.hide(),0===o.imported?d=l("No card was imported."):(d=l("A total of %{0} cards were imported in the addressbook.",o.imported),$.selectedFolder.$reload()),c.show(c.simple().content(d).position("top right").hideDelay(3e3))},onErrorItem:function(e,t,o,r){c.show({template:["",'
',' error_outline'," "+l("An error occured while importing contacts.")+"","
","
"].join(""),position:"top right",hideDelay:3e3})}}),this.close=function(){t.hide()};function r(e){var t=0===e.type.indexOf("text")||/\.(ldif|vcf|vcard)$/.test(e.name);return t||c.show({template:["",'
',' error_outline'," "+l("Select a vCard or LDIF file.")+"","
","
"].join(""),position:"top right",hideDelay:3e3}),t}}},w.showLinks=function(t){var o;o=t.urls?e.when():$.$reloadAll();o.then(function(){a.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:t.id+"/links",controller:r,controllerAs:"links",locals:{addressbook:t}})}),r.$inject=["$mdDialog","addressbook"];function r(e,t){this.addressbook=t,this.close=function(){e.hide()}}},w.showProperties=function(e){a.show({templateUrl:e.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcAddressBook:e}}).catch(function(){}),t.$inject=["$scope","$mdDialog","srcAddressBook"];function t(e,t,o){var r=this;r.addressbook=new $(o.$omit()),r.saveProperties=function(){r.addressbook.$save().then(function(){o.init(r.addressbook.$omit()),t.hide()})},r.close=function(){t.cancel()}}},w.share=function(e){e.$acl.$users().then(function(){a.show({templateUrl:e.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:e.$acl.users,User:C,folder:e}})})},w.subscribeToFolder=function(e){console.debug("subscribeToFolder "+e.owner+e.name),$.$subscribe(e.owner,e.name).then(function(e){c.show(c.simple().content(l("Successfully subscribed to address book")).position("top right").hideDelay(3e3))})},w.isDroppableFolder=function(e,t){return t.id!=e.id&&(t.isOwned||t.acls.objectCreator)},w.dragSelectedCards=function(e,o,r){var s,d,n,a,i,u,f;s=o.id,i=!1,0===(d=e.$selectedCards()).length&&(d=[e.$selectedCard()]);(n=_.filter(d,function(e){return e.$isCard()})).length!=d.length&&c.show(c.simple().content(l("Lists can't be moved or copied.")).position("top right").hideDelay(2e3));n.length&&("copy"==r?(u=e.$copyCards(n,s),f=l("%{0} card(s) copied",n.length)):(u=e.$moveCards(n,s),f=l("%{0} card(s) moved",n.length),a=_.map(n,"id"),i=e.selectedCard&&a.indexOf(e.selectedCard)>=0),u.then(function(){i&&t.go("app.addressbook"),c.show(c.simple().content(f).position("top right").hideDelay(2e3))}))},F=y,_.forEach(["backspace","delete"],function(e){F.push(h.createHotkey({key:e,description:l("Delete selected card or address book"),callback:function(){$.selectedFolder&&!$.selectedFolder.hasSelectedCard()&&A()}}))}),_.forEach(F,function(e){h.registerHotkey(e)});var F;o.$on("$destroy",function(){_.forEach(y,function(e){h.deregisterHotkey(e)})});function A(){w.service.selectedFolder.isSubscription?w.service.selectedFolder.$delete().then(function(){w.service.selectedFolder=null,t.go("app.addressbook",{addressbookId:"personal"})},function(e,t){k.alert(l('An error occured while deleting the addressbook "%{0}".',w.service.selectedFolder.name),l(e.error))}):k.confirm(l("Warning"),l('Are you sure you want to delete the addressbook "%{0}"?',w.service.selectedFolder.name),{ok:l("Delete")}).then(function(){return w.service.selectedFolder.$delete()}).then(function(){return w.service.selectedFolder=null,t.go("app.addressbook",{addressbookId:"personal"}),!0}).catch(function(e){if(e){var t=e.data.message||e.statusText;k.alert(l('An error occured while deleting the addressbook "%{0}".',w.service.selectedFolder.name),t)}})}}angular.module("SOGo.ContactsUI").controller("AddressBooksController",e)}(),function(){"use strict";e.$inject=["$scope","$timeout","$window","$mdDialog","sgSettings","AddressBook","Card","Dialog","sgHotkeys","sgFocus","$state","$stateParams","stateCard"];function e(e,t,o,r,s,d,n,a,c,i,u,f,p){var h=this,m=[];h.card=p,h.currentFolder=d.selectedFolder,h.allEmailTypes=n.$EMAIL_TYPES,h.allTelTypes=n.$TEL_TYPES,h.allUrlTypes=n.$URL_TYPES,h.allAddressTypes=n.$ADDRESS_TYPES,h.categories={},h.userFilterResults=[],h.transformCategory=function(e){return angular.isString(e)?{value:e}:e},h.removeAttribute=function(e,t,o){h.card.$delete(t,o),e.$setDirty()},h.addOrg=function(){var e=h.card.$addOrg({value:""});i("org_"+e)},h.addBirthday=function(){h.card.birthday=new Date},h.addScreenName=function(){h.card.$addScreenName("")},h.addEmail=function(){var e=h.card.$addEmail("");i("email_"+e)},h.addPhone=function(){var e=h.card.$addPhone("");i("phone_"+e)},h.addUrl=function(){var e=h.card.$addUrl("","");i("url_"+e)},h.addAddress=function(){var e=h.card.$addAddress("","","","","","","","");i("address_"+e)},h.canAddCustomField=function(){return _.keys(p.customFields).length<4},h.addCustomField=function(){angular.isDefined(h.card.customFields)||(h.card.customFields={});var e=_.pullAll(["1","2","3","4"],_.keys(p.customFields));h.card.customFields[e[0]]=""},h.deleteCustomField=function(e){delete h.card.customFields[e]},h.userFilter=function(e,t){return e.length"+e.$fullname()+""),{ok:l("Delete")}).then(function(){d.selectedFolder.$deleteCards([e]).then(function(){$()},function(t,o){a.alert(l("Warning"),l('An error occured while deleting the card "%{0}".',e.$fullname()))})})}}angular.module("SOGo.ContactsUI").controller("CardController",e)}(),function(){"use strict";angular.module("SOGo.Common").directive("sgAddress",function(){return{restrict:"A",scope:{data:"=sgAddress"},controller:["$scope",function(e){e.addressLines=function(e){var t=[],o=[];return e.street&&t.push(e.street),e.street2&&t.push(e.street2),e.locality&&o.push(e.locality),e.region&&o.push(e.region),o.length>0&&t.push(o.join(", ")),e.country&&t.push(e.country),e.postalcode&&t.push(e.postalcode),t.join("
")}}],template:'
'}})}(); +!function(){"use strict";angular.module("SOGo.ContactsUI",["ngCookies","ui.router","angularFileUpload","ck","SOGo.Common","SOGo.PreferencesUI","SOGo.MailerUI"]).config(e).run(a),e.$inject=["$stateProvider","$urlRouterProvider"];function e(e,a){e.state("app",{url:"/addressbooks",abstract:!0,views:{addressbooks:{templateUrl:"UIxContactFoldersView",controller:"AddressBooksController",controllerAs:"app"}},resolve:{stateAddressbooks:t}}).state("app.addressbook",{url:"/:addressbookId",views:{addressbook:{templateUrl:"addressbook",controller:"AddressBookController",controllerAs:"addressbook"}},resolve:{stateAddressbook:o}}).state("app.addressbook.new",{url:"/{contactType:(?:card|list)}/new",params:{refs:{array:!0}},views:{card:{templateUrl:"UIxContactEditorTemplate",controller:"CardController",controllerAs:"editor"}},resolve:{stateCard:r}}).state("app.addressbook.card",{url:"/:cardId",abstract:!0,views:{card:{template:""}},resolve:{stateCard:s},onEnter:d,onExit:n}).state("app.addressbook.card.view",{url:"/view",views:{"card@app.addressbook":{templateUrl:"UIxContactViewTemplate",controller:"CardController",controllerAs:"editor"}}}).state("app.addressbook.card.editor",{url:"/edit",views:{"card@app.addressbook":{templateUrl:"UIxContactEditorTemplate",controller:"CardController",controllerAs:"editor"}}}),a.otherwise("/addressbooks/personal")}t.$inject=["AddressBook"];function t(e){return e.$findAll(window.contactFolders)}o.$inject=["$q","$state","$stateParams","AddressBook"];function o(e,t,o,r){var s=_.find(r.$findAll(),function(e){return e.id==o.addressbookId});return s?(delete s.selectedCard,s.$reload(),s):e.reject("Addressbook "+o.addressbookId+" not found")}r.$inject=["$stateParams","stateAddressbook","Card"];function r(e,t,o){var r="v"+e.contactType,s=new o({pid:e.addressbookId,c_component:r,refs:e.refs});return t.selectedCard=!0,s}s.$inject=["$state","$stateParams","stateAddressbook"];function s(e,t,o){return o.$futureAddressBookData.then(function(){var r=_.find(o.$cards,function(e){return e.id==t.cardId});if(r)return r.$reload();e.go("app.addressbook")})}d.$inject=["$stateParams","stateAddressbook"];function d(e,t){t.selectedCard=e.cardId}n.$inject=["stateAddressbook"];function n(e){delete o.selectedCard}a.$inject=["$rootScope","$log","$state"];function a(e,t,o){e.$on("$stateChangeError",function(e,r,s,d,n,a){t.error(a),o.go("app.addressbook",{addressbookId:"personal"})}),e.$on("$routeChangeError",function(e,o,r,s){t.error(e,o,r,s)})}}(),function(){"use strict";e.$inject=["$scope","$q","$window","$state","$timeout","$mdDialog","$mdToast","Account","Card","AddressBook","sgFocus","Dialog","sgSettings","sgHotkeys","stateAddressbooks","stateAddressbook"];function e(e,t,o,r,s,d,n,a,c,i,u,f,h,p,m,g){var $=this,k=[];this.$onInit=function(){i.selectedFolder=g,this.service=i,this.selectedFolder=g,this.mode={search:!1,multiple:0},(t=k).push(p.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:angular.bind($,$.searchMode)})),t.push(p.createHotkey({key:l("key_create_card"),description:l("Create a new address book card"),callback:angular.bind($,$.newComponent,"card")})),t.push(p.createHotkey({key:l("key_create_list"),description:l("Create a new list"),callback:angular.bind($,$.newComponent,"list")})),t.push(p.createHotkey({key:"space",description:l("Toggle item"),callback:angular.bind($,$.toggleCardSelection)})),t.push(p.createHotkey({key:"shift+space",description:l("Toggle range of items"),callback:angular.bind($,$.toggleCardSelection)})),t.push(p.createHotkey({key:"up",description:l("View next item"),callback:b})),t.push(p.createHotkey({key:"down",description:l("View previous item"),callback:C})),t.push(p.createHotkey({key:"shift+up",description:l("Add next item to selection"),callback:v})),t.push(p.createHotkey({key:"shift+down",description:l("Add previous item to selection"),callback:w})),_.forEach(["backspace","delete"],function(e){t.push(p.createHotkey({key:e,description:l("Delete selected card or address book"),callback:angular.bind($,$.confirmDeleteSelectedCards)}))}),_.forEach(t,function(e){p.registerHotkey(e)});var t;e.$on("$destroy",function(){_.forEach(k,function(e){p.deregisterHotkey(e)})})};this.centerIsClose=function(e){return this.selectedFolder.hasSelectedCard()&&!!e},this.selectCard=function(e){r.go("app.addressbook.card.view",{cardId:e.id})},this.toggleCardSelection=function(e,t){var o,r,s,d=this.selectedFolder;if(t||(t=d.$selectedCard()),t.selected=!t.selected,this.mode.multiple+=t.selected?1:-1,e.shiftKey&&d.$selectedCount()>1){for(r=(o=d.idsMap[t.id])-2;r>=0&&!d.$cards[r].selected;)r--;if(r<0)for(r=o+2;r=0&&r0&&$.selectedFolder.$topIndex--):(t=$.selectedFolder.$cards.length()-1,$.selectedFolder.$topIndex=$.selectedFolder.getLength()),t>-1&&$.selectCard($.selectedFolder.$cards[t]),e.preventDefault(),t}function C(e){var t=$.selectedFolder.$selectedCardIndex();return angular.isDefined(t)?(t++,$.selectedFolder.$topIndex<$.selectedFolder.$cards.length&&$.selectedFolder.$topIndex++):t=0,t<$.selectedFolder.$cards.length?$.selectCard($.selectedFolder.$cards[t]):t=-1,e.preventDefault(),t}function v(e){var t;$.selectedFolder.hasSelectedCard()&&(t=b(e))>=0&&toggleCardSelection(e,$.selectedFolder.$cards[t])}function w(e){var t;$.selectedFolder.hasSelectedCard()&&(t=C(e))>=0&&toggleCardSelection(e,$.selectedFolder.$cards[t])}this.confirmDeleteSelectedCards=function(e){var t=this.selectedFolder.$selectedCards();_.size(t)>0&&f.confirm(l("Warning"),l("Are you sure you want to delete the selected contacts?"),{ok:l("Delete")}).then(function(){$.selectedFolder.$deleteCards(t).then(function(){$.mode.multiple=0,$.selectedFolder.selectedCard||r.go("app.addressbook")})}),e.preventDefault()};function y(e,t){var o,s,d,a,c,i,u;o=$.selectedFolder,c=!1,s=o.$selectedCards(),(d=_.filter(s,function(e){return e.$isCard()})).length!=s.length&&n.show(n.simple().content(l("Lists can't be moved or copied.")).position("top right").hideDelay(2e3)),d.length&&("copy"==e?(i=o.$copyCards(d,t),u=l("%{0} card(s) copied",d.length)):(i=o.$moveCards(d,t),u=l("%{0} card(s) moved",d.length),a=_.map(d,"id"),c=o.selectedCard&&a.indexOf(o.selectedCard)>=0),i.then(function(){c&&r.go("app.addressbook"),n.show(n.simple().content(u).position("top right").hideDelay(2e3))}))}this.copySelectedCards=function(e){y("copy",e)},this.moveSelectedCards=function(e){y("move",e)},this.selectAll=function(){_.forEach(this.selectedFolder.$cards,function(e){e.selected=!0}),this.mode.multiple=this.selectedFolder.$cards.length},this.sort=function(e){this.selectedFolder.$filter("",{sort:e})},this.sortedBy=function(e){return i.$query.sort==e},this.searchMode=function(){$.mode.search=!0,u("search")},this.cancelSearch=function(){this.mode.search=!1,this.selectedFolder.$filter("")},this.newMessage=function(e,t,o){a.$findAll().then(function(r){var s=_.find(r,function(e){if(0===e.id)return e});s.$getMailboxes().then(function(r){s.$newMessage().then(function(r){r.editable[o]=t,d.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"../Mail/UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:s,stateMessage:r}})})})})},this.newMessageWithRecipient=function(e,t,o){var r=[o+" <"+t+">"];this.newMessage(e,r,"to"),e.stopPropagation(),e.preventDefault()},this.newMessageWithSelectedCards=function(e,o){var r=_.filter(this.selectedFolder.$cards,function(e){return e.selected}),s=[],d=[];_.forEach(r,function(e){e.$isList({expandable:!0})?angular.isDefined(e.refs)&&e.refs.length?_.forEach(e.refs,function(e){e.email.length&&d.push(e.$shortFormat())}):s.push(e.$reload().then(function(e){_.forEach(e.refs,function(e){e.email.length&&d.push(e.$shortFormat())})})):e.c_mail.length&&d.push(e.$shortFormat())}),t.all(s).then(function(){(d=_.uniq(d)).length&&$.newMessage(e,d,o)})},this.newListWithSelectedCards=function(){var e=_.filter(this.selectedFolder.$cards,function(e){return e.selected}),o=[],s=[];_.forEach(e,function(e){e.$isList({expandable:!0})?angular.isDefined(e.refs)&&e.refs.length?_.forEach(e.refs,function(e){e.email.length&&s.push(e)}):o.push(e.$reload().then(function(e){_.forEach(e.refs,function(e){e.email.length&&s.push(e)})})):e.$$email&&e.$$email.length&&s.push(e)}),t.all(o).then(function(){(s=_.uniqBy(_.map(s,function(e){return{reference:e.id||e.reference,email:e.$$email||e.email}}),"reference")).length&&r.go("app.addressbook.new",{contactType:"list",refs:s})})}}angular.module("SOGo.ContactsUI").controller("AddressBookController",e)}(),function(){"use strict";e.$inject=["$q","$state","$scope","$rootScope","$stateParams","$timeout","$window","$mdDialog","$mdToast","$mdMedia","$mdSidenav","FileUploader","sgConstant","sgHotkeys","sgFocus","Card","AddressBook","Dialog","sgSettings","User","stateAddressbooks"];function e(e,t,o,r,s,d,n,a,c,i,u,f,h,p,m,g,$,k,b,C,v){var w=this,y=[];w.activeUser=b.activeUser,w.service=$,w.select=function(e,o){t.params.addressbookId!=o.id&&w.editMode!=o.id&&(w.editMode=!1,$.$query.value="",i(h["gt-md"])||u("left").close(),t.go("app.addressbook",{addressbookId:o.id}))},w.newAddressbook=function(){k.prompt(l("New Addressbook..."),l("Name of the Address Book")).then(function(e){var t=new $({name:e,isEditable:!0,isRemote:!1,owner:UserLogin});$.$add(t)})},w.edit=function(e){e.isRemote||(w.editMode=e.id,w.originalAddressbook=e.$omit(),m("addressBookName_"+e.id))},w.revertEditing=function(e){e.name=w.originalAddressbook.name,w.editMode=!1},w.save=function(e){var t=e.name;t&&t.length>0&&(t!=w.originalAddressbook.name?e.$rename(t).then(function(e){w.editMode=!1},function(e,t){k.alert(l("Warning"),e)}):w.editMode=!1)},w.confirmDelete=A,w.importCards=function(e,t){a.show({parent:angular.element(document.body),targetEvent:e,clickOutsideToClose:!0,escapeToClose:!0,templateUrl:"UIxContactsImportDialog",controller:o,controllerAs:"$CardsImportDialogController",locals:{folder:t}}),o.$inject=["scope","$mdDialog","folder"];function o(e,t,o){this.uploader=new f({url:ApplicationBaseURL+[o.id,"import"].join("/"),autoUpload:!0,queueLimit:1,filters:[{name:r,fn:r}],onSuccessItem:function(e,o,r,s){var d;t.hide(),0===o.imported?d=l("No card was imported."):(d=l("A total of %{0} cards were imported in the addressbook.",o.imported),$.selectedFolder.$reload()),c.show(c.simple().content(d).position("top right").hideDelay(3e3))},onErrorItem:function(e,t,o,r){c.show({template:["",'
',' error_outline'," "+l("An error occured while importing contacts.")+"","
","
"].join(""),position:"top right",hideDelay:3e3})}}),this.close=function(){t.hide()};function r(e){var t=0===e.type.indexOf("text")||/\.(ldif|vcf|vcard)$/.test(e.name);return t||c.show({template:["",'
',' error_outline'," "+l("Select a vCard or LDIF file.")+"","
","
"].join(""),position:"top right",hideDelay:3e3}),t}}},w.showLinks=function(t){var o;o=t.urls?e.when():$.$reloadAll();o.then(function(){a.show({parent:angular.element(document.body),clickOutsideToClose:!0,escapeToClose:!0,templateUrl:t.id+"/links",controller:r,controllerAs:"links",locals:{addressbook:t}})}),r.$inject=["$mdDialog","addressbook"];function r(e,t){this.addressbook=t,this.close=function(){e.hide()}}},w.showProperties=function(e){a.show({templateUrl:e.id+"/properties",controller:t,controllerAs:"properties",clickOutsideToClose:!0,escapeToClose:!0,locals:{srcAddressBook:e}}).catch(function(){}),t.$inject=["$scope","$mdDialog","srcAddressBook"];function t(e,t,o){var r=this;r.addressbook=new $(o.$omit()),r.saveProperties=function(){r.addressbook.$save().then(function(){o.init(r.addressbook.$omit()),t.hide()})},r.close=function(){t.cancel()}}},w.share=function(e){e.$acl.$users().then(function(){a.show({templateUrl:e.id+"/UIxAclEditor",controller:"AclController",controllerAs:"acl",clickOutsideToClose:!0,escapeToClose:!0,locals:{usersWithACL:e.$acl.users,User:C,folder:e}})})},w.subscribeToFolder=function(e){console.debug("subscribeToFolder "+e.owner+e.name),$.$subscribe(e.owner,e.name).then(function(e){c.show(c.simple().content(l("Successfully subscribed to address book")).position("top right").hideDelay(3e3))})},w.isDroppableFolder=function(e,t){return t.id!=e.id&&(t.isOwned||t.acls.objectCreator)},w.dragSelectedCards=function(e,o,r){var s,d,n,a,i,u,f;s=o.id,i=!1,0===(d=e.$selectedCards()).length&&(d=[e.$selectedCard()]);(n=_.filter(d,function(e){return e.$isCard()})).length!=d.length&&c.show(c.simple().content(l("Lists can't be moved or copied.")).position("top right").hideDelay(2e3));n.length&&("copy"==r?(u=e.$copyCards(n,s),f=l("%{0} card(s) copied",n.length)):(u=e.$moveCards(n,s),f=l("%{0} card(s) moved",n.length),a=_.map(n,"id"),i=e.selectedCard&&a.indexOf(e.selectedCard)>=0),u.then(function(){i&&t.go("app.addressbook"),c.show(c.simple().content(f).position("top right").hideDelay(2e3))}))},F=y,_.forEach(["backspace","delete"],function(e){F.push(p.createHotkey({key:e,description:l("Delete selected card or address book"),callback:function(){$.selectedFolder&&!$.selectedFolder.hasSelectedCard()&&A()}}))}),_.forEach(F,function(e){p.registerHotkey(e)});var F;o.$on("$destroy",function(){_.forEach(y,function(e){p.deregisterHotkey(e)})});function A(){w.service.selectedFolder.isSubscription?w.service.selectedFolder.$delete().then(function(){w.service.selectedFolder=null,t.go("app.addressbook",{addressbookId:"personal"})},function(e,t){k.alert(l('An error occured while deleting the addressbook "%{0}".',w.service.selectedFolder.name),l(e.error))}):k.confirm(l("Warning"),l('Are you sure you want to delete the addressbook "%{0}"?',w.service.selectedFolder.name),{ok:l("Delete")}).then(function(){return w.service.selectedFolder.$delete()}).then(function(){return w.service.selectedFolder=null,t.go("app.addressbook",{addressbookId:"personal"}),!0}).catch(function(e){if(e){var t=e.data.message||e.statusText;k.alert(l('An error occured while deleting the addressbook "%{0}".',w.service.selectedFolder.name),t)}})}}angular.module("SOGo.ContactsUI").controller("AddressBooksController",e)}(),function(){"use strict";e.$inject=["$scope","$timeout","$window","$mdDialog","sgSettings","AddressBook","Card","Dialog","sgHotkeys","sgFocus","$state","$stateParams","stateCard"];function e(e,t,o,r,s,d,n,a,c,i,u,f,h){var p=this,m=[];p.card=h,p.currentFolder=d.selectedFolder,p.allEmailTypes=n.$EMAIL_TYPES,p.allTelTypes=n.$TEL_TYPES,p.allUrlTypes=n.$URL_TYPES,p.allAddressTypes=n.$ADDRESS_TYPES,p.categories={},p.userFilterResults=[],p.transformCategory=function(e){return angular.isString(e)?{value:e}:e},p.removeAttribute=function(e,t,o){p.card.$delete(t,o),e.$setDirty()},p.addOrg=function(){var e=p.card.$addOrg({value:""});i("org_"+e)},p.addBirthday=function(){p.card.birthday=new Date},p.addScreenName=function(){p.card.$addScreenName("")},p.addEmail=function(){var e=p.card.$addEmail("");i("email_"+e)},p.addPhone=function(){var e=p.card.$addPhone("");i("phone_"+e)},p.addUrl=function(){var e=p.card.$addUrl("","");i("url_"+e)},p.addAddress=function(){var e=p.card.$addAddress("","","","","","","","");i("address_"+e)},p.canAddCustomField=function(){return _.keys(h.customFields).length<4},p.addCustomField=function(){angular.isDefined(p.card.customFields)||(p.card.customFields={});var e=_.pullAll(["1","2","3","4"],_.keys(h.customFields));p.card.customFields[e[0]]=""},p.deleteCustomField=function(e){delete p.card.customFields[e]},p.userFilter=function(e,t){return e.length"+e.$fullname()+""),{ok:l("Delete")}).then(function(){d.selectedFolder.$deleteCards([e]).then(function(){$()},function(t,o){a.alert(l("Warning"),l('An error occured while deleting the card "%{0}".',e.$fullname()))})})}}angular.module("SOGo.ContactsUI").controller("CardController",e)}(),function(){"use strict";angular.module("SOGo.Common").directive("sgAddress",function(){return{restrict:"A",scope:{data:"=sgAddress"},controller:["$scope",function(e){e.addressLines=function(e){var t=[],o=[];return e.street&&t.push(e.street),e.street2&&t.push(e.street2),e.locality&&o.push(e.locality),e.region&&o.push(e.region),o.length>0&&t.push(o.join(", ")),e.country&&t.push(e.country),e.postalcode&&t.push(e.postalcode),t.join("
")}}],template:'
'}})}(); //# sourceMappingURL=Contacts.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Contacts.js.map b/UI/WebServerResources/js/Contacts.js.map index c949fc762..c9c87a3eb 100644 --- a/UI/WebServerResources/js/Contacts.js.map +++ b/UI/WebServerResources/js/Contacts.js.map @@ -1 +1 @@ -{"version":3,"sources":["Contacts/Contacts.app.js","Contacts/AddressBookController.js","Contacts/AddressBooksController.js","Contacts/CardController.js","Contacts/sgAddress.directive.js"],"names":["angular","module","config","configure","run","runBlock","$inject","$stateProvider","$urlRouterProvider","state","url","abstract","views","addressbooks","templateUrl","controller","controllerAs","resolve","stateAddressbooks","addressbook","stateAddressbook","params","refs","array","card","stateCard","stateNewCard","template","onEnter","onEnterCard","onExit","onExitCard","card@app.addressbook","otherwise","AddressBook","$findAll","window","contactFolders","$q","$state","$stateParams","_","find","id","addressbookId","selectedCard","$reload","reject","Card","tag","contactType","pid","c_component","$futureAddressBookData","then","$cards","cardObject","cardId","go","stateMailbox","$rootScope","$log","$on","event","toState","toParams","fromState","fromParams","error","current","previous","rejection","AddressBookController","$scope","$window","$timeout","$mdDialog","$mdToast","Account","focus","Dialog","Settings","sgHotkeys","vm","this","hotkeys","$onInit","selectedFolder","service","mode","search","multiple","keys","push","createHotkey","key","l","description","callback","bind","searchMode","newComponent","toggleCardSelection","_nextCard","_previousCard","_addNextCardToSelection","_addPreviousCardToSelection","forEach","hotkey","confirmDeleteSelectedCards","registerHotkey","deregisterHotkey","selectCard","$event","selectedIndex","nextSelectedIndex","i","folder","$selectedCard","selected","shiftKey","$selectedCount","idsMap","getLength","Math","min","max","preventDefault","stopPropagation","type","unselectCards","index","$selectedCardIndex","isDefined","$topIndex","length","hasSelectedCard","selectedCards","$selectedCards","size","confirm","ok","$deleteCards","_selectedCardsOperation","operation","dstId","srcFolder","allCards","cards","ids","clearCardView","promise","success","filter","$isCard","show","simple","content","position","hideDelay","$copyCards","$moveCards","map","indexOf","copySelectedCards","moveSelectedCards","selectAll","sort","field","$filter","sortedBy","$query","cancelSearch","newMessage","recipients","recipientsField","accounts","account","o","$getMailboxes","mailboxes","$newMessage","message","editable","parent","element","document","body","targetEvent","clickOutsideToClose","escapeToClose","locals","stateAccount","stateMessage","newMessageWithRecipient","recipient","fn","newMessageWithSelectedCards","promises","$isList","expandable","ref","email","$shortFormat","c_mail","all","uniq","newListWithSelectedCards","$$email","uniqBy","reference","AddressBooksController","$mdMedia","$mdSidenav","FileUploader","sgConstant","User","activeUser","select","editMode","value","close","newAddressbook","prompt","name","isEditable","isRemote","owner","UserLogin","$add","edit","originalAddressbook","$omit","revertEditing","save","$rename","data","status","alert","confirmDelete","importCards","CardsImportDialogController","scope","uploader","ApplicationBaseURL","join","autoUpload","queueLimit","filters","filterByExtension","onSuccessItem","item","response","headers","msg","hide","imported","onErrorItem","isTextFile","test","showLinks","urls","when","$reloadAll","LinksDialogController","showProperties","PropertiesDialogController","srcAddressBook","catch","saveProperties","$save","init","cancel","share","$acl","$users","usersWithACL","users","subscribeToFolder","addressbookData","console","debug","$subscribe","isDroppableFolder","dstFolder","isOwned","acls","objectCreator","dragSelectedCards","isSubscription","$delete","statusText","CardController","sgSettings","currentFolder","allEmailTypes","$EMAIL_TYPES","allTelTypes","$TEL_TYPES","allUrlTypes","$URL_TYPES","allAddressTypes","$ADDRESS_TYPES","categories","userFilterResults","transformCategory","input","isString","removeAttribute","form","attribute","$setDirty","addOrg","$addOrg","addBirthday","birthday","Date","addScreenName","$addScreenName","addEmail","$addEmail","addPhone","$addPhone","addUrl","$addUrl","addAddress","$addAddress","canAddCustomField","customFields","addCustomField","availableKeys","pullAll","deleteCustomField","userFilter","excludedCards","minimumSearchLength","dry","excludeLists","$valid","copy","reset","$reset","$setPristine","isNew","toggleRawSource","showRawSource","rawSource","$$resource","post","hasCertificate","$certificate","crt","certificate","$fullname","directive","restrict","addressLines","lines","locality_region","street","street2","locality","region","country","postalcode"],"mappings":"CAGA,WACE,aAEAA,QAAQC,OAAO,mBAAoB,YAAa,YAAa,oBAAqB,KAAM,cAAe,qBAAsB,kBAC1HC,OAAOC,GACPC,IAAIC,GAKPF,EAAUG,SAAW,iBAAkB,sBACvC,SAASH,EAAUI,EAAgBC,GACjCD,EACGE,MAAM,OACLC,IAAK,gBACLC,UAAU,EACVC,OACEC,cACEC,YAAa,wBACbC,WAAY,yBACZC,aAAc,QAGlBC,SACEC,kBAAmBA,KAGtBT,MAAM,mBACLC,IAAK,kBACLE,OACEO,aACEL,YAAa,cACbC,WAAY,wBACZC,aAAc,gBAGlBC,SACEG,iBAAkBA,KAGrBX,MAAM,uBACLC,IAAK,mCACLW,QACEC,MAAQC,OAAO,IAEjBX,OACEY,MACEV,YAAa,2BACbC,WAAY,iBACZC,aAAc,WAGlBC,SACEQ,UAAWC,KAGdjB,MAAM,wBACLC,IAAK,WACLC,UAAU,EACVC,OACEY,MACEG,SAAU,eAGdV,SACEQ,UAAWA,GAEbG,QAASC,EACTC,OAAQC,IAETtB,MAAM,6BACLC,IAAK,QACLE,OACEoB,wBACElB,YAAa,yBACbC,WAAY,iBACZC,aAAc,aAInBP,MAAM,+BACLC,IAAK,QACLE,OACEoB,wBACElB,YAAa,2BACbC,WAAY,iBACZC,aAAc,aAMtBR,EAAmByB,UAAU,0BAM/Bf,EAAkBZ,SAAW,eAC7B,SAASY,EAAkBgB,GACzB,OAAOA,EAAYC,SAASC,OAAOC,gBAMrCjB,EAAiBd,SAAW,KAAM,SAAU,eAAgB,eAC5D,SAASc,EAAiBkB,EAAIC,EAAQC,EAAcN,GAClD,IAAIf,EAAcsB,EAAEC,KAAKR,EAAYC,WAAY,SAAShB,GACxD,OAAOA,EAAYwB,IAAMH,EAAaI,gBAExC,OAAIzB,UACKA,EAAY0B,aACnB1B,EAAY2B,UACL3B,GAEFmB,EAAGS,OAAO,eAAiBP,EAAaI,cAAgB,cAMjElB,EAAapB,SAAW,eAAgB,mBAAoB,QAC5D,SAASoB,EAAac,EAAcpB,EAAkB4B,GACpD,IAAIC,EAAM,IAAMT,EAAaU,YACzB1B,EAAO,IAAIwB,GAAOG,IAAKX,EAAaI,cAAeQ,YAAaH,EAAK3B,KAAMkB,EAAalB,OAE5F,OADAF,EAAiByB,cAAe,EACzBrB,EAMTC,EAAUnB,SAAW,SAAU,eAAgB,oBAC/C,SAASmB,EAAUc,EAAQC,EAAcpB,GACvC,OAAOA,EAAiBiC,uBAAuBC,KAAK,WAClD,IAAI9B,EAAOiB,EAAEC,KAAKtB,EAAiBmC,OAAQ,SAASC,GAClD,OAAQA,EAAWb,IAAMH,EAAaiB,SAGxC,GAAIjC,EACF,OAAOA,EAAKsB,UAIZP,EAAOmB,GAAG,qBAQhB7B,EAAYvB,SAAW,eAAgB,oBACvC,SAASuB,EAAYW,EAAcpB,GACjCA,EAAiByB,aAAeL,EAAaiB,OAM/C1B,EAAWzB,SAAW,oBACtB,SAASyB,EAAW4B,UACXvC,EAAiByB,aAM1BxC,EAASC,SAAW,aAAc,OAAQ,UAC1C,SAASD,EAASuD,EAAYC,EAAMtB,GAClCqB,EAAWE,IAAI,oBAAqB,SAASC,EAAOC,EAASC,EAAUC,EAAWC,EAAYC,GAC5FP,EAAKO,MAAMA,GACX7B,EAAOmB,GAAG,mBAAqBd,cAAe,eAEhDgB,EAAWE,IAAI,oBAAqB,SAASC,EAAOM,EAASC,EAAUC,GACrEV,EAAKO,MAAML,EAAOM,EAASC,EAAUC,MAhL3C,GCDA,WACE,aAKAC,EAAsBlE,SAAW,SAAU,KAAM,UAAW,SAAU,WAAY,YAAa,WAAY,UAAW,OAAQ,cAAe,UAAW,SAAU,aAAc,YAAa,oBAAqB,oBAClN,SAASkE,EAAsBC,EAAQnC,EAAIoC,EAASnC,EAAQoC,EAAUC,EAAWC,EAAUC,EAAS9B,EAAMd,EAAa6C,EAAOC,EAAQC,EAAUC,EAAWhE,EAAmBE,GAC5K,IAAI+D,EAAKC,KAAMC,KAEfD,KAAKE,QAAU,WACbpD,EAAYqD,eAAiBnE,EAE7BgE,KAAKI,QAAUtD,EACfkD,KAAKG,eAAiBnE,EACtBgE,KAAKK,MAASC,QAAQ,EAAOC,SAAU,IAcfC,EAXPP,GAYZQ,KAAKX,EAAUY,cAClBC,IAAKC,EAAE,iBACPC,YAAaD,EAAE,UACfE,SAAUlG,QAAQmG,KAAKhB,EAAIA,EAAGiB,eAEhCR,EAAKC,KAAKX,EAAUY,cAClBC,IAAKC,EAAE,mBACPC,YAAaD,EAAE,kCACfE,SAAUlG,QAAQmG,KAAKhB,EAAIA,EAAGkB,aAAc,WAE9CT,EAAKC,KAAKX,EAAUY,cAClBC,IAAKC,EAAE,mBACPC,YAAaD,EAAE,qBACfE,SAAUlG,QAAQmG,KAAKhB,EAAIA,EAAGkB,aAAc,WAE9CT,EAAKC,KAAKX,EAAUY,cAClBC,IAAK,QACLE,YAAaD,EAAE,eACfE,SAAUlG,QAAQmG,KAAKhB,EAAIA,EAAGmB,wBAEhCV,EAAKC,KAAKX,EAAUY,cAClBC,IAAK,cACLE,YAAaD,EAAE,yBACfE,SAAUlG,QAAQmG,KAAKhB,EAAIA,EAAGmB,wBAEhCV,EAAKC,KAAKX,EAAUY,cAClBC,IAAK,KACLE,YAAaD,EAAE,kBACfE,SAAUK,KAEZX,EAAKC,KAAKX,EAAUY,cAClBC,IAAK,OACLE,YAAaD,EAAE,sBACfE,SAAUM,KAEZZ,EAAKC,KAAKX,EAAUY,cAClBC,IAAK,WACLE,YAAaD,EAAE,8BACfE,SAAUO,KAEZb,EAAKC,KAAKX,EAAUY,cAClBC,IAAK,aACLE,YAAaD,EAAE,kCACfE,SAAUQ,KAEZjE,EAAEkE,SAAS,YAAa,UAAW,SAASC,GAC1ChB,EAAKC,KAAKX,EAAUY,cAClBC,IAAKa,EACLX,YAAaD,EAAE,wCACfE,SAAUlG,QAAQmG,KAAKhB,EAAIA,EAAG0B,iCAKlCpE,EAAEkE,QAAQf,EAAM,SAASG,GACvBb,EAAU4B,eAAef,KAxD7B,IAA0BH,EATxBnB,EAAOX,IAAI,WAAY,WAErBrB,EAAEkE,QAAQtB,EAAS,SAASU,GAC1Bb,EAAU6B,iBAAiBhB,QAkEjCX,KAAK4B,WAAa,SAASxF,GACzBe,EAAOmB,GAAG,6BAA8BD,OAAQjC,EAAKmB,MAGvDyC,KAAKkB,oBAAsB,SAASW,EAAQzF,GAC1C,IACI0F,EAAeC,EAAmBC,EADlCC,EAASjC,KAAKG,eASlB,GANK/D,IACHA,EAAO6F,EAAOC,iBAChB9F,EAAK+F,UAAY/F,EAAK+F,SACtBnC,KAAKK,KAAKE,UAAYnE,EAAK+F,SAAU,GAAK,EAGtCN,EAAOO,UAAYH,EAAOI,iBAAmB,EAAG,CAIlD,IADAN,GAFAD,EAAgBG,EAAOK,OAAOlG,EAAKmB,KAEC,EAC7BwE,GAAqB,IACpBE,EAAO9D,OAAO4D,GAAmBI,UACvCJ,IACF,GAAIA,EAAoB,EAGtB,IADAA,EAAoBD,EAAgB,EAC7BC,EAAoBE,EAAOM,cAC1BN,EAAO9D,OAAO4D,GAAmBI,UACvCJ,IAEJ,GAAIA,GAAqB,GAAKA,EAAoBE,EAAOM,YACvD,IAAKP,EAAIQ,KAAKC,IAAIX,EAAeC,GAC5BC,GAAKQ,KAAKE,IAAIZ,EAAeC,GAC7BC,IACHC,EAAO9D,OAAO6D,GAAGG,UAAW,EAIlCN,EAAOc,iBACPd,EAAOe,mBAGT5C,KAAKiB,aAAe,SAAS4B,GAC3B1F,EAAOmB,GAAG,uBAAyBR,YAAa+E,KAGlD7C,KAAK8C,cAAgB,WACnBzF,EAAEkE,QAAQvB,KAAKG,eAAehC,OAAQ,SAAS/B,GAC7CA,EAAK+F,UAAW,IAElBnC,KAAKK,KAAKE,SAAW,GAMvB,SAASY,EAAUU,GACjB,IAAIkB,EAAQhD,EAAGI,eAAe6C,qBAkB9B,OAhBIpI,QAAQqI,UAAUF,IACpBA,IACIhD,EAAGI,eAAe+C,UAAY,GAChCnD,EAAGI,eAAe+C,cAIpBH,EAAQhD,EAAGI,eAAehC,OAAOgF,SAAW,EAC5CpD,EAAGI,eAAe+C,UAAYnD,EAAGI,eAAeoC,aAG9CQ,GAAS,GACXhD,EAAG6B,WAAW7B,EAAGI,eAAehC,OAAO4E,IAEzClB,EAAOc,iBAEAI,EAMT,SAAS3B,EAAcS,GACrB,IAAIkB,EAAQhD,EAAGI,eAAe6C,qBAkB9B,OAhBIpI,QAAQqI,UAAUF,IACpBA,IACIhD,EAAGI,eAAe+C,UAAYnD,EAAGI,eAAehC,OAAOgF,QACzDpD,EAAGI,eAAe+C,aAIpBH,EAAQ,EAENA,EAAQhD,EAAGI,eAAehC,OAAOgF,OACnCpD,EAAG6B,WAAW7B,EAAGI,eAAehC,OAAO4E,IAEvCA,GAAS,EAEXlB,EAAOc,iBAEAI,EAGT,SAAS1B,EAAwBQ,GAC/B,IAAIkB,EAEAhD,EAAGI,eAAeiD,oBACpBL,EAAQ5B,EAAUU,KACL,GACXX,oBAAoBW,EAAQ9B,EAAGI,eAAehC,OAAO4E,IAI3D,SAASzB,EAA4BO,GACnC,IAAIkB,EAEAhD,EAAGI,eAAeiD,oBACpBL,EAAQ3B,EAAcS,KACT,GACXX,oBAAoBW,EAAQ9B,EAAGI,eAAehC,OAAO4E,IAI3D/C,KAAKyB,2BAA6B,SAASI,GACzC,IAAIwB,EAAgBrD,KAAKG,eAAemD,iBAEpCjG,EAAEkG,KAAKF,GAAiB,GAC1BzD,EAAO4D,QAAQ5C,EAAE,WACFA,EAAE,2DACA6C,GAAI7C,EAAE,YACtB1C,KAAK,WAEJ6B,EAAGI,eAAeuD,aAAaL,GAAenF,KAAK,WACjD6B,EAAGM,KAAKE,SAAW,EACdR,EAAGI,eAAe1C,cACrBN,EAAOmB,GAAG,uBAIlBuD,EAAOc,kBAMT,SAASgB,EAAwBC,EAAWC,GAC1C,IAAIC,EAAWC,EAAUC,EAAOC,EAAKC,EAAeC,EAASC,EAE7DN,EAAY/D,EAAGI,eACf+D,GAAgB,EAChBH,EAAWD,EAAUR,kBACrBU,EAAQ3G,EAAEgH,OAAON,EAAU,SAAS3H,GAClC,OAAOA,EAAKkI,aAGJnB,QAAUY,EAASZ,QAC3B1D,EAAS8E,KACP9E,EAAS+E,SACNC,QAAQ7D,EAAE,oCACV8D,SAAS,aACTC,UAAU,MAEbX,EAAMb,SACS,QAAbS,GACFO,EAAUL,EAAUc,WAAWZ,EAAOH,GACtCO,EAAUxD,EAAE,sBAAuBoD,EAAMb,UAGzCgB,EAAUL,EAAUe,WAAWb,EAAOH,GACtCO,EAAUxD,EAAE,qBAAsBoD,EAAMb,QAExCc,EAAM5G,EAAEyH,IAAId,EAAO,MACnBE,EAAiBJ,EAAUrG,cAAgBwG,EAAIc,QAAQjB,EAAUrG,eAAiB,GAIpF0G,EAAQjG,KAAK,WACPgG,GACF/G,EAAOmB,GAAG,mBACZmB,EAAS8E,KACP9E,EAAS+E,SACNC,QAAQL,GACRM,SAAS,aACTC,UAAU,SAKrB3E,KAAKgF,kBAAoB,SAAS/C,GAChC0B,EAAwB,OAAQ1B,IAGlCjC,KAAKiF,kBAAoB,SAAShD,GAChC0B,EAAwB,OAAQ1B,IAGlCjC,KAAKkF,UAAY,WACf7H,EAAEkE,QAAQvB,KAAKG,eAAehC,OAAQ,SAAS/B,GAC7CA,EAAK+F,UAAW,IAElBnC,KAAKK,KAAKE,SAAWP,KAAKG,eAAehC,OAAOgF,QAGlDnD,KAAKmF,KAAO,SAASC,GACnBpF,KAAKG,eAAekF,QAAQ,IAAMF,KAAMC,KAG1CpF,KAAKsF,SAAW,SAASF,GACvB,OAAOtI,EAAYyI,OAAOJ,MAAQC,GAGpCpF,KAAKgB,WAAa,WAChBjB,EAAGM,KAAKC,QAAS,EACjBX,EAAM,WAGRK,KAAKwF,aAAe,WAClBxF,KAAKK,KAAKC,QAAS,EACnBN,KAAKG,eAAekF,QAAQ,KAG9BrF,KAAKyF,WAAa,SAAS5D,EAAQ6D,EAAYC,GAC7CjG,EAAQ3C,WAAWmB,KAAK,SAAS0H,GAC/B,IAAIC,EAAUxI,EAAEC,KAAKsI,EAAU,SAASE,GACtC,GAAa,IAATA,EAAEvI,GACJ,OAAOuI,IAKXD,EAAQE,gBAAgB7H,KAAK,SAAS8H,GACpCH,EAAQI,cAAc/H,KAAK,SAASgI,GAClCA,EAAQC,SAASR,GAAmBD,EACpClG,EAAU+E,MACR6B,OAAQxL,QAAQyL,QAAQC,SAASC,MACjCC,YAAa3E,EACb4E,qBAAqB,EACrBC,eAAe,EACfhL,YAAa,wBACbC,WAAY,0BACZC,aAAc,SACd+K,QACEC,aAAcf,EACdgB,aAAcX,YAQ1BlG,KAAK8G,wBAA0B,SAASjF,EAAQkF,EAAWC,GACzD,IAAItB,GAAcsB,EAAK,KAAOD,EAAY,KAC1C/G,KAAKyF,WAAW5D,EAAQ6D,EAAY,MACpC7D,EAAOe,kBACPf,EAAOc,kBAGT3C,KAAKiH,4BAA8B,SAASpF,EAAQ8D,GAClD,IAAItC,EAAgBhG,EAAEgH,OAAOrE,KAAKG,eAAehC,OAAQ,SAAS/B,GAAQ,OAAOA,EAAK+F,WAClF+E,KAAexB,KAEnBrI,EAAEkE,QAAQ8B,EAAe,SAASjH,GAC5BA,EAAK+K,SAASC,YAAY,IAExBxM,QAAQqI,UAAU7G,EAAKF,OAASE,EAAKF,KAAKiH,OAC5C9F,EAAEkE,QAAQnF,EAAKF,KAAM,SAASmL,GACxBA,EAAIC,MAAMnE,QACZuC,EAAWjF,KAAK4G,EAAIE,kBAIxBL,EAASzG,KAAKrE,EAAKsB,UAAUQ,KAAK,SAAS9B,GACzCiB,EAAEkE,QAAQnF,EAAKF,KAAM,SAASmL,GACxBA,EAAIC,MAAMnE,QACZuC,EAAWjF,KAAK4G,EAAIE,qBAKrBnL,EAAKoL,OAAOrE,QACnBuC,EAAWjF,KAAKrE,EAAKmL,kBAIzBrK,EAAGuK,IAAIP,GAAUhJ,KAAK,YACpBwH,EAAarI,EAAEqK,KAAKhC,IACLvC,QACbpD,EAAG0F,WAAW5D,EAAQ6D,EAAYC,MAIxC3F,KAAK2H,yBAA2B,WAC9B,IAAItE,EAAgBhG,EAAEgH,OAAOrE,KAAKG,eAAehC,OAAQ,SAAS/B,GAAQ,OAAOA,EAAK+F,WAClF+E,KAAehL,KAEnBmB,EAAEkE,QAAQ8B,EAAe,SAASjH,GAC5BA,EAAK+K,SAASC,YAAY,IAExBxM,QAAQqI,UAAU7G,EAAKF,OAASE,EAAKF,KAAKiH,OAC5C9F,EAAEkE,QAAQnF,EAAKF,KAAM,SAASmL,GACxBA,EAAIC,MAAMnE,QACZjH,EAAKuE,KAAK4G,KAIdH,EAASzG,KAAKrE,EAAKsB,UAAUQ,KAAK,SAAS9B,GACzCiB,EAAEkE,QAAQnF,EAAKF,KAAM,SAASmL,GACxBA,EAAIC,MAAMnE,QACZjH,EAAKuE,KAAK4G,QAKXjL,EAAKwL,SAAWxL,EAAKwL,QAAQzE,QACpCjH,EAAKuE,KAAKrE,KAIdc,EAAGuK,IAAIP,GAAUhJ,KAAK,YACpBhC,EAAOmB,EAAEwK,OAAOxK,EAAEyH,IAAI5I,EAAM,SAAS4J,GACnC,OAASgC,UAAWhC,EAAEvI,IAAMuI,EAAEgC,UAAWR,MAAOxB,EAAE8B,SAAW9B,EAAEwB,SAC7D,cACKnE,QACPhG,EAAOmB,GAAG,uBAAyBR,YAAa,OAAQ5B,KAAMA,OAMtEtB,QACGC,OAAO,mBACPc,WAAW,wBAAyByD,GAnazC,GCAA,WACE,aAKA2I,EAAuB7M,SAAW,KAAM,SAAU,SAAU,aAAc,eAAgB,WAAY,UAAW,YAAa,WAAY,WAAY,aAAc,eAAgB,aAAc,YAAa,UAAW,OAAQ,cAAe,SAAU,aAAc,OAAQ,qBACjR,SAAS6M,EAAuB7K,EAAIC,EAAQkC,EAAQb,EAAYpB,EAAcmC,EAAUD,EAASE,EAAWC,EAAUuI,EAAUC,EAAYC,EAAcC,EAAYrI,EAAWH,EAAO/B,EAAMd,EAAa8C,EAAQC,EAAUuI,EAAMtM,GACjO,IAAIiE,EAAKC,KAAMC,KAEfF,EAAGsI,WAAaxI,EAASwI,WACzBtI,EAAGK,QAAUtD,EACbiD,EAAGuI,OA2CH,SAAgBzG,EAAQI,GAClB9E,EAAOlB,OAAOuB,eAAiByE,EAAO1E,IACtCwC,EAAGwI,UAAYtG,EAAO1E,KACxBwC,EAAGwI,UAAW,EACdzL,EAAYyI,OAAOiD,MAAQ,GAEtBR,EAASG,EAAW,WACvBF,EAAW,QAAQQ,QACrBtL,EAAOmB,GAAG,mBAAoBd,cAAeyE,EAAO1E,OAlDxDwC,EAAG2I,eAsDH,WACE9I,EAAO+I,OAAO/H,EAAE,sBACFA,EAAE,6BACb1C,KAAK,SAAS0K,GACb,IAAI7M,EAAc,IAAIe,GAElB8L,KAAMA,EACNC,YAAY,EACZC,UAAU,EACVC,MAAOC,YAGXlM,EAAYmM,KAAKlN,MAjEvBgE,EAAGmJ,KAqEH,SAAcjH,GACPA,EAAO6G,WACV/I,EAAGwI,SAAWtG,EAAO1E,GACrBwC,EAAGoJ,oBAAsBlH,EAAOmH,QAChCzJ,EAAM,mBAAqBsC,EAAO1E,MAxEtCwC,EAAGsJ,cA4EH,SAAuBpH,GACrBA,EAAO2G,KAAO7I,EAAGoJ,oBAAoBP,KACrC7I,EAAGwI,UAAW,GA7EhBxI,EAAGuJ,KAgFH,SAAcrH,GACZ,IAAI2G,EAAO3G,EAAO2G,KACdA,GAAQA,EAAKzF,OAAS,IACpByF,GAAQ7I,EAAGoJ,oBAAoBP,KACjC3G,EAAOsH,QAAQX,GACZ1K,KAAK,SAASsL,GACbzJ,EAAGwI,UAAW,GACb,SAASiB,EAAMC,GAChB7J,EAAO8J,MAAM9I,EAAE,WAAY4I,KAI/BzJ,EAAGwI,UAAW,IA3FpBxI,EAAG4J,cAAgBA,EACnB5J,EAAG6J,YAmIH,SAAqB/H,EAAQI,GAC3BzC,EAAU+E,MACR6B,OAAQxL,QAAQyL,QAAQC,SAASC,MACjCC,YAAa3E,EACb4E,qBAAqB,EACrBC,eAAe,EACfhL,YAAa,0BACbC,WAAYkO,EACZjO,aAAc,+BACd+K,QACE1E,OAAQA,KAOZ4H,EAA4B3O,SAAW,QAAS,YAAa,UAC7D,SAAS2O,EAA4BC,EAAOtK,EAAWyC,GAC5CjC,KAEN+J,SAAW,IAAI7B,GAChB5M,IAAK0O,oBAAsB/H,EAAO1E,GAAI,UAAU0M,KAAK,KACrDC,YAAY,EACZC,WAAY,EACZC,UAAYxB,KAAMyB,EAAmBrD,GAAIqD,IACzCC,cAAe,SAASC,EAAMC,EAAUf,EAAQgB,GAC9C,IAAIC,EAEJlL,EAAUmL,OAEgB,IAAtBH,EAASI,SACXF,EAAM9J,EAAE,0BAER8J,EAAM9J,EAAE,0DAA2D4J,EAASI,UAC5E9N,EAAYqD,eAAezC,WAG7B+B,EAAS8E,KACP9E,EAAS+E,SACNC,QAAQiG,GACRhG,SAAS,aACTC,UAAU,OAEjBkG,YAAa,SAASN,EAAMC,EAAUf,EAAQgB,GAC5ChL,EAAS8E,MACPhI,UACE,aACA,mCACA,gEACA,aAAeqE,EAAE,8CAAgD,UACjE,WACA,eACAqJ,KAAK,IACPvF,SAAU,YACVC,UAAW,SApCR3E,KAyCNyI,MAAQ,WACTjJ,EAAUmL,QAGZ,SAASN,EAAkBE,GACzB,IAAIO,EAA2C,IAA9BP,EAAK1H,KAAKkC,QAAQ,SAC/B,sBAAsBgG,KAAKR,EAAK3B,MAgBpC,OAdKkC,GACHrL,EAAS8E,MACPhI,UACE,aACA,mCACA,gEACA,aAAeqE,EAAE,gCAAkC,UACnD,WACA,eACAqJ,KAAK,IACPvF,SAAU,YACVC,UAAW,MAGRmG,KApNb/K,EAAGiL,UAyNH,SAAmBjP,GACjB,IAAIoI,EAEFA,EADEpI,EAAYkP,KACJ/N,EAAGgO,OAGHpO,EAAYqO,aACxBhH,EAAQjG,KAAK,WACXsB,EAAU+E,MACR6B,OAAQxL,QAAQyL,QAAQC,SAASC,MACjCE,qBAAqB,EACrBC,eAAe,EACfhL,YAAaK,EAAYwB,GAAK,SAC9B5B,WAAYyP,EACZxP,aAAc,QACd+K,QACE5K,YAAaA,OAQnBqP,EAAsBlQ,SAAW,YAAa,eAC9C,SAASkQ,EAAsB5L,EAAWzD,GAExCiE,KAAKjE,YAAcA,EACnBiE,KAAKyI,MAEL,WACEjJ,EAAUmL,UAvPhB5K,EAAGsL,eA4PH,SAAwBtP,GACtByD,EAAU+E,MACR7I,YAAaK,EAAYwB,GAAK,cAC9B5B,WAAY2P,EACZ1P,aAAc,aACd6K,qBAAqB,EACrBC,eAAe,EACfC,QACE4E,eAAgBxP,KAEjByP,MAAM,cAOTF,EAA2BpQ,SAAW,SAAU,YAAa,kBAC7D,SAASoQ,EAA2BjM,EAAQG,EAAW+L,GACrD,IAAIxL,EAAKC,KAETD,EAAGhE,YAAc,IAAIe,EAAYyO,EAAenC,SAChDrJ,EAAG0L,eAGH,WACE1L,EAAGhE,YAAY2P,QAAQxN,KAAK,WAE1BqN,EAAeI,KAAK5L,EAAGhE,YAAYqN,SACnC5J,EAAUmL,UANd5K,EAAG0I,MAUH,WACEjJ,EAAUoM,YA7RhB7L,EAAG8L,MAkSH,SAAe9P,GAEbA,EAAY+P,KAAKC,SAAS7N,KAAK,WAE7BsB,EAAU+E,MACR7I,YAAaK,EAAYwB,GAAK,gBAC9B5B,WAAY,gBACZC,aAAc,MACd6K,qBAAqB,EACrBC,eAAe,EACfC,QACEqF,aAAcjQ,EAAY+P,KAAKG,MAC/B7D,KAAMA,EACNnG,OAAQlG,QA9ShBgE,EAAGmM,kBAuTH,SAA2BC,GACzBC,QAAQC,MAAM,qBAAuBF,EAAgBpD,MAAQoD,EAAgBvD,MAC7E9L,EAAYwP,WAAWH,EAAgBpD,MAAOoD,EAAgBvD,MAAM1K,KAAK,SAASsL,GAC/E/J,EAAS8E,KACP9E,EAAS+E,SACNC,QAAQ7D,EAAE,4CACV8D,SAAS,aACTC,UAAU,SA7TpB5E,EAAGwM,kBAiUH,SAA2BzI,EAAW0I,GACpC,OAAQA,EAAUjP,IAAMuG,EAAUvG,KAAQiP,EAAUC,SAAWD,EAAUE,KAAKC,gBAjUhF5M,EAAG6M,kBAuUH,SAA2B9I,EAAW0I,EAAWnM,GAC/C,IAAIwD,EAAOE,EAAUC,EAAOC,EAAKC,EAAeC,EAASC,EAEzDP,EAAQ2I,EAAUjP,GAClB2G,GAAgB,EAEQ,KADxBH,EAAWD,EAAUR,kBACRH,SACXY,GAAYD,EAAU5B,mBACxB8B,EAAQ3G,EAAEgH,OAAON,EAAU,SAAS3H,GAClC,OAAOA,EAAKkI,aAGJnB,QAAUY,EAASZ,QAC3B1D,EAAS8E,KACP9E,EAAS+E,SACNC,QAAQ7D,EAAE,oCACV8D,SAAS,aACTC,UAAU,MAEbX,EAAMb,SACI,QAAR9C,GACF8D,EAAUL,EAAUc,WAAWZ,EAAOH,GACtCO,EAAUxD,EAAE,sBAAuBoD,EAAMb,UAGzCgB,EAAUL,EAAUe,WAAWb,EAAOH,GACtCO,EAAUxD,EAAE,qBAAsBoD,EAAMb,QAExCc,EAAM5G,EAAEyH,IAAId,EAAO,MACnBE,EAAiBJ,EAAUrG,cAAgBwG,EAAIc,QAAQjB,EAAUrG,eAAiB,GAIpF0G,EAAQjG,KAAK,WACPgG,GACF/G,EAAOmB,GAAG,mBACZmB,EAAS8E,KACP9E,EAAS+E,SACNC,QAAQL,GACRM,SAAS,aACTC,UAAU,UAlWKnE,EAVTP,EAWf5C,EAAEkE,SAAS,YAAa,UAAW,SAASC,GAC1ChB,EAAKC,KAAKX,EAAUY,cAClBC,IAAKa,EACLX,YAAaD,EAAE,wCACfE,SAAU,WACJhE,EAAYqD,iBAAmBrD,EAAYqD,eAAeiD,mBAC5DuG,UAMRtM,EAAEkE,QAAQf,EAAM,SAASG,GACvBb,EAAU4B,eAAef,KAd7B,IAA0BH,EAR1BnB,EAAOX,IAAI,WAAY,WAErBrB,EAAEkE,QAAQtB,EAAS,SAASU,GAC1Bb,EAAU6B,iBAAiBhB,OAiF/B,SAASgJ,IACH5J,EAAGK,QAAQD,eAAe0M,eAE5B9M,EAAGK,QAAQD,eAAe2M,UACvB5O,KAAK,WACJ6B,EAAGK,QAAQD,eAAiB,KAC5BhD,EAAOmB,GAAG,mBAAqBd,cAAe,cAC7C,SAASgM,EAAMC,GAChB7J,EAAO8J,MAAM9I,EAAE,0DACAb,EAAGK,QAAQD,eAAeyI,MAC5BhI,EAAE4I,EAAKxK,UAIxBY,EAAO4D,QAAQ5C,EAAE,WAAYA,EAAE,0DACAb,EAAGK,QAAQD,eAAeyI,OACxCnF,GAAI7C,EAAE,YACpB1C,KAAK,WACJ,OAAO6B,EAAGK,QAAQD,eAAe2M,YAElC5O,KAAK,WAGJ,OAFA6B,EAAGK,QAAQD,eAAiB,KAC5BhD,EAAOmB,GAAG,mBAAqBd,cAAe,cACvC,IAERgO,MAAM,SAAShB,GACd,GAAIA,EAAU,CACZ,IAAItE,EAAUsE,EAAShB,KAAKtD,SAAWsE,EAASuC,WAChDnN,EAAO8J,MAAM9I,EAAE,0DACAb,EAAGK,QAAQD,eAAeyI,MAC5B1C,OA+PzBtL,QACGC,OAAO,mBACPc,WAAW,yBAA0BoM,GAhZ1C,GCAA,WACE,aAMAiF,EAAe9R,SAAW,SAAU,WAAY,UAAW,YAAa,aAAc,cAAe,OAAQ,SAAU,YAAa,UAAW,SAAU,eAAgB,aACzK,SAAS8R,EAAe3N,EAAQE,EAAUD,EAASE,EAAWyN,EAAYnQ,EAAac,EAAMgC,EAAQE,EAAWH,EAAOxC,EAAQC,EAAcf,GAC3I,IAAI0D,EAAKC,KAAMC,KAEfF,EAAG3D,KAAOC,EAEV0D,EAAGmN,cAAgBpQ,EAAYqD,eAC/BJ,EAAGoN,cAAgBvP,EAAKwP,aACxBrN,EAAGsN,YAAczP,EAAK0P,WACtBvN,EAAGwN,YAAc3P,EAAK4P,WACtBzN,EAAG0N,gBAAkB7P,EAAK8P,eAC1B3N,EAAG4N,cACH5N,EAAG6N,qBACH7N,EAAG8N,kBA6DH,SAA2BC,GACzB,OAAIlT,QAAQmT,SAASD,IACVtF,MAAOsF,GAETA,GAhEX/N,EAAGiO,gBAkEH,SAAyBC,EAAMC,EAAWnL,GACxChD,EAAG3D,KAAK0Q,QAAQoB,EAAWnL,GAC3BkL,EAAKE,aAnEPpO,EAAGqO,OAqEH,WACE,IAAIpM,EAAIjC,EAAG3D,KAAKiS,SAAU7F,MAAO,KACjC7I,EAAM,OAASqC,IAtEjBjC,EAAGuO,YAwEH,WACEvO,EAAG3D,KAAKmS,SAAW,IAAIC,MAxEzBzO,EAAG0O,cA0EH,WACE1O,EAAG3D,KAAKsS,eAAe,KA1EzB3O,EAAG4O,SA4EH,WACE,IAAI3M,EAAIjC,EAAG3D,KAAKwS,UAAU,IAC1BjP,EAAM,SAAWqC,IA7EnBjC,EAAG8O,SA+EH,WACE,IAAI7M,EAAIjC,EAAG3D,KAAK0S,UAAU,IAC1BnP,EAAM,SAAWqC,IAhFnBjC,EAAGgP,OAkFH,WACE,IAAI/M,EAAIjC,EAAG3D,KAAK4S,QAAQ,GAAI,IAC5BrP,EAAM,OAASqC,IAnFjBjC,EAAGkP,WAmGH,WACE,IAAIjN,EAAIjC,EAAG3D,KAAK8S,YAAY,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IACxDvP,EAAM,WAAaqC,IApGrBjC,EAAGoP,kBAoFH,WACE,OAAO9R,EAAEmD,KAAKnE,EAAU+S,cAAcjM,OAAS,GApFjDpD,EAAGsP,eAsFH,WACOzU,QAAQqI,UAAUlD,EAAG3D,KAAKgT,gBAC7BrP,EAAG3D,KAAKgT,iBAGV,IAAIE,EAAgBjS,EAAEkS,SAAS,IAAK,IAAK,IAAK,KAAMlS,EAAEmD,KAAKnE,EAAU+S,eACrErP,EAAG3D,KAAKgT,aAAaE,EAAc,IAAM,IA3F3CvP,EAAGyP,kBA6FH,SAA2B7O,UAClBZ,EAAG3D,KAAKgT,aAAazO,IA7F9BZ,EAAG0P,WAmGH,SAAoBlK,EAAQmK,GAC1B,OAAInK,EAAOpC,OAAS8J,EAAW0C,yBAGxB7S,EAAYqD,eAAekF,QAAQE,GAASqK,KAAK,EAAMC,cAAc,GAAOH,GAAexR,KAAK,SAAS8F,GAC9G,OAAOA,KAvGXjE,EAAGuJ,KA0GH,SAAc2E,GACRA,EAAK6B,QACP/P,EAAG3D,KAAKsP,QACLxN,KAAK,SAASsL,GACb,IAAIxH,EAAI3E,EAAE0H,QAAQ1H,EAAEyH,IAAIhI,EAAYqD,eAAehC,OAAQ,MAAO4B,EAAG3D,KAAKmB,IACtEyE,EAAI,EAENlF,EAAYqD,eAAezC,UAI3BZ,EAAYqD,eAAehC,OAAO6D,GAAKpH,QAAQmV,KAAKhQ,EAAG3D,MAEzDe,EAAOmB,GAAG,6BAA+BD,OAAQ0B,EAAG3D,KAAKmB,QAtHjEwC,EAAG0I,MAAQA,EACX1I,EAAGiQ,MA+HH,SAAe/B,GACblO,EAAG3D,KAAK6T,SACRhC,EAAKiC,gBAhIPnQ,EAAG6L,OAkIH,WACE7L,EAAG3D,KAAK6T,SACJlQ,EAAG3D,KAAK+T,OAEVpQ,EAAG3D,KAAO,YACHU,EAAYqD,eAAe1C,aAClCN,EAAOmB,GAAG,mBAAqBd,cAAeV,EAAYqD,eAAe5C,MAIzEJ,EAAOmB,GAAG,6BAA+BD,OAAQ0B,EAAG3D,KAAKmB,MA3I7DwC,EAAG4J,cAAgBA,EACnB5J,EAAGqQ,gBA+JH,SAAyBvO,GAClB9B,EAAGsQ,eAAkBtQ,EAAGuQ,UAO3BvQ,EAAGsQ,eAAiBtQ,EAAGsQ,cANvBzS,EAAK2S,WAAWC,KAAKzQ,EAAGmN,cAAc3P,GAAK,IAAMwC,EAAG3D,KAAKmB,GAAI,OAAOW,KAAK,SAASsL,GAChFzJ,EAAGuQ,UAAY9G,EACfzJ,EAAGsQ,eAAgB,KAlKzBtQ,EAAGsQ,eAAgB,EAcO7P,EAXTP,EAYf5C,EAAEkE,SAAS,YAAa,UAAW,SAASC,GAC1ChB,EAAKC,KAAKX,EAAUY,cAClBC,IAAKa,EACLX,YAAaD,EAAE,UACfE,SAAU,SAASe,GACyB,IAAtC9B,EAAGmN,cAAc7K,kBACnBsH,IACF9H,EAAOc,uBAMbtF,EAAEkE,QAAQf,EAAM,SAASG,GACvBb,EAAU4B,eAAef,KAf7B,IAA0BH,EAoBpBT,EAAG3D,KAAKqU,gBACV1Q,EAAG3D,KAAKsU,eAAexS,KAAK,SAASyS,GACnC5Q,EAAG6Q,YAAcD,GAChB,kBACM5Q,EAAG3D,KAAKqU,iBAhCrBpR,EAAOX,IAAI,WAAY,WAErBrB,EAAEkE,QAAQtB,EAAS,SAASU,GAC1Bb,EAAU6B,iBAAiBhB,OA4G/B,SAAS8H,IACPtL,EAAOmB,GAAG,mBAAmBJ,KAAK,WAChC6B,EAAG3D,KAAO,YACHU,EAAYqD,eAAe1C,eAoBtC,SAASkM,IACP,IAAIvN,EAAOC,EAEXuD,EAAO4D,QAAQ5C,EAAE,WACFA,EAAE,oDAAqD,MAAQxE,EAAKyU,YAAc,SAChFpN,GAAI7C,EAAE,YACpB1C,KAAK,WAEJpB,EAAYqD,eAAeuD,cAActH,IACtC8B,KAAK,WACJuK,KACC,SAASe,EAAMC,GAChB7J,EAAO8J,MAAM9I,EAAE,WAAYA,EAAE,mDACAxE,EAAKyU,mBAkB9CjW,QACGC,OAAO,mBACPc,WAAW,iBAAkBqR,GApNlC,GCAA,WACE,aA8BApS,QACGC,OAAO,eACPiW,UAAU,YAxBb,WACE,OACEC,SAAU,IACVjH,OAASN,KAAM,cACf7N,YAAa,SAAU,SAAS0D,GAC9BA,EAAO2R,aAAe,SAASxH,GAC7B,IAAIyH,KACAC,KAQJ,OAPI1H,EAAK2H,QAAQF,EAAMxQ,KAAK+I,EAAK2H,QAC7B3H,EAAK4H,SAASH,EAAMxQ,KAAK+I,EAAK4H,SAC9B5H,EAAK6H,UAAUH,EAAgBzQ,KAAK+I,EAAK6H,UACzC7H,EAAK8H,QAAQJ,EAAgBzQ,KAAK+I,EAAK8H,QACvCJ,EAAgB/N,OAAS,GAAG8N,EAAMxQ,KAAKyQ,EAAgBjH,KAAK,OAC5DT,EAAK+H,SAASN,EAAMxQ,KAAK+I,EAAK+H,SAC9B/H,EAAKgI,YAAYP,EAAMxQ,KAAK+I,EAAKgI,YAC9BP,EAAMhH,KAAK,WAGtB1N,SAAU,2DA3BhB","file":"Contacts.js"} \ No newline at end of file +{"version":3,"sources":["Contacts/Contacts.app.js","Contacts/AddressBookController.js","Contacts/AddressBooksController.js","Contacts/CardController.js","Contacts/sgAddress.directive.js"],"names":["angular","module","config","configure","run","runBlock","$inject","$stateProvider","$urlRouterProvider","state","url","abstract","views","addressbooks","templateUrl","controller","controllerAs","resolve","stateAddressbooks","addressbook","stateAddressbook","params","refs","array","card","stateCard","stateNewCard","template","onEnter","onEnterCard","onExit","onExitCard","card@app.addressbook","otherwise","AddressBook","$findAll","window","contactFolders","$q","$state","$stateParams","_","find","id","addressbookId","selectedCard","$reload","reject","Card","tag","contactType","pid","c_component","$futureAddressBookData","then","$cards","cardObject","cardId","go","stateMailbox","$rootScope","$log","$on","event","toState","toParams","fromState","fromParams","error","current","previous","rejection","AddressBookController","$scope","$window","$timeout","$mdDialog","$mdToast","Account","focus","Dialog","Settings","sgHotkeys","vm","this","hotkeys","$onInit","selectedFolder","service","mode","search","multiple","keys","push","createHotkey","key","l","description","callback","bind","searchMode","newComponent","toggleCardSelection","_nextCard","_previousCard","_addNextCardToSelection","_addPreviousCardToSelection","forEach","hotkey","confirmDeleteSelectedCards","registerHotkey","deregisterHotkey","centerIsClose","navController_centerIsClose","hasSelectedCard","selectCard","$event","selectedIndex","nextSelectedIndex","i","folder","$selectedCard","selected","shiftKey","$selectedCount","idsMap","getLength","Math","min","max","preventDefault","stopPropagation","type","unselectCards","index","$selectedCardIndex","isDefined","$topIndex","length","selectedCards","$selectedCards","size","confirm","ok","$deleteCards","_selectedCardsOperation","operation","dstId","srcFolder","allCards","cards","ids","clearCardView","promise","success","filter","$isCard","show","simple","content","position","hideDelay","$copyCards","$moveCards","map","indexOf","copySelectedCards","moveSelectedCards","selectAll","sort","field","$filter","sortedBy","$query","cancelSearch","newMessage","recipients","recipientsField","accounts","account","o","$getMailboxes","mailboxes","$newMessage","message","editable","parent","element","document","body","targetEvent","clickOutsideToClose","escapeToClose","locals","stateAccount","stateMessage","newMessageWithRecipient","recipient","fn","newMessageWithSelectedCards","promises","$isList","expandable","ref","email","$shortFormat","c_mail","all","uniq","newListWithSelectedCards","$$email","uniqBy","reference","AddressBooksController","$mdMedia","$mdSidenav","FileUploader","sgConstant","User","activeUser","select","editMode","value","close","newAddressbook","prompt","name","isEditable","isRemote","owner","UserLogin","$add","edit","originalAddressbook","$omit","revertEditing","save","$rename","data","status","alert","confirmDelete","importCards","CardsImportDialogController","scope","uploader","ApplicationBaseURL","join","autoUpload","queueLimit","filters","filterByExtension","onSuccessItem","item","response","headers","msg","hide","imported","onErrorItem","isTextFile","test","showLinks","urls","when","$reloadAll","LinksDialogController","showProperties","PropertiesDialogController","srcAddressBook","catch","saveProperties","$save","init","cancel","share","$acl","$users","usersWithACL","users","subscribeToFolder","addressbookData","console","debug","$subscribe","isDroppableFolder","dstFolder","isOwned","acls","objectCreator","dragSelectedCards","isSubscription","$delete","statusText","CardController","sgSettings","currentFolder","allEmailTypes","$EMAIL_TYPES","allTelTypes","$TEL_TYPES","allUrlTypes","$URL_TYPES","allAddressTypes","$ADDRESS_TYPES","categories","userFilterResults","transformCategory","input","isString","removeAttribute","form","attribute","$setDirty","addOrg","$addOrg","addBirthday","birthday","Date","addScreenName","$addScreenName","addEmail","$addEmail","addPhone","$addPhone","addUrl","$addUrl","addAddress","$addAddress","canAddCustomField","customFields","addCustomField","availableKeys","pullAll","deleteCustomField","userFilter","excludedCards","minimumSearchLength","dry","excludeLists","$valid","copy","reset","$reset","$setPristine","isNew","toggleRawSource","showRawSource","rawSource","$$resource","post","hasCertificate","$certificate","crt","certificate","$fullname","directive","restrict","addressLines","lines","locality_region","street","street2","locality","region","country","postalcode"],"mappings":"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","file":"Contacts.js"} \ No newline at end of file diff --git a/UI/WebServerResources/js/Mailer.services.js b/UI/WebServerResources/js/Mailer.services.js index 6587a8dc7..ffae7e770 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){e.quotas&&t.$account.updateQuota(e.quotas)})},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.download(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()];_.extend(n.$messages[s],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)&&_.extend(n.$messages[s],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||(angular.extend(this,n),this.$formatFullAddresses()),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.$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},e.prototype.$content=function(){var t=this,n=[],s=function(i){if(i.msgclass="msg-attachment-other","UIxMailPartAlternativeViewer"==i.type)s(_.find(i.content,function(e){return i.preferredPart==e.contentType}));else if(angular.isArray(i.content)){if("UIxMailPartSignedViewer"==i.type&&1===i["supports-smime"]){var o="

"+i.error.replace(/\n/,'

');o=o.replace(/\n/g,'

')+"

",t.$smime={valid:i.valid,certificate:i.certificates[i.certificates.length-1],message:o}}else"UIxMailPartEncryptedViewer"==i.type&&(t.$smime={isEncrypted:!0,valid:i.valid},i.valid?t.$smime.message=l("This message is encrypted"):t.$smime.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)})}else 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){return e.$log.debug("New "+t+": "+JSON.stringify(s,void 0,2)+" original UID: "+n.uid),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 angular.extend(n,t),n.$formatFullAddresses(),n.$loadUnsafeContent=!1,n.$loaded=e.STATUS.LOADED,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.parts.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){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=[];return _.forEach(t,function(e,t){if(e.length>0){var s=e[0].$mailbox.$deleteMessages(e);n.push(s)}}),e.$q.all(n)},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)}}(),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=this,y=angular.element(e.document).find("title").attr("sg-default")||"SOGo",M=[];this.$onInit=function(){e.$mailboxController=v,this.service=b,this.accounts=r,this.account=c,this.selectedFolder=u,this.messageDialog=null,this.mode={search:!1,multiple:0},(n=M).push(d.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:v.searchMode})),n.push(d.createHotkey({key:l("hotkey_compose"),description:l("Write a new message"),callback:function(e){null===v.messageDialog&&v.newMessage(e)}})),n.push(d.createHotkey({key:l("hotkey_junk"),description:l("Mark the selected messages as junk"),callback:v.markOrUnMarkMessagesAsJunk})),n.push(d.createHotkey({key:"space",description:l("Toggle item"),callback:v.toggleMessageSelection})),n.push(d.createHotkey({key:"shift+space",description:l("Toggle range of items"),callback:v.toggleMessageSelection})),n.push(d.createHotkey({key:"up",description:l("View next item"),callback:C,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"down",description:l("View previous item"),callback:w,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+up",description:l("Add next item to selection"),callback:I,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+down",description:l("Add previous item to selection"),callback:E,preventInClass:["sg-mail-part"]})),_.forEach(["backspace","delete"],function(e){n.push(d.createHotkey({key:e,description:l("Delete selected message or folder"),callback:v.confirmDeleteSelectedMessages}))}),_.forEach(n,function(e){d.registerHotkey(e)});var n;angular.element(e).on("beforeunload",x),t.$on("$destroy",function(){angular.element(e).off("beforeunload",x),_.forEach(M,function(e){d.deregisterHotkey(e)})}),t.$watch(function(){return v.selectedFolder.unseenCount},function(t){var n=y+" - ";t&&(n+="("+t+") "),n+=v.selectedFolder.$displayName,e.document.title=n})};function x(e){return v.selectedFolder.$compact()}this.centerIsClose=function(e){return this.selectedFolder.hasSelectedMessage()&&!!e},this.sort=function(e){v.selectedFolder.$filter({sort:e})},this.sortedBy=function(e){return b.$query.sort==e},this.searchMode=function(){v.mode.search=!0,f("search")},this.cancelSearch=function(){v.mode.search=!1,v.selectedFolder.$filter().then(function(){v.selectedFolder.selectedMessage&&n(function(){v.selectedFolder.$topIndex=v.selectedFolder.uidsMap[v.selectedFolder.selectedMessage]})})},this.composeWindowEnabled=function(){return p.defaults.SOGoMailComposeWindowEnabled},this.newMessage=function(t,n){var s;null===v.messageDialog&&(n||"popup"==p.defaults.SOGoMailComposeWindow?function(){var t=[g.baseURL(),"UIxMailPopupView#!/Mail",v.account.id,h(h(v.selectedFolder.path)),"new"].join("/"),n=v.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=v.account.$newMessage(),v.messageDialog=o.show({parent:angular.element(document.body),targetEvent:t,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:v.account,stateMessage:s}}).catch().finally(function(){v.messageDialog=null})))};function C(e){var t=v.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t--,v.selectedFolder.$topIndex>0&&v.selectedFolder.$topIndex--):(t=v.selectedFolder.getLength()-1,v.selectedFolder.$topIndex=v.selectedFolder.getLength()),t>-1&&v.selectMessage(v.selectedFolder.$messages[t]),e.preventDefault(),t}function w(e){var t=v.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t++,v.selectedFolder.$topIndex=0&&v.toggleMessageSelection(e,v.selectedFolder.$messages[t])}function E(e){var t;v.selectedFolder.hasSelectedMessage()&&(t=w(e))>=0&&v.toggleMessageSelection(e,v.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=v.selectedFolder;if(t||(t=o.$selectedMessage()),!t)return!0;if(t.selected=!t.selected,v.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=v.selectedFolder.$messages[a]),t0&&(v.messageDialog=m.confirm(l("Confirmation"),l("Are you sure you want to delete the selected messages?"),{ok:l("Delete")}).then(function(){var e=v.selectedFolder.hasSelectedMessage();v.selectedFolder.$deleteMessages(t).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):A(e,t)},function(n){v.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(){v.selectedFolder.$deleteMessages(t,{withoutTrash:!0}).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):A(e,t)})})})}).finally(function(){v.messageDialog=null})),e.preventDefault()},this.markOrUnMarkMessagesAsJunk=function(){var e=v.selectedFolder.hasSelectedMessage(),t=v.selectedFolder.$selectedMessages();0===_.size(t)&&e&&(t=[v.selectedFolder.$selectedMessage()]),_.size(t)>0&&v.selectedFolder.$markOrUnMarkMessagesAsJunk(t).then(function(){var n="/"+v.account.id+"/folderINBOX";"junk"!=v.selectedFolder.type&&(n="/"+v.account.$getMailboxByType("junk").id),v.selectedFolder.$moveMessages(t,n).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):A(e,t)})})},this.copySelectedMessages=function(e){var t=v.selectedFolder.$selectedMessages();_.size(t)>0&&v.selectedFolder.$copyMessages(t,"/"+e).then(function(){a.show(a.simple().content(l("%{0} message(s) copied",v.selectedFolder.$selectedCount())).position("top right").hideDelay(2e3))})},this.moveSelectedMessages=function(e){var t=v.selectedFolder.hasSelectedMessage(),n=v.selectedFolder.$selectedMessages(),s=v.selectedFolder.$selectedCount();_.size(n)>0&&v.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"):A(t,e)})},this.selectAll=function(){var e=0;_.forEach(S(),function(t){for(var n=0,s=t.$messages.length;n0&&v.selectedFolder.$flagMessages(e,"\\Flagged","add").then(function(e){_.forEach(e,function(e){e.isflagged=!0})})},this.markSelectedMessagesAsUnread=function(){var e=v.selectedFolder.$selectedMessages();_.size(e)>0&&v.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=v.selectedFolder.$selectedMessages();_.size(e)>0&&v.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","$mdDialog","$mdToast","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){var v,y,M=this,x=[];this.$onInit=function(){this.service=f,this.accounts=b,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=$.defaults.SOGoMailShowSubscribedFoldersOnly,this.refreshUnseenCount(),t=x,_.forEach(["backspace","delete"],function(e){t.push(h.createHotkey({key:e,description:l("Delete selected message or folder"),callback:function(){f.selectedFolderController&&f.selectedFolder&&!f.selectedFolder.hasSelectedMessage()&&f.selectedFolderController.confirmDelete(f.selectedFolder)}}))}),_.forEach(t,function(e){h.registerHotkey(e)});var t;e.$on("$destroy",function(){_.forEach(x,function(e){h.deregisterHotkey(e)})})};this.hideAdvancedSearch=function(){M.service.$virtualPath=!1,M.service.$virtualMode=!1,v=M.accounts[0],y=M.searchPreviousMailbox,t.go("mail.account.mailbox",{accountId:v.id,mailboxId:c(y.path)})},this.toggleAdvancedSearch=function(){if(f.selectedFolder.$isLoading)M.virtualMailbox.stopSearch();else{var e,n=[],s=function(e){_.forEach(e,function(e){n.push(e),e.children&&e.children.length>0&&s(e.children)})};M.virtualMailbox=new m(M.accounts[0]),f.$virtualMode||(M.searchPreviousMailbox=f.selectedFolder),f.selectedFolder=M.virtualMailbox,f.$virtualMode=!0,angular.isDefined(f.$virtualPath)?(e=M.accounts[0].$getMailboxByPath(f.$virtualPath),n.push(e),M.search.subfolders&&e.children.length&&s(e.children)):n=M.accounts[0].$flattenMailboxes(),M.virtualMailbox.setMailboxes(n),M.virtualMailbox.startSearch(M.search.match,M.search.params),"mail.account.virtualMailbox"!=t.$current.name&&t.go("mail.account.virtualMailbox",{accountId:M.accounts[0].id})}},this.addSearchParam=function(e){return M.currentSearchParam=e,r("advancedSearch"),!1},this.newSearchParam=function(e){if(e.length&&M.currentSearchParam.length){var t=0,n=M.currentSearchParam;return e.startsWith("!")&&(t=1,e=e.substring(1).trim()),M.currentSearchParam="",{searchBy:n,searchInput:e,negative:t}}},this.toggleAccountState=function(e){e.$expanded=!e.$expanded,e.$flattenMailboxes({reload:!0,saveState:!0}),s(function(){angular.element(i).triggerHandler("resize")},150)},this.subscribe=function(e){o.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 g({id:n.id,name:n.name}),s.close=function(){t.hide()},s.account.$getMailboxes({reload:!0,all:!0}).then(function(){s.loading=!1})}},this.newFolder=function(e){u.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){u.alert(l('An error occured while creating the mailbox "%{0}".',t),l(e.error))})})},this.delegate=function(e){o.show({templateUrl:e.id+"/delegation",controller:t,controllerAs:"delegate",clickOutsideToClose:!0,escapeToClose:!0,locals:{User:p,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){u.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){u.alert(l("Warning"),e)})}}},this.refreshUnseenCount=function(){var e,t=i.unseenCountFolders;_.forEach(M.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)})}),g.$$resource.post("","unseenCount",{mailboxes:t}).then(function(e){_.forEach(M.accounts,function(t){_.forEach(t.$$flattenMailboxes,function(t){e[t.id]&&(t.unseenCount=e[t.id])})})}),(e=$.defaults.SOGoRefreshViewCheck)&&"manually"!=e&&s(M.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,r,c,u,d;i="/"+n.id,0===(o=e.$selectedMessages()).length&&(o=[e.$selectedMessage()]),r=_.map(o,"uid"),c=e.selectedMessage&&r.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(){c&&t.go("mail.account.mailbox"),a.show(a.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,C.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?(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&&e.opener.$mailboxController&&e.opener.$mailboxController.selectedFolder.$id()==c.$id()&&(n=e.opener.$mailboxController,s.mailboxCtrl=n,e.opener.$messageController&&e.opener.$messageController.message.uid==u.uid&&(t=e.opener.$messageController,s.messageCtrl=t)),s}this.addFlags=function(e){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),e.$deleteMessages([t]).then(function(n){var l=n;if(t=null,angular.isDefined(i)){n>0&&(l-=1,a=e.$messages[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}}).finally(function(){I(null),C.closePopup()}))}this._showMailEditorInPopup=function(e){return!g.isPopup&&"popup"==$.defaults.SOGoMailComposeWindow&&(this.openInPopup(e),!0)},this.close=function(){n.go("mail.account.mailbox").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.opener&&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","$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){var p=this;p.addRecipient=function(e,t){var n,s,i,o,a,r=/([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)/i;if(n=p.message.editable[t],angular.isString(e)){for(a="",o=0;o',' '," {{$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){e.quotas&&t.$account.updateQuota(e.quotas)})},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.download(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()];_.extend(n.$messages[s],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)&&_.extend(n.$messages[s],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||(angular.extend(this,n),this.$formatFullAddresses()),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.$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 angular.extend(n,t),n.$formatFullAddresses(),n.$loadUnsafeContent=!1,n.$loaded=e.STATUS.LOADED,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.parts.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){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=[];return _.forEach(t,function(e,t){if(e.length>0){var s=e[0].$mailbox.$deleteMessages(e);n.push(s)}}),e.$q.all(n)},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)}}(),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=this,y=angular.element(e.document).find("title").attr("sg-default")||"SOGo",M=[];this.$onInit=function(){e.$mailboxController=v,this.service=b,this.accounts=r,this.account=c,this.selectedFolder=u,this.messageDialog=null,this.mode={search:!1,multiple:0},(n=M).push(d.createHotkey({key:l("hotkey_search"),description:l("Search"),callback:v.searchMode})),n.push(d.createHotkey({key:l("hotkey_compose"),description:l("Write a new message"),callback:function(e){null===v.messageDialog&&v.newMessage(e)}})),n.push(d.createHotkey({key:l("hotkey_junk"),description:l("Mark the selected messages as junk"),callback:v.markOrUnMarkMessagesAsJunk})),n.push(d.createHotkey({key:"space",description:l("Toggle item"),callback:v.toggleMessageSelection})),n.push(d.createHotkey({key:"shift+space",description:l("Toggle range of items"),callback:v.toggleMessageSelection})),n.push(d.createHotkey({key:"up",description:l("View next item"),callback:C,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"down",description:l("View previous item"),callback:w,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+up",description:l("Add next item to selection"),callback:I,preventInClass:["sg-mail-part"]})),n.push(d.createHotkey({key:"shift+down",description:l("Add previous item to selection"),callback:E,preventInClass:["sg-mail-part"]})),_.forEach(["backspace","delete"],function(e){n.push(d.createHotkey({key:e,description:l("Delete selected message or folder"),callback:v.confirmDeleteSelectedMessages}))}),_.forEach(n,function(e){d.registerHotkey(e)});var n;angular.element(e).on("beforeunload",x),t.$on("$destroy",function(){angular.element(e).off("beforeunload",x),_.forEach(M,function(e){d.deregisterHotkey(e)})}),t.$watch(function(){return v.selectedFolder.unseenCount},function(t){var n=y+" - ";t&&(n+="("+t+") "),n+=v.selectedFolder.$displayName,e.document.title=n})};function x(e){return v.selectedFolder.$compact()}this.centerIsClose=function(e){return this.selectedFolder.hasSelectedMessage()&&!!e},this.sort=function(e){v.selectedFolder.$filter({sort:e})},this.sortedBy=function(e){return b.$query.sort==e},this.searchMode=function(){v.mode.search=!0,f("search")},this.cancelSearch=function(){v.mode.search=!1,v.selectedFolder.$filter().then(function(){v.selectedFolder.selectedMessage&&n(function(){v.selectedFolder.$topIndex=v.selectedFolder.uidsMap[v.selectedFolder.selectedMessage]})})},this.composeWindowEnabled=function(){return p.defaults.SOGoMailComposeWindowEnabled},this.newMessage=function(t,n){var s;null===v.messageDialog&&(n||"popup"==p.defaults.SOGoMailComposeWindow?function(){var t=[g.baseURL(),"UIxMailPopupView#!/Mail",v.account.id,h(h(v.selectedFolder.path)),"new"].join("/"),n=v.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=v.account.$newMessage(),v.messageDialog=o.show({parent:angular.element(document.body),targetEvent:t,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccount:v.account,stateMessage:s}}).catch().finally(function(){v.messageDialog=null})))};function C(e){var t=v.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t--,v.selectedFolder.$topIndex>0&&v.selectedFolder.$topIndex--):(t=v.selectedFolder.getLength()-1,v.selectedFolder.$topIndex=v.selectedFolder.getLength()),t>-1&&v.selectMessage(v.selectedFolder.$messages[t]),e.preventDefault(),t}function w(e){var t=v.selectedFolder.$selectedMessageIndex();return angular.isDefined(t)?(t++,v.selectedFolder.$topIndex=0&&v.toggleMessageSelection(e,v.selectedFolder.$messages[t])}function E(e){var t;v.selectedFolder.hasSelectedMessage()&&(t=w(e))>=0&&v.toggleMessageSelection(e,v.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=v.selectedFolder;if(t||(t=o.$selectedMessage()),!t)return!0;if(t.selected=!t.selected,v.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=v.selectedFolder.$messages[a]),t0&&(v.messageDialog=m.confirm(l("Confirmation"),l("Are you sure you want to delete the selected messages?"),{ok:l("Delete")}).then(function(){var e=v.selectedFolder.hasSelectedMessage();v.selectedFolder.$deleteMessages(t).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):A(e,t)},function(n){v.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(){v.selectedFolder.$deleteMessages(t,{withoutTrash:!0}).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):A(e,t)})})})}).finally(function(){v.messageDialog=null})),e.preventDefault()},this.markOrUnMarkMessagesAsJunk=function(){var e=v.selectedFolder.hasSelectedMessage(),t=v.selectedFolder.$selectedMessages();0===_.size(t)&&e&&(t=[v.selectedFolder.$selectedMessage()]),_.size(t)>0&&v.selectedFolder.$markOrUnMarkMessagesAsJunk(t).then(function(){var n="/"+v.account.id+"/folderINBOX";"junk"!=v.selectedFolder.type&&(n="/"+v.account.$getMailboxByType("junk").id),v.selectedFolder.$moveMessages(t,n).then(function(t){b.$virtualMode?e&&i.go("mail.account.virtualMailbox"):A(e,t)})})},this.copySelectedMessages=function(e){var t=v.selectedFolder.$selectedMessages();_.size(t)>0&&v.selectedFolder.$copyMessages(t,"/"+e).then(function(){a.show(a.simple().content(l("%{0} message(s) copied",v.selectedFolder.$selectedCount())).position("top right").hideDelay(2e3))})},this.moveSelectedMessages=function(e){var t=v.selectedFolder.hasSelectedMessage(),n=v.selectedFolder.$selectedMessages(),s=v.selectedFolder.$selectedCount();_.size(n)>0&&v.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"):A(t,e)})},this.selectAll=function(){var e=0;_.forEach(S(),function(t){for(var n=0,s=t.$messages.length;n0&&v.selectedFolder.$flagMessages(e,"\\Flagged","add").then(function(e){_.forEach(e,function(e){e.isflagged=!0})})},this.markSelectedMessagesAsUnread=function(){var e=v.selectedFolder.$selectedMessages();_.size(e)>0&&v.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=v.selectedFolder.$selectedMessages();_.size(e)>0&&v.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","$mdDialog","$mdToast","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){var v,y,M=this,x=[];this.$onInit=function(){this.service=f,this.accounts=b,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=$.defaults.SOGoMailShowSubscribedFoldersOnly,this.refreshUnseenCount(),t=x,_.forEach(["backspace","delete"],function(e){t.push(h.createHotkey({key:e,description:l("Delete selected message or folder"),callback:function(){f.selectedFolderController&&f.selectedFolder&&!f.selectedFolder.hasSelectedMessage()&&f.selectedFolderController.confirmDelete(f.selectedFolder)}}))}),_.forEach(t,function(e){h.registerHotkey(e)});var t;e.$on("$destroy",function(){_.forEach(x,function(e){h.deregisterHotkey(e)})})};this.hideAdvancedSearch=function(){M.service.$virtualPath=!1,M.service.$virtualMode=!1,v=M.accounts[0],y=M.searchPreviousMailbox,t.go("mail.account.mailbox",{accountId:v.id,mailboxId:c(y.path)})},this.toggleAdvancedSearch=function(){if(f.selectedFolder.$isLoading)M.virtualMailbox.stopSearch();else{var e,n=[],s=function(e){_.forEach(e,function(e){n.push(e),e.children&&e.children.length>0&&s(e.children)})};M.virtualMailbox=new m(M.accounts[0]),f.$virtualMode||(M.searchPreviousMailbox=f.selectedFolder),f.selectedFolder=M.virtualMailbox,f.$virtualMode=!0,angular.isDefined(f.$virtualPath)?(e=M.accounts[0].$getMailboxByPath(f.$virtualPath),n.push(e),M.search.subfolders&&e.children.length&&s(e.children)):n=M.accounts[0].$flattenMailboxes(),M.virtualMailbox.setMailboxes(n),M.virtualMailbox.startSearch(M.search.match,M.search.params),"mail.account.virtualMailbox"!=t.$current.name&&t.go("mail.account.virtualMailbox",{accountId:M.accounts[0].id})}},this.addSearchParam=function(e){return M.currentSearchParam=e,r("advancedSearch"),!1},this.newSearchParam=function(e){if(e.length&&M.currentSearchParam.length){var t=0,n=M.currentSearchParam;return e.startsWith("!")&&(t=1,e=e.substring(1).trim()),M.currentSearchParam="",{searchBy:n,searchInput:e,negative:t}}},this.toggleAccountState=function(e){e.$expanded=!e.$expanded,e.$flattenMailboxes({reload:!0,saveState:!0}),s(function(){angular.element(i).triggerHandler("resize")},150)},this.subscribe=function(e){o.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 g({id:n.id,name:n.name}),s.close=function(){t.hide()},s.account.$getMailboxes({reload:!0,all:!0}).then(function(){s.loading=!1})}},this.newFolder=function(e){u.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){u.alert(l('An error occured while creating the mailbox "%{0}".',t),l(e.error))})})},this.delegate=function(e){o.show({templateUrl:e.id+"/delegation",controller:t,controllerAs:"delegate",clickOutsideToClose:!0,escapeToClose:!0,locals:{User:p,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){u.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){u.alert(l("Warning"),e)})}}},this.refreshUnseenCount=function(){var e,t=i.unseenCountFolders;_.forEach(M.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)})}),g.$$resource.post("","unseenCount",{mailboxes:t}).then(function(e){_.forEach(M.accounts,function(t){_.forEach(t.$$flattenMailboxes,function(t){e[t.id]&&(t.unseenCount=e[t.id])})})}),(e=$.defaults.SOGoRefreshViewCheck)&&"manually"!=e&&s(M.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,r,c,u,d;i="/"+n.id,0===(o=e.$selectedMessages()).length&&(o=[e.$selectedMessage()]),r=_.map(o,"uid"),c=e.selectedMessage&&r.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(){c&&t.go("mail.account.mailbox"),a.show(a.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,C.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?(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&&e.opener.$mailboxController&&e.opener.$mailboxController.selectedFolder.$id()==c.$id()&&(n=e.opener.$mailboxController,s.mailboxCtrl=n,e.opener.$messageController&&e.opener.$messageController.message.uid==u.uid&&(t=e.opener.$messageController,s.messageCtrl=t)),s}this.addFlags=function(e){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),e.$deleteMessages([t]).then(function(n){var l=n;if(t=null,angular.isDefined(i)){n>0&&(l-=1,a=e.$messages[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}}).finally(function(){I(null),C.closePopup()}))}this._showMailEditorInPopup=function(e){return!g.isPopup&&"popup"==$.defaults.SOGoMailComposeWindow&&(this.openInPopup(e),!0)},this.close=function(){n.go("mail.account.mailbox").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.opener&&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","$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){var p=this;p.addRecipient=function(e,t){var n,s,i,o,a,r=/([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)/i;if(n=p.message.editable[t],angular.isString(e)){for(a="",o=0;o',' '," {{$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 978a79864..c3dd1064d 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","$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","$formatFullAddresses","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","buildPath","nocache","draftId","withResourcePath","$setUID","oldUID","attr","constructor","shortname","first","last","image","$shortRecipients","result","count","total","$shortAddress","address","allowReplyAll","recipientsCount","isDraft","loadUnsafeContent","$content","parts","part","msgclass","content","alternatePart","preferredPart","contentType","isArray","formattedMessage","$smime","valid","certificate","certificates","isEncrypted","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","open","mdPanelRef","$inject","close","selectImage","VirtualMailbox","setMailboxes","startSearch","params","finally","stopSearch","resetSelectedMessage","len","k","transform","messagesMap","sum","allMessages","promises","assign","flatten","MailboxController","$window","$scope","$state","$mdDialog","$mdToast","stateAccounts","stateAccount","stateMailbox","encodeUriFilter","sgSettings","focus","Dialog","vm","defaultWindowTitle","$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","cancelSearch","composeWindowEnabled","SOGoMailComposeWindowEnabled","inPopup","SOGoMailComposeWindow","baseURL","wId","random","console","_newMessageInPopup","templateUrl","stateMessage","catch","selectMessage","preventDefault","go","mailboxId","nextSelectedIndex","shiftKey","stopPropagation","_currentMailboxes","_unselectMessage","nextMessage","previousMessage","nextIndex","size","confirm","ok","deleteSelectedMessage","withoutTrash","moveSelectedMessage","dstFolder","copySelectedMessages","simple","hideDelay","moveSelectedMessages","selectAll","unselectMessages","markSelectedMessagesAsFlagged","markSelectedMessagesAsUnread","markSelectedMessagesAsRead","mdVirtualRepeatContainerDirectiveDecorator","$delegate","resetScroll","$element","updateSize","scrollTo","decorator","MailboxesController","$transitions","User","currentSearchParam","","subfolders","showSubscribedOnly","SOGoMailShowSubscribedFoldersOnly","refreshUnseenCount","selectedFolderController","confirmDelete","hideAdvancedSearch","searchPreviousMailbox","toggleAdvancedSearch","virtualMailbox","root","folders","$current","addSearchParam","v","newSearchParam","pattern","n","searchParam","substring","negative","toggleAccountState","triggerHandler","subscribe","SubscriptionsDialogController","srcAccount","hide","newFolder","parentFolder","prompt","alert","delegate","MailboxDelegationController","userToAdd","searchText","userFilter","closeModal","removeUser","addUser","unseenCountFolders","isDroppableFolder","srcFolder","dragSelectedMessages","dstId","clearMessageView","success","MessageController","$mdMedia","sgConstant","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","edit","toggleRawSource","$rawSource","print","convertToEvent","_convertToComponent","convertToTask","componentData","pid","$defaultCalendar","summary","comment","capitalize","stateComponent","MessageEditorController","$stateParams","$mdConstant","FileUploader","AddressBook","Card","addRecipient","contact","recipients","recipient","list","emailRE","charCodeAt","test","charAt","$isList","expandable","refs","ref","$shortFormat","container","c_name","listId","autocomplete","autosave","autosaveDrafts","SOGoMailAutoSave","contactFilter","$filterAll","cards","explodedCards","manyCards","card","uniqBy","$$fullname","$$email","isFullscreen","hideBcc","hideCc","uniq","recipientSeparatorKeys","KEY_CODE","ENTER","TAB","COMMA","SEMICOLON","removeAttachment","item","isUploading","uploader","cancelItem","file","getElementById","prop","draftMailboxCtrl","draftMessageCtrl","send","sendState","originMailboxCtrl","errorMessage","statusText","toggleFullscreen","autoUpload","alias","removeAfterUpload","onSuccessItem","inlineUrl","lastAttachmentAttrs","onCancelItem","removeFromQueue","onErrorItem","localeCode","LocaleCode","destroy","actionName","addAttachments","originMessage","fileItem","FileItem","progress","isUploaded","isSuccess","queue","SendMessageToastController","closeToast","sgAccountController","$mdSidenav","$postLink","quotaElement","div","contains","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","select","saveFolder","disabled","revertEditing","showMenu","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","itemCtrl","MenuController","panelRef","panelEl","$menuCtrl","markFolderRead","compactFolder","emptyTrashFolder","showAdvancedSearch","share","$users","usersWithACL","setFolderAs","require","sgMessageListItemController","watchedAttrs","MailboxService","pick","newId","oldId","onUpdate","setVisibility","visible","sgMessageListItemMainController","$parse","$mdUtil","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","$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","$formatFullAddresses","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","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","open","mdPanelRef","$inject","close","selectImage","VirtualMailbox","setMailboxes","startSearch","params","finally","stopSearch","resetSelectedMessage","len","k","transform","messagesMap","sum","allMessages","promises","assign","flatten","MailboxController","$window","$scope","$state","$mdDialog","$mdToast","stateAccounts","stateAccount","stateMailbox","encodeUriFilter","sgSettings","focus","Dialog","vm","defaultWindowTitle","$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","cancelSearch","composeWindowEnabled","SOGoMailComposeWindowEnabled","inPopup","SOGoMailComposeWindow","baseURL","wId","random","console","_newMessageInPopup","templateUrl","stateMessage","catch","selectMessage","preventDefault","go","mailboxId","nextSelectedIndex","shiftKey","stopPropagation","_currentMailboxes","_unselectMessage","nextMessage","previousMessage","nextIndex","size","confirm","ok","deleteSelectedMessage","withoutTrash","moveSelectedMessage","dstFolder","copySelectedMessages","simple","hideDelay","moveSelectedMessages","selectAll","unselectMessages","markSelectedMessagesAsFlagged","markSelectedMessagesAsUnread","markSelectedMessagesAsRead","mdVirtualRepeatContainerDirectiveDecorator","$delegate","resetScroll","$element","updateSize","scrollTo","decorator","MailboxesController","$transitions","User","currentSearchParam","","subfolders","showSubscribedOnly","SOGoMailShowSubscribedFoldersOnly","refreshUnseenCount","selectedFolderController","confirmDelete","hideAdvancedSearch","searchPreviousMailbox","toggleAdvancedSearch","virtualMailbox","root","folders","$current","addSearchParam","v","newSearchParam","pattern","n","searchParam","substring","negative","toggleAccountState","triggerHandler","subscribe","SubscriptionsDialogController","srcAccount","hide","newFolder","parentFolder","prompt","alert","delegate","MailboxDelegationController","userToAdd","searchText","userFilter","closeModal","removeUser","addUser","unseenCountFolders","isDroppableFolder","srcFolder","dragSelectedMessages","dstId","clearMessageView","success","MessageController","$mdMedia","sgConstant","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","edit","toggleRawSource","$rawSource","print","convertToEvent","_convertToComponent","convertToTask","componentData","pid","$defaultCalendar","summary","comment","capitalize","stateComponent","MessageEditorController","$stateParams","$mdConstant","FileUploader","AddressBook","Card","addRecipient","contact","recipients","recipient","list","emailRE","charCodeAt","test","charAt","$isList","expandable","refs","ref","$shortFormat","container","c_name","listId","autocomplete","autosave","autosaveDrafts","SOGoMailAutoSave","contactFilter","$filterAll","cards","explodedCards","manyCards","card","uniqBy","$$fullname","$$email","isFullscreen","hideBcc","hideCc","uniq","recipientSeparatorKeys","KEY_CODE","ENTER","TAB","COMMA","SEMICOLON","removeAttachment","item","isUploading","uploader","cancelItem","file","getElementById","prop","draftMailboxCtrl","draftMessageCtrl","send","sendState","originMailboxCtrl","errorMessage","statusText","toggleFullscreen","autoUpload","alias","removeAfterUpload","onSuccessItem","inlineUrl","lastAttachmentAttrs","onCancelItem","removeFromQueue","onErrorItem","localeCode","LocaleCode","destroy","actionName","addAttachments","originMessage","fileItem","FileItem","progress","isUploaded","isSuccess","queue","SendMessageToastController","closeToast","sgAccountController","$mdSidenav","$postLink","quotaElement","div","contains","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","select","saveFolder","disabled","revertEditing","showMenu","relativeTo","addPanelPosition","xPosition","ALIGN_START","yPosition","ALIGN_TOPS","itemCtrl","MenuController","panelRef","panelEl","$menuCtrl","markFolderRead","compactFolder","emptyTrashFolder","showAdvancedSearch","share","$users","usersWithACL","setFolderAs","require","sgMessageListItemController","watchedAttrs","MailboxService","pick","newId","oldId","onUpdate","setVisibility","visible","sgMessageListItemMainController","$parse","$mdUtil","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