From: Michael M Slusarz Date: Thu, 25 Feb 2010 06:22:05 +0000 (-0700) Subject: Clean up passphrase dialog output code X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=11f80ea3757b5f05c6b193e05135b4f037cd0ec2;p=horde.git Clean up passphrase dialog output code --- diff --git a/imp/compose.php b/imp/compose.php index 908bf1188..18a8fcc1e 100644 --- a/imp/compose.php +++ b/imp/compose.php @@ -22,7 +22,7 @@ $header = array(); $msg = ''; $get_sig = true; -$pgp_passphrase_dialog = $pgp_symmetric_passphrase_dialog = $showmenu = $smime_passphrase_dialog = false; +$showmenu = false; $cursor_pos = $oldrtemode = $rtemode = $siglocation = null; /* Set the current identity. */ @@ -430,15 +430,15 @@ case 'send_message': // TODO switch ($e->encrypt) { case 'pgp_symmetric_passphrase_dialog': - $pgp_symmetric_passphrase_dialog = true; + $imp_ui->passphraseDialog('pgp_symm', $imp_compose->getCacheId()); break; case 'pgp_passphrase_dialog': - $pgp_passphrase_dialog = true; + $imp_ui->passphraseDialog('pgp'); break; case 'smime_passphrase_dialog': - $smime_passphrase_dialog = true; + $imp_ui->passphraseDialog('smime'); break; } break; @@ -661,23 +661,6 @@ if ($get_sig && isset($msg) && !empty($sig)) { } } -/* Open the passphrase window here. */ -if ($pgp_passphrase_dialog || $pgp_symmetric_passphrase_dialog) { - if ($pgp_passphrase_dialog) { - Horde::addInlineScript(array( - IMP::passphraseDialogJS('PGPPersonal') - ), 'dom'); - } else { - Horde::addInlineScript(array( - IMP::passphraseDialogJS('PGPSymmetric', array('symmetricid' => 'imp_compose_' . $composeCacheID)) - ), 'dom'); - } -} elseif ($smime_passphrase_dialog) { - Horde::addInlineScript(array( - IMP::passphraseDialogJS('SMIMEPersonal') - ), 'dom'); -} - /* If PGP encryption is set by default, and we have a recipient list on first * load, make sure we have public keys for all recipients. */ $encrypt_options = $prefs->isLocked('default_encrypt') diff --git a/imp/lib/Ui/Compose.php b/imp/lib/Ui/Compose.php index 664f00453..974268682 100644 --- a/imp/lib/Ui/Compose.php +++ b/imp/lib/Ui/Compose.php @@ -295,4 +295,29 @@ class IMP_Ui_Compose require $GLOBALS['registry']->get('templates', 'horde') . '/common-footer.inc'; } + /** + * Outputs the script necessary to generate the passphrase dialog box. + * + * @param string $type Either 'pgp', 'pgp_symm', or 'smime'. + * @param string $cacheid Compose cache ID (only needed for 'pgp_symm'). + */ + public function passphraseDialog($type, $cacheid = null) + { + switch ($type) { + case 'pgp': + $js = IMP::passphraseDialogJS('PGPPersonal'); + break; + + case 'pgp_symm': + $js = IMP::passphraseDialogJS('PGPSymmetric', array('symmetricid' => 'imp_compose_' . $cacheid)); + break; + + case 'smime': + $js = IMP::passphraseDialogJS('SMIMEPersonal'); + break; + } + + Horde::addInlineScript(array($js), 'dom'); + } + }