This commit is contained in:
the-djmaze 2023-02-02 12:39:21 +01:00
parent af3cecb2e1
commit a52881fb67
43 changed files with 79 additions and 11 deletions

View file

@ -12,8 +12,15 @@ import { OpenPgpKeyPopupView } from 'View/Popup/OpenPgpKey';
import { AskPopupView } from 'View/Popup/Ask'; import { AskPopupView } from 'View/Popup/Ask';
const const
askPassphrase = async (privateKey, btnTxt = 'LABEL_SIGN') => passphrases = new Map(),
await AskPopupView.password('GnuPG key<br>' + privateKey.id + ' ' + privateKey.emails[0], 'OPENPGP/'+btnTxt), askPassphrase = async (privateKey, btnTxt = 'LABEL_SIGN') => {
const key = privateKey.id,
pass = passphrases.has(key)
? {password:passphrases.get(key), remember:false}
: await AskPopupView.password('GnuPG key<br>' + key + ' ' + privateKey.emails[0], 'OPENPGP/'+btnTxt);
pass && pass.remember && passphrases.set(key, pass.password);
return pass.password;
},
findGnuPGKey = (keys, query/*, sign*/) => findGnuPGKey = (keys, query/*, sign*/) =>
keys.find(key => keys.find(key =>

View file

@ -18,15 +18,21 @@ const
key.emails.includes(query) || query == key.id || query == key.fingerprint key.emails.includes(query) || query == key.id || query == key.fingerprint
), ),
passphrases = new Map(),
decryptKey = async (privateKey, btnTxt = 'LABEL_SIGN') => { decryptKey = async (privateKey, btnTxt = 'LABEL_SIGN') => {
if (privateKey.key.isDecrypted()) { if (privateKey.key.isDecrypted()) {
return privateKey.key; return privateKey.key;
} }
const passphrase = await AskPopupView.password( const key = privateKey.id,
'OpenPGP.js key<br>' + privateKey.id + ' ' + privateKey.emails[0], pass = passphrases.has(key)
'OPENPGP/'+btnTxt ? {password:passphrases.get(key), remember:false}
); : await AskPopupView.password(
if (null !== passphrase) { 'OpenPGP.js key<br>' + privateKey.id + ' ' + privateKey.emails[0],
'OPENPGP/'+btnTxt
);
if (pass) {
pass.remember && passphrases.set(key, pass.password);
let passphrase = pass.password;
return await openpgp.decryptKey({ return await openpgp.decryptKey({
privateKey: privateKey.key, privateKey: privateKey.key,
passphrase passphrase

View file

@ -14,7 +14,9 @@ export class AskPopupView extends AbstractViewPopup {
username: '', username: '',
askUsername: false, askUsername: false,
passphrase: '', passphrase: '',
askPass: false askPass: false,
remember: true,
askRemeber: false
}); });
this.fYesAction = null; this.fYesAction = null;
@ -46,8 +48,10 @@ export class AskPopupView extends AbstractViewPopup {
this.askDesc(sAskDesc || ''); this.askDesc(sAskDesc || '');
this.askUsername(ask & 2); this.askUsername(ask & 2);
this.askPass(ask & 1); this.askPass(ask & 1);
this.askRemeber(ask & 4);
this.username(''); this.username('');
this.passphrase(''); this.passphrase('');
this.remember(true);
this.yesButton(i18n(btnText || 'GLOBAL/YES')); this.yesButton(i18n(btnText || 'GLOBAL/YES'));
this.noButton(i18n(ask ? 'GLOBAL/CANCEL' : 'GLOBAL/NO')); this.noButton(i18n(ask ? 'GLOBAL/CANCEL' : 'GLOBAL/NO'));
this.fYesAction = fYesFunc; this.fYesAction = fYesFunc;
@ -86,10 +90,10 @@ AskPopupView.password = function(sAskDesc, btnText) {
return new Promise(resolve => { return new Promise(resolve => {
this.showModal([ this.showModal([
sAskDesc, sAskDesc,
view => resolve(view.passphrase()), view => resolve({password:view.passphrase(), remember:view.remember()}),
() => resolve(null), () => resolve(null),
true, true,
1, 5,
btnText btnText
]); ]);
}); });
@ -99,7 +103,7 @@ AskPopupView.credentials = function(sAskDesc, btnText) {
return new Promise(resolve => { return new Promise(resolve => {
this.showModal([ this.showModal([
sAskDesc, sAskDesc,
view => resolve({username:view.username(), password:view.passphrase()}), view => resolve({username:view.username(), password:view.passphrase(), remember:view.remember()}),
() => resolve(null), () => resolve(null),
true, true,
3, 3,

View file

@ -201,10 +201,16 @@ class SmtpClient extends \MailSo\Net\NetClient
$sCmd .= ' SIZE='.$iSizeIfSupported; $sCmd .= ' SIZE='.$iSizeIfSupported;
} }
// RFC 3461
if ($bDsn && $this->hasCapability('DSN')) { if ($bDsn && $this->hasCapability('DSN')) {
$sCmd .= ' RET=HDRS'; $sCmd .= ' RET=HDRS';
} }
// RFC 6152
if ($this->hasCapability('8BITMIME')) {
// $sCmd .= ' BODY=8BITMIME';
}
// RFC 8689 // RFC 8689
if ($bRequireTLS && $this->hasCapability('REQUIRETLS')) { if ($bRequireTLS && $this->hasCapability('REQUIRETLS')) {
$sCmd .= ' REQUIRETLS'; $sCmd .= ' REQUIRETLS';

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "ليست رسائل غير مرغوب فيها", "NOT_SPAM": "ليست رسائل غير مرغوب فيها",
"USERNAME": "اسم المستخدم", "USERNAME": "اسم المستخدم",
"PASSWORD": "كلمة السر", "PASSWORD": "كلمة السر",
"REMEMBER": "Remember",
"REPLY_TO": "الرد-الى", "REPLY_TO": "الرد-الى",
"SAVE": "حفظ", "SAVE": "حفظ",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Не е спам", "NOT_SPAM": "Не е спам",
"USERNAME": "Потребителско име", "USERNAME": "Потребителско име",
"PASSWORD": "Парола", "PASSWORD": "Парола",
"REMEMBER": "Remember",
"REPLY_TO": "Отговори на", "REPLY_TO": "Отговори на",
"SAVE": "Запази", "SAVE": "Запази",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Není to spam", "NOT_SPAM": "Není to spam",
"USERNAME": "Uživatelské jméno", "USERNAME": "Uživatelské jméno",
"PASSWORD": "Heslo", "PASSWORD": "Heslo",
"REMEMBER": "Remember",
"REPLY_TO": "Adresa odpovědi", "REPLY_TO": "Adresa odpovědi",
"SAVE": "Uložit", "SAVE": "Uložit",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ikke uønsket", "NOT_SPAM": "Ikke uønsket",
"USERNAME": "Brugernavn", "USERNAME": "Brugernavn",
"PASSWORD": "Adgangskode", "PASSWORD": "Adgangskode",
"REMEMBER": "Remember",
"REPLY_TO": "Svar til", "REPLY_TO": "Svar til",
"SAVE": "Gem", "SAVE": "Gem",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Kein Spam", "NOT_SPAM": "Kein Spam",
"USERNAME": "Nutzername", "USERNAME": "Nutzername",
"PASSWORD": "Passwort", "PASSWORD": "Passwort",
"REMEMBER": "Remember",
"REPLY_TO": "Antwort an", "REPLY_TO": "Antwort an",
"SAVE": "Speichern", "SAVE": "Speichern",
"SAVE_CHANGES": "Änderungen speichern?", "SAVE_CHANGES": "Änderungen speichern?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Όχι ανεπιθύμητο", "NOT_SPAM": "Όχι ανεπιθύμητο",
"USERNAME": "Όνομα χρήστη", "USERNAME": "Όνομα χρήστη",
"PASSWORD": "Κωδικός πρόσβασης", "PASSWORD": "Κωδικός πρόσβασης",
"REMEMBER": "Remember",
"REPLY_TO": "Απάντηση στον", "REPLY_TO": "Απάντηση στον",
"SAVE": "Αποθήκευση", "SAVE": "Αποθήκευση",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Not Spam", "NOT_SPAM": "Not Spam",
"USERNAME": "Username", "USERNAME": "Username",
"PASSWORD": "Password", "PASSWORD": "Password",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "Save", "SAVE": "Save",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Not Spam", "NOT_SPAM": "Not Spam",
"USERNAME": "Username", "USERNAME": "Username",
"PASSWORD": "Password", "PASSWORD": "Password",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "Save", "SAVE": "Save",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Correo no deseado", "NOT_SPAM": "Correo no deseado",
"USERNAME": "Nombre de usuario", "USERNAME": "Nombre de usuario",
"PASSWORD": "Contraseña", "PASSWORD": "Contraseña",
"REMEMBER": "Remember",
"REPLY_TO": "Responder", "REPLY_TO": "Responder",
"SAVE": "Guardar", "SAVE": "Guardar",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ei ole rämpspost", "NOT_SPAM": "Ei ole rämpspost",
"USERNAME": "Kasutajanimi", "USERNAME": "Kasutajanimi",
"PASSWORD": "Salasõna", "PASSWORD": "Salasõna",
"REMEMBER": "Remember",
"REPLY_TO": "Vastuse saaja", "REPLY_TO": "Vastuse saaja",
"SAVE": "Salvesta", "SAVE": "Salvesta",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ez da spama", "NOT_SPAM": "Ez da spama",
"USERNAME": "Erabiltzaile-izena", "USERNAME": "Erabiltzaile-izena",
"PASSWORD": "Pasahitza", "PASSWORD": "Pasahitza",
"REMEMBER": "Remember",
"REPLY_TO": "Erantzun", "REPLY_TO": "Erantzun",
"SAVE": "Gorde", "SAVE": "Gorde",
"SAVE_CHANGES": "Aldaketak gorde?", "SAVE_CHANGES": "Aldaketak gorde?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "هرزنامه نیست", "NOT_SPAM": "هرزنامه نیست",
"USERNAME": "نام کاربری", "USERNAME": "نام کاربری",
"PASSWORD": "گذرواژه", "PASSWORD": "گذرواژه",
"REMEMBER": "Remember",
"REPLY_TO": "پاسخ به", "REPLY_TO": "پاسخ به",
"SAVE": "ذخیره کن", "SAVE": "ذخیره کن",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ei roskapostia", "NOT_SPAM": "Ei roskapostia",
"USERNAME": "Käyttäjätunnus", "USERNAME": "Käyttäjätunnus",
"PASSWORD": "Salasana", "PASSWORD": "Salasana",
"REMEMBER": "Remember",
"REPLY_TO": "Vastaa", "REPLY_TO": "Vastaa",
"SAVE": "Tallenna", "SAVE": "Tallenna",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Acceptable", "NOT_SPAM": "Acceptable",
"USERNAME": "Nom d'utilisateur", "USERNAME": "Nom d'utilisateur",
"PASSWORD": "Mot de passe", "PASSWORD": "Mot de passe",
"REMEMBER": "Remember",
"REPLY_TO": "Répondre à", "REPLY_TO": "Répondre à",
"SAVE": "Enregistrer", "SAVE": "Enregistrer",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Nem szemét", "NOT_SPAM": "Nem szemét",
"USERNAME": "Felhasználónév", "USERNAME": "Felhasználónév",
"PASSWORD": "Jelszó", "PASSWORD": "Jelszó",
"REMEMBER": "Remember",
"REPLY_TO": "Válaszcím", "REPLY_TO": "Válaszcím",
"SAVE": "Mentés", "SAVE": "Mentés",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Bukan Spam", "NOT_SPAM": "Bukan Spam",
"USERNAME": "Nama belakang", "USERNAME": "Nama belakang",
"PASSWORD": "Sandi", "PASSWORD": "Sandi",
"REMEMBER": "Remember",
"REPLY_TO": "Balas-Ke", "REPLY_TO": "Balas-Ke",
"SAVE": "Simpan", "SAVE": "Simpan",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ekki ruslpóstur", "NOT_SPAM": "Ekki ruslpóstur",
"USERNAME": "Notendanafn", "USERNAME": "Notendanafn",
"PASSWORD": "Lykilorð", "PASSWORD": "Lykilorð",
"REMEMBER": "Remember",
"REPLY_TO": "Svara-til", "REPLY_TO": "Svara-til",
"SAVE": "Vista", "SAVE": "Vista",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Segnala come non spam", "NOT_SPAM": "Segnala come non spam",
"USERNAME": "Nome utente", "USERNAME": "Nome utente",
"PASSWORD": "Parola d'ordine", "PASSWORD": "Parola d'ordine",
"REMEMBER": "Remember",
"REPLY_TO": "Rispondi a", "REPLY_TO": "Rispondi a",
"SAVE": "Salva", "SAVE": "Salva",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "迷惑メールを解除", "NOT_SPAM": "迷惑メールを解除",
"USERNAME": "ユーザー名", "USERNAME": "ユーザー名",
"PASSWORD": "パスワード", "PASSWORD": "パスワード",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "保存", "SAVE": "保存",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "스팸 아님", "NOT_SPAM": "스팸 아님",
"USERNAME": "사용자 이름", "USERNAME": "사용자 이름",
"PASSWORD": "비밀번호", "PASSWORD": "비밀번호",
"REMEMBER": "Remember",
"REPLY_TO": "회신 주소", "REPLY_TO": "회신 주소",
"SAVE": "저장", "SAVE": "저장",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ne šlamštas", "NOT_SPAM": "Ne šlamštas",
"USERNAME": "Vartotojo vardas", "USERNAME": "Vartotojo vardas",
"PASSWORD": "Slaptažodis", "PASSWORD": "Slaptažodis",
"REMEMBER": "Remember",
"REPLY_TO": "Kam atsakyti", "REPLY_TO": "Kam atsakyti",
"SAVE": "Išsaugoti", "SAVE": "Išsaugoti",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Not Spam", "NOT_SPAM": "Not Spam",
"USERNAME": "Lietotājvārds", "USERNAME": "Lietotājvārds",
"PASSWORD": "Parole", "PASSWORD": "Parole",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "Saglabāt", "SAVE": "Saglabāt",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ikke søppelpost", "NOT_SPAM": "Ikke søppelpost",
"USERNAME": "Brukernavn", "USERNAME": "Brukernavn",
"PASSWORD": "Passord", "PASSWORD": "Passord",
"REMEMBER": "Remember",
"REPLY_TO": "Svar til", "REPLY_TO": "Svar til",
"SAVE": "Lagre", "SAVE": "Lagre",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Geen ongewenste e-mail", "NOT_SPAM": "Geen ongewenste e-mail",
"USERNAME": "Gebruikersnaam", "USERNAME": "Gebruikersnaam",
"PASSWORD": "Wachtwoord", "PASSWORD": "Wachtwoord",
"REMEMBER": "Onthouden",
"REPLY_TO": "Antwoordadres", "REPLY_TO": "Antwoordadres",
"SAVE": "Opslaan", "SAVE": "Opslaan",
"SAVE_CHANGES": "Wijzigingen opslaan?", "SAVE_CHANGES": "Wijzigingen opslaan?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Oznacz jako pożądane", "NOT_SPAM": "Oznacz jako pożądane",
"USERNAME": "Nazwa użytkownika", "USERNAME": "Nazwa użytkownika",
"PASSWORD": "Hasło", "PASSWORD": "Hasło",
"REMEMBER": "Remember",
"REPLY_TO": "Odpisz do", "REPLY_TO": "Odpisz do",
"SAVE": "Zapisz", "SAVE": "Zapisz",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Não é Lixo Eletrônico", "NOT_SPAM": "Não é Lixo Eletrônico",
"USERNAME": "Nome de usuário", "USERNAME": "Nome de usuário",
"PASSWORD": "Senha", "PASSWORD": "Senha",
"REMEMBER": "Remember",
"REPLY_TO": "Responder para", "REPLY_TO": "Responder para",
"SAVE": "Salvar", "SAVE": "Salvar",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Não é spam", "NOT_SPAM": "Não é spam",
"USERNAME": "Nome de usuário", "USERNAME": "Nome de usuário",
"PASSWORD": "Palavra-passe", "PASSWORD": "Palavra-passe",
"REMEMBER": "Remember",
"REPLY_TO": "Resp.-Para", "REPLY_TO": "Resp.-Para",
"SAVE": "Guardar", "SAVE": "Guardar",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Não é spam", "NOT_SPAM": "Não é spam",
"USERNAME": "Nome de usuário", "USERNAME": "Nome de usuário",
"PASSWORD": "Palavra-passe", "PASSWORD": "Palavra-passe",
"REMEMBER": "Remember",
"REPLY_TO": "Resp.-Para", "REPLY_TO": "Resp.-Para",
"SAVE": "Guardar", "SAVE": "Guardar",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Not SPAM", "NOT_SPAM": "Not SPAM",
"USERNAME": "Nume de utilizator", "USERNAME": "Nume de utilizator",
"PASSWORD": "Parolă", "PASSWORD": "Parolă",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "Salvează", "SAVE": "Salvează",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Не спам", "NOT_SPAM": "Не спам",
"USERNAME": "Имя пользователя", "USERNAME": "Имя пользователя",
"PASSWORD": "Пароль", "PASSWORD": "Пароль",
"REMEMBER": "Remember",
"REPLY_TO": "Ответить-на", "REPLY_TO": "Ответить-на",
"SAVE": "Сохранить", "SAVE": "Сохранить",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Nie je spam", "NOT_SPAM": "Nie je spam",
"USERNAME": "Používateľské men", "USERNAME": "Používateľské men",
"PASSWORD": "Heslo", "PASSWORD": "Heslo",
"REMEMBER": "Remember",
"REPLY_TO": "Adresa pre odpoveď", "REPLY_TO": "Adresa pre odpoveď",
"SAVE": "Uložiť", "SAVE": "Uložiť",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Ni vsiljena pošta", "NOT_SPAM": "Ni vsiljena pošta",
"USERNAME": "Uporabniško ime", "USERNAME": "Uporabniško ime",
"PASSWORD": "Geslo", "PASSWORD": "Geslo",
"REMEMBER": "Remember",
"REPLY_TO": "Odgovor na", "REPLY_TO": "Odgovor na",
"SAVE": "Shrani", "SAVE": "Shrani",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Inte spam", "NOT_SPAM": "Inte spam",
"USERNAME": "Användarnamn", "USERNAME": "Användarnamn",
"PASSWORD": "Lösenord", "PASSWORD": "Lösenord",
"REMEMBER": "Remember",
"REPLY_TO": "Svara till", "REPLY_TO": "Svara till",
"SAVE": "Spara", "SAVE": "Spara",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Spam Değil", "NOT_SPAM": "Spam Değil",
"USERNAME": "Kullanıcı adı", "USERNAME": "Kullanıcı adı",
"PASSWORD": "Şifre", "PASSWORD": "Şifre",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "Kaydet", "SAVE": "Kaydet",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Не спам", "NOT_SPAM": "Не спам",
"USERNAME": "Ім'я користувача", "USERNAME": "Ім'я користувача",
"PASSWORD": "Пароль", "PASSWORD": "Пароль",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "Зберегти", "SAVE": "Зберегти",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Không phải thư rác", "NOT_SPAM": "Không phải thư rác",
"USERNAME": "Tên tài khoản", "USERNAME": "Tên tài khoản",
"PASSWORD": "Mật khẩu", "PASSWORD": "Mật khẩu",
"REMEMBER": "Remember",
"REPLY_TO": "Nhận thư phản hồi về", "REPLY_TO": "Nhận thư phản hồi về",
"SAVE": "Lưu", "SAVE": "Lưu",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "非垃圾邮件", "NOT_SPAM": "非垃圾邮件",
"USERNAME": "用户名", "USERNAME": "用户名",
"PASSWORD": "密码", "PASSWORD": "密码",
"REMEMBER": "Remember",
"REPLY_TO": "回复", "REPLY_TO": "回复",
"SAVE": "保存", "SAVE": "保存",
"SAVE_CHANGES": "是否保存修改?", "SAVE_CHANGES": "是否保存修改?",

View file

@ -22,6 +22,7 @@
"NOT_SPAM": "Not Spam", "NOT_SPAM": "Not Spam",
"USERNAME": "用户名", "USERNAME": "用户名",
"PASSWORD": "密碼", "PASSWORD": "密碼",
"REMEMBER": "Remember",
"REPLY_TO": "Reply-To", "REPLY_TO": "Reply-To",
"SAVE": "保存", "SAVE": "保存",
"SAVE_CHANGES": "Save changes?", "SAVE_CHANGES": "Save changes?",

View file

@ -9,6 +9,13 @@
<label data-i18n="GLOBAL/PASSWORD"></label> <label data-i18n="GLOBAL/PASSWORD"></label>
<input type="password" data-bind="value: passphrase"> <input type="password" data-bind="value: passphrase">
</div> </div>
<div data-bind="visible: askRemeber, component: {
name: 'Checkbox',
params: {
label: 'GLOBAL/REMEMBER',
value: remember
}
}"></div>
</form> </form>
</div> </div>
<footer> <footer>