diff --git a/NEWS b/NEWS index 766807505..47047f3e3 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 5b5d07a30..399c16239 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 139b6fde9..889df3ef7 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; } });