From 26ce9e916a557d5f0cf5d52f4eada8409612e5d1 Mon Sep 17 00:00:00 2001 From: "kaie%netscape.com" Date: Mon, 26 Aug 2002 06:13:17 +0000 Subject: [PATCH] b=106988 Switching sender should also change the sign/encrypt setting r=javi sr=mscott git-svn-id: svn://10.0.0.236/trunk@128079 18797224-902f-48f8-a5cc-f745e15eee43 --- .../resources/content/MsgComposeCommands.js | 4 +++ .../resources/content/msgCompSMIMEOverlay.js | 36 +++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/mozilla/mailnews/compose/resources/content/MsgComposeCommands.js b/mozilla/mailnews/compose/resources/content/MsgComposeCommands.js index f2f768bbe6c..5d41ebe29a4 100644 --- a/mozilla/mailnews/compose/resources/content/MsgComposeCommands.js +++ b/mozilla/mailnews/compose/resources/content/MsgComposeCommands.js @@ -2543,6 +2543,10 @@ function LoadIdentity(startup) try { gMsgCompose.SetSignature(gCurrentIdentity); } catch (ex) { dump("### Cannot set the signature: " + ex + "\n");} + + var event = document.createEvent('Events'); + event.initEvent('compose-from-changed', false, true); + document.getElementById("msgcomposeWindow").dispatchEvent(event); } AddDirectoryServerObserver(false); diff --git a/mozilla/mailnews/extensions/smime/resources/content/msgCompSMIMEOverlay.js b/mozilla/mailnews/extensions/smime/resources/content/msgCompSMIMEOverlay.js index b0ae1acba02..443981a0173 100644 --- a/mozilla/mailnews/extensions/smime/resources/content/msgCompSMIMEOverlay.js +++ b/mozilla/mailnews/extensions/smime/resources/content/msgCompSMIMEOverlay.js @@ -383,7 +383,43 @@ function onComposerSendMessage() } } +function onComposerFromChanged() +{ + if (!gSMFields) + return; + + // In order to provide maximum protection to the user: + // - If encryption is already enabled, we will not turn it off automatically. + // - If encryption is not enabled, but the new account defaults to encryption, we will turn it on. + // - If signing is disabled, we will not turn it on automatically. + // - If signing is enabled, but the new account defaults to not sign, we will turn signing off. + + if (!gSMFields.requireEncryptMessage) + { + var encryptionPolicy = gCurrentIdentity.getIntAttribute("encryptionpolicy"); + // 0 == never, 1 == if possible, 2 == always Encrypt. + + if (encryptionPolicy == 2) + { + gSMFields.requireEncryptMessage = true; + setEncryptionUI(); + } + } + + if (gSMFields.signMessage) + { + var signMessage = gCurrentIdentity.getBoolAttribute("sign_mail"); + + if (!signMessage) + { + gSMFields.signMessage = false; + setNoSignatureUI(); + } + } +} + top.controllers.appendController(SecurityController); addEventListener('compose-window-close', onComposerClose, true); addEventListener('compose-window-reopen', onComposerReOpen, true); addEventListener('compose-send-message', onComposerSendMessage, true); +addEventListener('compose-from-changed', onComposerFromChanged, true);