From de0540c7844f961a2379d3f2e8671fde212bb39d Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 4 May 2016 11:12:30 -0400 Subject: [PATCH] (fix) completed the required modifications for XSRF in the mail module --- UI/Templates/MailerUI/UIxMailMainFrame.wox | 2 +- UI/Templates/MailerUI/UIxMailViewTemplate.wox | 2 +- UI/WebServerResources/js/Mailer/Mailbox.service.js | 10 ++++++++++ .../js/Mailer/MailboxesController.js | 5 ----- UI/WebServerResources/js/Mailer/Message.service.js | 14 ++++++++++++++ .../js/Mailer/MessageController.js | 5 ----- 6 files changed, 26 insertions(+), 12 deletions(-) diff --git a/UI/Templates/MailerUI/UIxMailMainFrame.wox b/UI/Templates/MailerUI/UIxMailMainFrame.wox index fdc4ea627..f46f3a155 100644 --- a/UI/Templates/MailerUI/UIxMailMainFrame.wox +++ b/UI/Templates/MailerUI/UIxMailMainFrame.wox @@ -134,7 +134,7 @@ - + diff --git a/UI/Templates/MailerUI/UIxMailViewTemplate.wox b/UI/Templates/MailerUI/UIxMailViewTemplate.wox index 36dd2d60a..dd644177b 100644 --- a/UI/Templates/MailerUI/UIxMailViewTemplate.wox +++ b/UI/Templates/MailerUI/UIxMailViewTemplate.wox @@ -77,7 +77,7 @@ + ng-click="viewer.message.saveMessage()"> diff --git a/UI/WebServerResources/js/Mailer/Mailbox.service.js b/UI/WebServerResources/js/Mailer/Mailbox.service.js index 8f0235e9a..0313c95fd 100644 --- a/UI/WebServerResources/js/Mailer/Mailbox.service.js +++ b/UI/WebServerResources/js/Mailer/Mailbox.service.js @@ -545,6 +545,16 @@ return Mailbox.$$resource.download(this.id, 'saveMessages', {uids: selectedUIDs}); }; + /** + * @function export + * @memberof Mailbox.prototype + * @desc Export this mailbox + * @returns a promise of the HTTP operation + */ + Mailbox.prototype.export = function() { + return Mailbox.$$resource.download(this.id, 'exportFolder'); + }; + /** * @function $delete * @memberof Mailbox.prototype diff --git a/UI/WebServerResources/js/Mailer/MailboxesController.js b/UI/WebServerResources/js/Mailer/MailboxesController.js index 8d4174fb9..ef14092ba 100644 --- a/UI/WebServerResources/js/Mailer/MailboxesController.js +++ b/UI/WebServerResources/js/Mailer/MailboxesController.js @@ -22,7 +22,6 @@ vm.saveFolder = saveFolder; vm.compactFolder = compactFolder; vm.emptyTrashFolder = emptyTrashFolder; - vm.exportMails = exportMails; vm.confirmDelete = confirmDelete; vm.markFolderRead = markFolderRead; vm.share = share; @@ -252,10 +251,6 @@ }); } - function exportMails(folder) { - window.location.href = ApplicationBaseURL + '/' + folder.id + '/exportFolder'; - } - function confirmDelete(folder) { Dialog.confirm(l('Confirmation'), l('Do you really want to move this folder into the trash ?')) .then(function() { diff --git a/UI/WebServerResources/js/Mailer/Message.service.js b/UI/WebServerResources/js/Mailer/Message.service.js index 0a7cb2f9c..4fb61b3d0 100644 --- a/UI/WebServerResources/js/Mailer/Message.service.js +++ b/UI/WebServerResources/js/Mailer/Message.service.js @@ -662,4 +662,18 @@ return message; }; + /** + * @function saveMessage + * @memberof Message.prototype + * @desc Download the current message + * @returns a promise of the HTTP operation + */ + Message.prototype.saveMessage = function() { + var selectedUIDs; + + selectedUIDs = [ this.uid ]; + + return this.$mailbox.constructor.$$resource.download(this.$mailbox.id, 'saveMessages', {uids: selectedUIDs}); + }; + })(); diff --git a/UI/WebServerResources/js/Mailer/MessageController.js b/UI/WebServerResources/js/Mailer/MessageController.js index 6936d11ec..6c64d1597 100644 --- a/UI/WebServerResources/js/Mailer/MessageController.js +++ b/UI/WebServerResources/js/Mailer/MessageController.js @@ -32,7 +32,6 @@ vm.openPopup = openPopup; vm.closePopup = closePopup; vm.newMessage = newMessage; - vm.saveMessage = saveMessage; vm.toggleRawSource = toggleRawSource; vm.showRawSource = false; vm.print = print; @@ -267,10 +266,6 @@ $event.preventDefault(); } - function saveMessage() { - window.location.href = ApplicationBaseURL + '/' + vm.mailbox.id + '/saveMessages?uid=' + vm.message.uid; - } - function toggleRawSource($event) { if (!vm.showRawSource && !vm.rawSource) { Message.$$resource.post(vm.message.id, "viewsource").then(function(data) {