diff --git a/UI/WebServerResources/js/Mailer/MessageEditorController.js b/UI/WebServerResources/js/Mailer/MessageEditorController.js index e97bb597e..9aaea23a9 100644 --- a/UI/WebServerResources/js/Mailer/MessageEditorController.js +++ b/UI/WebServerResources/js/Mailer/MessageEditorController.js @@ -360,16 +360,20 @@ }; this.setFromIdentity = function (identity) { - var node, children, nl, space, signature, previousIdentity; + var node, children, nl, reNl, space, signature, previousIdentity; - if (identity) + if (identity && identity.full) this.message.editable.from = identity.full; + else if (identity && identity.length) + return; if (this.composeType == "html") { nl = '
'; + reNl = '
[ \n]?'; space = ' '; } else { nl = '\n'; + reNl = '\n'; space = ' '; } @@ -380,7 +384,7 @@ previousIdentity = _.find(this.identities, function (currentIdentity, index) { if (currentIdentity.signature) { - var currentSignature = new RegExp(nl + ' ?' + nl + '--' + space + nl + currentIdentity.signature); + var currentSignature = new RegExp(reNl + reNl + '--' + space + reNl + currentIdentity.signature); if (vm.message.editable.text.search(currentSignature) >= 0) { vm.message.editable.text = vm.message.editable.text.replace(currentSignature, signature); return true; @@ -392,7 +396,7 @@ if (!previousIdentity && signature.length > 0) { // Must place signature at proper place if (!this.isNew() && this.signaturePlacement == 'above') { - var quotedMessageIndex = this.message.editable.text.search(new RegExp(nl + '.+?:( ?' + nl + '){2}(> |
|
= 0) { this.message.editable.text = this.message.editable.text.slice(0, quotedMessageIndex) +