sogo/UI/WebServerResources/js/Mailer.app.popup.js
2015-09-15 12:05:37 -04:00

2 lines
3.8 KiB
JavaScript

!function(){"use strict";function configure($stateProvider,$urlRouterProvider){$stateProvider.state("mail",{url:"/Mail","abstract":!0,views:{message:{template:"<ui-view/>"}},resolve:{stateAccounts:stateAccounts}}).state("mail.account",{url:"/:accountId","abstract":!0,template:'<ui-view id="account"/>',resolve:{stateAccount:stateAccount}}).state("mail.account.mailbox",{url:"/:mailboxId","abstract":!0,template:'<ui-view id="mailbox"/>',resolve:{stateMailbox:stateMailbox}}).state("mail.account.mailbox.newMessage",{url:"/new",views:{"message@":{template:"<ui-view/>",controller:"MessageEditorControllerPopup"}},resolve:{stateMessage:stateNewMessage}}).state("mail.account.mailbox.message",{url:"/:messageId",views:{"message@":{templateUrl:"UIxMailViewTemplate",controller:"MessageController",controllerAs:"viewer"}},resolve:{stateMessage:stateMessage}}).state("mail.account.mailbox.message.edit",{url:"/edit",views:{"message@":{templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor"}},resolve:{stateContent:stateContent}}).state("mail.account.mailbox.message.action",{url:"/{actionName:(?:reply|replyall|forward)}",views:{message:{templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor"}}}),$urlRouterProvider.otherwise("/Mail/0/folderINBOX/new")}function stateAccounts($q,Account){var promise=Account.$findAll();return promise.then(function(accounts){var promises=[];return angular.forEach(accounts,function(account,i){var mailboxes=account.$getMailboxes();promises.push(mailboxes.then(function(objects){return account}))}),$q.all(promises)})}function stateAccount($stateParams,stateAccounts){return _.find(stateAccounts,function(account){return account.id==$stateParams.accountId})}function stateMailbox($stateParams,stateAccount,decodeUriFilter){var _find,mailboxId=decodeUriFilter($stateParams.mailboxId);return(_find=function(mailboxes){var mailbox=_.find(mailboxes,function(o){return o.path==mailboxId});return mailbox||angular.forEach(mailboxes,function(o){!mailbox&&o.children&&o.children.length>0&&(mailbox=_find(o.children))}),mailbox})(stateAccount.$mailboxes)}function stateNewMessage(stateAccount){return stateAccount.$newMessage()}function stateMessage(encodeUriFilter,$stateParams,$state,stateMailbox,Message){var data={uid:$stateParams.messageId.toString()},message=new Message(stateMailbox.$account.id,stateMailbox,data);return message.$reload()}function stateContent(stateMessage){return stateMessage.$editableContent()}function runBlock($rootScope){$rootScope.$on("$routeChangeError",function(event,current,previous,rejection){console.error(event,current,previous,rejection)})}function MessageEditorControllerPopup($window,$mdDialog,stateAccounts,stateMessage){$mdDialog.show({hasBackdrop:!1,disableParentScroll:!1,clickOutsideToClose:!1,escapeToClose:!1,templateUrl:"UIxMailEditor",controller:"MessageEditorController",controllerAs:"editor",locals:{stateAccounts:stateAccounts,stateMessage:stateMessage,stateRecipients:[]}})["finally"](function(){$window.opener&&$window.close()})}angular.module("SOGo.MailerUI",["ngSanitize","ui.router","ck","angularFileUpload","SOGo.Common","SOGo.ContactsUI","ngAnimate","SOGo.PreferencesUI"]).config(configure).run(runBlock).controller("MessageEditorControllerPopup",MessageEditorControllerPopup),configure.$inject=["$stateProvider","$urlRouterProvider"],stateAccounts.$inject=["$q","Account"],stateAccount.$inject=["$stateParams","stateAccounts"],stateMailbox.$inject=["$stateParams","stateAccount","decodeUriFilter"],stateNewMessage.$inject=["stateAccount"],stateMessage.$inject=["encodeUriFilter","$stateParams","$state","stateMailbox","Message"],stateContent.$inject=["stateMessage"],runBlock.$inject=["$rootScope"],MessageEditorControllerPopup.$inject=["$window","$mdDialog","stateAccounts","stateMessage"]}();
//# sourceMappingURL=Mailer.app.popup.js.map