Enigma: Don't display "bad password" warning when the password wasn't provided yet

pull/322/head
Aleksander Machniak 9 years ago
parent 8c626eec8a
commit 5a30653024

@ -198,7 +198,7 @@ class enigma_engine
if ($result !== true) {
if ($result->getCode() == enigma_error::BADPASS) {
// ask for password
$error = array('missing' => array($key->id => $key->name));
$error = array('bad' => array($key->id => $key->name));
return new enigma_error(enigma_error::BADPASS, '', $error);
}

@ -780,7 +780,9 @@ class enigma_ui
$this->enigma->gettext('decryptnokey')));
}
else if ($code == enigma_error::BADPASS) {
$msg = rcube::Q($this->enigma->gettext('decryptbadpass'));
$missing = $status->getData('missing');
$label = 'decrypt' . (!empty($missing) ? 'no' : 'bad') . 'pass';
$msg = rcube::Q($this->enigma->gettext($label));
$this->password_prompt($status);
}
else {
@ -946,16 +948,16 @@ class enigma_ui
$msg = 'enigma.' . $mode . 'nokey';
}
else if ($code == enigma_error::BADPASS) {
$msg = 'enigma.' . $mode . 'badpass';
$type = 'warning';
$this->password_prompt($status);
}
else {
$msg = 'enigma.' . $mode . 'error';
}
$this->rc->output->show_message($msg, $type ?: 'error', $vars);
if ($msg) {
$this->rc->output->show_message($msg, $type ?: 'error', $vars);
}
$this->rc->output->send('iframe');
}

@ -93,9 +93,11 @@ $messages['decryptok'] = 'Message decrypted.';
$messages['decrypterror'] = 'Decryption failed.';
$messages['decryptnokey'] = 'Decryption failed. Private key not found. Key ID: $keyid.';
$messages['decryptbadpass'] = 'Decryption failed. Bad password.';
$messages['decryptnopass'] = 'Decryption failed. Key password required.';
$messages['signerror'] = 'Signing failed.';
$messages['signnokey'] = 'Signing failed. Private key not found.';
$messages['signbadpass'] = 'Signing failed. Bad password.';
$messages['signnopass'] = 'Signing failed. Key password required.';
$messages['encrypterror'] = 'Encryption failed.';
$messages['encryptnokey'] = 'Encryption failed. Public key not found for $email.';
$messages['nokeysfound'] = 'No keys found';

Loading…
Cancel
Save