From dec3f9439205b3c6653a6c81db5f0be9d1c51bea Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 15 Mar 2016 09:58:58 -0400 Subject: [PATCH] (js) Fix message initialization in popup window Fixes #3583 --- NEWS | 1 + UI/WebServerResources/js/Mailer/Mailer.popup.js | 2 +- UI/WebServerResources/js/Mailer/Message.service.js | 7 ++++--- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS index 7668075050..47047f3e32 100644 --- a/NEWS +++ b/NEWS @@ -15,6 +15,7 @@ Bug fixes - [web] respect super user privileges to create in any calendar and addressbook (#3533) - [web] properly null-terminate IS8601-formatted dates (#3539) - [web] display CC/BCC fields in message editor when initialized with values + - [web] fixed message initialization in popup window (#3583) 3.0.2 (2016-03-04) ------------------ diff --git a/UI/WebServerResources/js/Mailer/Mailer.popup.js b/UI/WebServerResources/js/Mailer/Mailer.popup.js index 5b5d07a304..399c16239e 100644 --- a/UI/WebServerResources/js/Mailer/Mailer.popup.js +++ b/UI/WebServerResources/js/Mailer/Mailer.popup.js @@ -179,7 +179,7 @@ // Message is available from the parent window message = new Message(stateMailbox.$account.id, stateMailbox, - window.opener.$messageController.message.$omit()); + window.opener.$messageController.message.$omit({privateAttributes: true})); return $q.when(message); } else { diff --git a/UI/WebServerResources/js/Mailer/Message.service.js b/UI/WebServerResources/js/Mailer/Message.service.js index 139b6fde97..889df3ef74 100644 --- a/UI/WebServerResources/js/Mailer/Message.service.js +++ b/UI/WebServerResources/js/Mailer/Message.service.js @@ -648,10 +648,11 @@ * @desc Return a sanitized object used to send to the server. * @return an object literal copy of the Message instance */ - Message.prototype.$omit = function() { - var message = {}; + Message.prototype.$omit = function(options) { + var message = {}, + privateAttributes = options && options.privateAttributes; angular.forEach(this, function(value, key) { - if (key != 'constructor' && key[0] != '$') { + if (key != 'constructor' && key[0] != '$' || privateAttributes) { message[key] = value; } });