diff --git a/UI/WebServerResources/js/Mailer/Message.service.js b/UI/WebServerResources/js/Mailer/Message.service.js index c28a1cb6b..1058e405c 100644 --- a/UI/WebServerResources/js/Mailer/Message.service.js +++ b/UI/WebServerResources/js/Mailer/Message.service.js @@ -737,13 +737,16 @@ data.encrypt = true; } if (data.isHTML) { - // Sanitize HTML replies to properly display quoted content in CKEditor - var html = angular.element('
' + data.text + '
'); - html.find('meta').remove(); - html.find('link').remove(); - html.find('base').remove(); - html.find('title').remove(); - data.text = html.html(); + // Sanitize HTML replies to properly display quoted content in CKEditor. + // Don't use the DOM to avoid triggering any event. + var html = data.text; + html = html.replace(/<\/?html[^>]*>/g, ''); + html = html.replace(/<\/?body[^>]*>/g, ''); + html = html.replace(/]*>.*<\/meta>/g, ''); + html = html.replace(/]*>.*<\/link>/g, ''); + html = html.replace(/]*>.*<\/base>/g, ''); + html = html.replace(/]*>.*<\/title>/g, ''); + data.text = html; } angular.extend(message.editable, data);