mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Cleanup and better rename settings screens to match template names
This commit is contained in:
parent
30116c183f
commit
4dd58f7c36
83 changed files with 267 additions and 323 deletions
|
|
@ -26,8 +26,6 @@ export class AbstractScreen {
|
|||
* @returns {void}
|
||||
*/
|
||||
onStart() {
|
||||
if (!this.__started) {
|
||||
this.__started = true;
|
||||
const routes = this.routes();
|
||||
if (arrayLength(routes)) {
|
||||
let route = new Crossroads(),
|
||||
|
|
@ -38,5 +36,4 @@ export class AbstractScreen {
|
|||
this.__cross = route;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ class AbstractView {
|
|||
constructor(templateID, type)
|
||||
{
|
||||
// Object.defineProperty(this, 'viewModelTemplateID', { value: templateID });
|
||||
// this.viewModelTemplateID = this.constructor.name;
|
||||
this.viewModelTemplateID = templateID;
|
||||
this.viewType = type;
|
||||
this.viewModelDom = null;
|
||||
|
|
|
|||
|
|
@ -278,7 +278,12 @@ export const
|
|||
}
|
||||
});
|
||||
|
||||
forEachObjectValue(SCREENS, vmScreen => vmScreen.onStart());
|
||||
forEachObjectValue(SCREENS, vmScreen => {
|
||||
if (!vmScreen.__started) {
|
||||
vmScreen.onStart();
|
||||
vmScreen.__started = true;
|
||||
}
|
||||
});
|
||||
|
||||
const cross = new Crossroads();
|
||||
cross.addRoute(/^([a-zA-Z0-9-]*)\/?(.*)$/, screenOnRoute);
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ export class AbstractSettingsScreen extends AbstractScreen {
|
|||
);
|
||||
|
||||
if (RoutedSettingsViewModel) {
|
||||
if (RoutedSettingsViewModel.__builded && RoutedSettingsViewModel.__vm) {
|
||||
if (RoutedSettingsViewModel.__vm) {
|
||||
settingsScreen = RoutedSettingsViewModel.__vm;
|
||||
} else {
|
||||
const vmPlace = elementById('rl-settings-subscreen');
|
||||
|
|
@ -43,7 +43,6 @@ export class AbstractSettingsScreen extends AbstractScreen {
|
|||
settingsScreen.viewModelDom = viewModelDom;
|
||||
|
||||
RoutedSettingsViewModel.__dom = viewModelDom;
|
||||
RoutedSettingsViewModel.__builded = true;
|
||||
RoutedSettingsViewModel.__vm = settingsScreen;
|
||||
|
||||
ko.applyBindingAccessorsToNode(
|
||||
|
|
@ -132,11 +131,12 @@ export class AbstractSettingsScreen extends AbstractScreen {
|
|||
* @returns {void}
|
||||
*/
|
||||
export function settingsAddViewModel(SettingsViewModelClass, template, labelName, route, isDefault = false) {
|
||||
let name = SettingsViewModelClass.name.replace(/(User|Admin)Settings/, '');
|
||||
SettingsViewModelClass.__rlSettingsData = {
|
||||
label: labelName,
|
||||
route: route,
|
||||
label: labelName || 'SETTINGS_LABELS/LABEL_' + name.toUpperCase() + '_NAME',
|
||||
route: route || name.toLowerCase(),
|
||||
selected: ko.observable(false),
|
||||
template: template,
|
||||
template: template || SettingsViewModelClass.name,
|
||||
isDefault: !!isDefault
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -2,15 +2,15 @@ import { runSettingsViewModelHooks } from 'Common/Plugins';
|
|||
|
||||
import { AbstractSettingsScreen, settingsAddViewModel } from 'Screen/AbstractSettings';
|
||||
|
||||
import { GeneralAdminSettings } from 'Settings/Admin/General';
|
||||
import { DomainsAdminSettings } from 'Settings/Admin/Domains';
|
||||
import { LoginAdminSettings } from 'Settings/Admin/Login';
|
||||
import { ContactsAdminSettings } from 'Settings/Admin/Contacts';
|
||||
import { SecurityAdminSettings } from 'Settings/Admin/Security';
|
||||
import { PackagesAdminSettings } from 'Settings/Admin/Packages';
|
||||
import { AboutAdminSettings } from 'Settings/Admin/About';
|
||||
import { BrandingAdminSettings } from 'Settings/Admin/Branding';
|
||||
import { ConfigAdminSettings } from 'Settings/Admin/Config';
|
||||
import { AdminSettingsGeneral } from 'Settings/Admin/General';
|
||||
import { AdminSettingsDomains } from 'Settings/Admin/Domains';
|
||||
import { AdminSettingsLogin } from 'Settings/Admin/Login';
|
||||
import { AdminSettingsContacts } from 'Settings/Admin/Contacts';
|
||||
import { AdminSettingsSecurity } from 'Settings/Admin/Security';
|
||||
import { AdminSettingsPackages } from 'Settings/Admin/Packages';
|
||||
import { AdminSettingsAbout } from 'Settings/Admin/About';
|
||||
import { AdminSettingsBranding } from 'Settings/Admin/Branding';
|
||||
import { AdminSettingsConfig } from 'Settings/Admin/Config';
|
||||
|
||||
import { MenuSettingsAdminView } from 'View/Admin/Settings/Menu';
|
||||
import { PaneSettingsAdminView } from 'View/Admin/Settings/Pane';
|
||||
|
|
@ -19,30 +19,18 @@ export class SettingsAdminScreen extends AbstractSettingsScreen {
|
|||
constructor() {
|
||||
super([MenuSettingsAdminView, PaneSettingsAdminView]);
|
||||
|
||||
settingsAddViewModel(
|
||||
GeneralAdminSettings,
|
||||
'AdminSettingsGeneral',
|
||||
'TABS_LABELS/LABEL_GENERAL_NAME',
|
||||
'general',
|
||||
true
|
||||
);
|
||||
|
||||
[
|
||||
[DomainsAdminSettings, 'Domains'],
|
||||
[LoginAdminSettings, 'Login'],
|
||||
[BrandingAdminSettings, 'Branding'],
|
||||
[ContactsAdminSettings, 'Contacts'],
|
||||
[SecurityAdminSettings, 'Security'],
|
||||
[PackagesAdminSettings, 'Packages'],
|
||||
[ConfigAdminSettings, 'Config'],
|
||||
[AboutAdminSettings, 'About'],
|
||||
].forEach(item =>
|
||||
settingsAddViewModel(
|
||||
item[0],
|
||||
'AdminSettings'+item[1],
|
||||
'TABS_LABELS/LABEL_'+item[1].toUpperCase()+'_NAME',
|
||||
item[1].toLowerCase()
|
||||
)
|
||||
AdminSettingsGeneral,
|
||||
AdminSettingsDomains,
|
||||
AdminSettingsLogin,
|
||||
AdminSettingsBranding,
|
||||
AdminSettingsContacts,
|
||||
AdminSettingsSecurity,
|
||||
AdminSettingsPackages,
|
||||
AdminSettingsConfig,
|
||||
AdminSettingsAbout
|
||||
].forEach((item, index) =>
|
||||
settingsAddViewModel(item, 0, 0, 0, 0 === index)
|
||||
);
|
||||
|
||||
runSettingsViewModelHooks(true);
|
||||
|
|
|
|||
|
|
@ -82,7 +82,6 @@ export class MailBoxUserScreen extends AbstractScreen {
|
|||
* @returns {void}
|
||||
*/
|
||||
onStart() {
|
||||
if (!this.__started) {
|
||||
super.onStart();
|
||||
|
||||
addEventListener('mailbox.inbox-unread-count', e => {
|
||||
|
|
@ -96,7 +95,6 @@ export class MailBoxUserScreen extends AbstractScreen {
|
|||
this.updateWindowTitle();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {void}
|
||||
|
|
|
|||
|
|
@ -9,14 +9,13 @@ import { ThemeStore } from 'Stores/Theme';
|
|||
|
||||
import { AbstractSettingsScreen, settingsAddViewModel } from 'Screen/AbstractSettings';
|
||||
|
||||
import { GeneralUserSettings } from 'Settings/User/General';
|
||||
import { ContactsUserSettings } from 'Settings/User/Contacts';
|
||||
import { AccountsUserSettings } from 'Settings/User/Accounts';
|
||||
import { FiltersUserSettings } from 'Settings/User/Filters';
|
||||
import { SecurityUserSettings } from 'Settings/User/Security';
|
||||
import { FoldersUserSettings } from 'Settings/User/Folders';
|
||||
import { ThemesUserSettings } from 'Settings/User/Themes';
|
||||
import { OpenPgpUserSettings } from 'Settings/User/OpenPgp';
|
||||
import { UserSettingsGeneral } from 'Settings/User/General';
|
||||
import { UserSettingsContacts } from 'Settings/User/Contacts';
|
||||
import { UserSettingsAccounts } from 'Settings/User/Accounts';
|
||||
import { UserSettingsFilters } from 'Settings/User/Filters';
|
||||
import { UserSettingsSecurity } from 'Settings/User/Security';
|
||||
import { UserSettingsFolders } from 'Settings/User/Folders';
|
||||
import { UserSettingsThemes } from 'Settings/User/Themes';
|
||||
|
||||
import { SystemDropDownUserView } from 'View/User/SystemDropDown';
|
||||
import { MenuSettingsUserView } from 'View/User/Settings/Menu';
|
||||
|
|
@ -26,40 +25,35 @@ export class SettingsUserScreen extends AbstractSettingsScreen {
|
|||
constructor() {
|
||||
super([SystemDropDownUserView, MenuSettingsUserView, PaneSettingsUserView]);
|
||||
|
||||
settingsAddViewModel(GeneralUserSettings, 'SettingsGeneral', 'SETTINGS_LABELS/LABEL_GENERAL_NAME', 'general', true);
|
||||
const views = [
|
||||
UserSettingsGeneral
|
||||
];
|
||||
|
||||
if (AppUserStore.allowContacts()) {
|
||||
settingsAddViewModel(ContactsUserSettings, 'SettingsContacts', 'SETTINGS_LABELS/LABEL_CONTACTS_NAME', 'contacts');
|
||||
views.push(UserSettingsContacts);
|
||||
}
|
||||
|
||||
if (SettingsCapa('AdditionalAccounts') || SettingsCapa('Identities')) {
|
||||
settingsAddViewModel(
|
||||
AccountsUserSettings,
|
||||
'SettingsAccounts',
|
||||
SettingsCapa('AdditionalAccounts')
|
||||
? 'SETTINGS_LABELS/LABEL_ACCOUNTS_NAME'
|
||||
: 'SETTINGS_LABELS/LABEL_IDENTITIES_NAME',
|
||||
'accounts'
|
||||
);
|
||||
views.push(UserSettingsAccounts);
|
||||
}
|
||||
|
||||
if (SettingsCapa('Sieve')) {
|
||||
settingsAddViewModel(FiltersUserSettings, 'SettingsFilters', 'SETTINGS_LABELS/LABEL_FILTERS_NAME', 'filters');
|
||||
views.push(UserSettingsFilters);
|
||||
}
|
||||
|
||||
if (SettingsCapa('AutoLogout')) {
|
||||
settingsAddViewModel(SecurityUserSettings, 'SettingsSecurity', 'SETTINGS_LABELS/LABEL_SECURITY_NAME', 'security');
|
||||
if (SettingsCapa('AutoLogout') || SettingsCapa('OpenPGP') || SettingsCapa('GnuPG')) {
|
||||
views.push(UserSettingsSecurity);
|
||||
}
|
||||
|
||||
settingsAddViewModel(FoldersUserSettings, 'SettingsFolders', 'SETTINGS_LABELS/LABEL_FOLDERS_NAME', 'folders');
|
||||
views.push(UserSettingsFolders);
|
||||
|
||||
if (SettingsCapa('Themes')) {
|
||||
settingsAddViewModel(ThemesUserSettings, 'SettingsThemes', 'SETTINGS_LABELS/LABEL_THEMES_NAME', 'themes');
|
||||
views.push(UserSettingsThemes);
|
||||
}
|
||||
|
||||
if (SettingsCapa('OpenPGP') || SettingsCapa('GnuPG')) {
|
||||
settingsAddViewModel(OpenPgpUserSettings, 'SettingsOpenPGP', 'OpenPGP', 'openpgp');
|
||||
}
|
||||
views.forEach((item, index) =>
|
||||
settingsAddViewModel(item, item.name.replace('User', ''), 0, 0, 0 === index)
|
||||
);
|
||||
|
||||
runSettingsViewModelHooks(false);
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import ko from 'ko';
|
|||
import { Settings } from 'Common/Globals';
|
||||
import Remote from 'Remote/Admin/Fetch';
|
||||
|
||||
export class AboutAdminSettings /*extends AbstractViewSettings*/ {
|
||||
export class AdminSettingsAbout /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.version = Settings.app('version');
|
||||
this.phpextensions = ko.observableArray();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { AbstractViewSettings } from 'Knoin/AbstractViews';
|
||||
|
||||
export class BrandingAdminSettings extends AbstractViewSettings {
|
||||
export class AdminSettingsBranding extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
this.addSetting('Title');
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import ko from 'ko';
|
|||
import Remote from 'Remote/Admin/Fetch';
|
||||
import { forEachObjectEntry } from 'Common/Utils';
|
||||
|
||||
export class ConfigAdminSettings /*extends AbstractViewSettings*/ {
|
||||
export class AdminSettingsConfig /*extends AbstractViewSettings*/ {
|
||||
|
||||
constructor() {
|
||||
this.config = ko.observableArray();
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import Remote from 'Remote/Admin/Fetch';
|
|||
import { decorateKoCommands } from 'Knoin/Knoin';
|
||||
import { AbstractViewSettings } from 'Knoin/AbstractViews';
|
||||
|
||||
export class ContactsAdminSettings extends AbstractViewSettings {
|
||||
export class AdminSettingsContacts extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
this.defaultOptionsAfterRender = defaultOptionsAfterRender;
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import Remote from 'Remote/Admin/Fetch';
|
|||
import { DomainPopupView } from 'View/Popup/Domain';
|
||||
import { DomainAliasPopupView } from 'View/Popup/DomainAlias';
|
||||
|
||||
export class DomainsAdminSettings /*extends AbstractViewSettings*/ {
|
||||
export class AdminSettingsDomains /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.domains = DomainAdminStore;
|
||||
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ import { ThemeStore } from 'Stores/Theme';
|
|||
import { LanguageStore } from 'Stores/Language';
|
||||
import { LanguagesPopupView } from 'View/Popup/Languages';
|
||||
|
||||
export class GeneralAdminSettings extends AbstractViewSettings {
|
||||
export class AdminSettingsGeneral extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { AbstractViewSettings } from 'Knoin/AbstractViews';
|
||||
|
||||
export class LoginAdminSettings extends AbstractViewSettings {
|
||||
export class AdminSettingsLogin extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
this.addSetting('LoginDefaultDomain');
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import { PluginPopupView } from 'View/Popup/Plugin';
|
|||
import { addObservablesTo, addComputablesTo } from 'External/ko';
|
||||
import { AbstractViewSettings } from 'Knoin/AbstractViews';
|
||||
|
||||
export class PackagesAdminSettings extends AbstractViewSettings {
|
||||
export class AdminSettingsPackages extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import Remote from 'Remote/Admin/Fetch';
|
|||
import { decorateKoCommands } from 'Knoin/Knoin';
|
||||
import { AbstractViewSettings } from 'Knoin/AbstractViews';
|
||||
|
||||
export class SecurityAdminSettings extends AbstractViewSettings {
|
||||
export class AdminSettingsSecurity extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import { showScreenPopup } from 'Knoin/Knoin';
|
|||
import { AccountPopupView } from 'View/Popup/Account';
|
||||
import { IdentityPopupView } from 'View/Popup/Identity';
|
||||
|
||||
export class AccountsUserSettings /*extends AbstractViewSettings*/ {
|
||||
export class UserSettingsAccounts /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.allowAdditionalAccount = SettingsCapa('AdditionalAccounts');
|
||||
this.allowIdentities = SettingsCapa('Identities');
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import { SettingsGet } from 'Common/Globals';
|
|||
import { ContactUserStore } from 'Stores/User/Contact';
|
||||
import Remote from 'Remote/User/Fetch';
|
||||
|
||||
export class ContactsUserSettings /*extends AbstractViewSettings*/ {
|
||||
export class UserSettingsContacts /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.contactsAutosave = ko.observable(!!SettingsGet('ContactsAutosave'));
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import { showScreenPopup } from 'Knoin/Knoin';
|
|||
|
||||
import { SieveScriptPopupView } from 'View/Popup/SieveScript';
|
||||
|
||||
export class FiltersUserSettings /*extends AbstractViewSettings*/ {
|
||||
export class UserSettingsFilters /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.scripts = SieveUserStore.scripts;
|
||||
this.loading = ko.observable(false).extend({ debounce: 200 });
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ import { loadFolders } from 'Model/FolderCollection';
|
|||
|
||||
const folderForDeletion = ko.observable(null).askDeleteHelper();
|
||||
|
||||
export class FoldersUserSettings /*extends AbstractViewSettings*/ {
|
||||
export class UserSettingsFolders /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.showKolab = koComputable(() => FolderUserStore.hasCapability('METADATA') && SettingsCapa('Kolab'));
|
||||
this.defaultOptionsAfterRender = defaultOptionsAfterRender;
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ import Remote from 'Remote/User/Fetch';
|
|||
import { IdentityPopupView } from 'View/Popup/Identity';
|
||||
import { LanguagesPopupView } from 'View/Popup/Languages';
|
||||
|
||||
export class GeneralUserSettings extends AbstractViewSettings {
|
||||
export class UserSettingsGeneral extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
|
|
|
|||
|
|
@ -1,46 +0,0 @@
|
|||
import { GnuPGUserStore } from 'Stores/User/GnuPG';
|
||||
import { OpenPGPUserStore } from 'Stores/User/OpenPGP';
|
||||
import { SettingsUserStore } from 'Stores/User/Settings';
|
||||
|
||||
import Remote from 'Remote/User/Fetch';
|
||||
|
||||
import { showScreenPopup } from 'Knoin/Knoin';
|
||||
|
||||
import { OpenPgpImportPopupView } from 'View/Popup/OpenPgpImport';
|
||||
import { OpenPgpGeneratePopupView } from 'View/Popup/OpenPgpGenerate';
|
||||
|
||||
import { SettingsCapa } from 'Common/Globals';
|
||||
|
||||
export class OpenPgpUserSettings /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.gnupgPublicKeys = GnuPGUserStore.publicKeys;
|
||||
this.gnupgPrivateKeys = GnuPGUserStore.privateKeys;
|
||||
|
||||
this.openpgpkeysPublic = OpenPGPUserStore.publicKeys;
|
||||
this.openpgpkeysPrivate = OpenPGPUserStore.privateKeys;
|
||||
|
||||
this.canOpenPGP = SettingsCapa('OpenPGP');
|
||||
this.canGnuPG = GnuPGUserStore.isSupported();
|
||||
this.canMailvelope = !!window.mailvelope;
|
||||
|
||||
this.allowDraftAutosave = SettingsUserStore.allowDraftAutosave;
|
||||
|
||||
this.allowDraftAutosave.subscribe(value => Remote.saveSetting('AllowDraftAutosave', value))
|
||||
}
|
||||
|
||||
addOpenPgpKey() {
|
||||
showScreenPopup(OpenPgpImportPopupView);
|
||||
}
|
||||
|
||||
generateOpenPgpKey() {
|
||||
showScreenPopup(OpenPgpGeneratePopupView);
|
||||
}
|
||||
|
||||
onBuild() {
|
||||
/**
|
||||
* Create an iframe to display the Mailvelope keyring settings.
|
||||
* The iframe will be injected into the container identified by selector.
|
||||
*/
|
||||
window.mailvelope && mailvelope.createSettingsContainer('#mailvelope-settings'/*[, keyring], options*/);
|
||||
}
|
||||
}
|
||||
|
|
@ -7,7 +7,17 @@ import { AbstractViewSettings } from 'Knoin/AbstractViews';
|
|||
|
||||
import { SettingsUserStore } from 'Stores/User/Settings';
|
||||
|
||||
export class SecurityUserSettings extends AbstractViewSettings {
|
||||
import { GnuPGUserStore } from 'Stores/User/GnuPG';
|
||||
import { OpenPGPUserStore } from 'Stores/User/OpenPGP';
|
||||
|
||||
import Remote from 'Remote/User/Fetch';
|
||||
|
||||
import { showScreenPopup } from 'Knoin/Knoin';
|
||||
|
||||
import { OpenPgpImportPopupView } from 'View/Popup/OpenPgpImport';
|
||||
import { OpenPgpGeneratePopupView } from 'View/Popup/OpenPgpGenerate';
|
||||
|
||||
export class UserSettingsSecurity extends AbstractViewSettings {
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
|
|
@ -33,5 +43,35 @@ export class SecurityUserSettings extends AbstractViewSettings {
|
|||
if (this.capaAutoLogout) {
|
||||
this.addSetting('AutoLogout');
|
||||
}
|
||||
|
||||
this.gnupgPublicKeys = GnuPGUserStore.publicKeys;
|
||||
this.gnupgPrivateKeys = GnuPGUserStore.privateKeys;
|
||||
|
||||
this.openpgpkeysPublic = OpenPGPUserStore.publicKeys;
|
||||
this.openpgpkeysPrivate = OpenPGPUserStore.privateKeys;
|
||||
|
||||
this.canOpenPGP = SettingsCapa('OpenPGP');
|
||||
this.canGnuPG = GnuPGUserStore.isSupported();
|
||||
this.canMailvelope = !!window.mailvelope;
|
||||
|
||||
this.allowDraftAutosave = SettingsUserStore.allowDraftAutosave;
|
||||
|
||||
this.allowDraftAutosave.subscribe(value => Remote.saveSetting('AllowDraftAutosave', value))
|
||||
}
|
||||
|
||||
addOpenPgpKey() {
|
||||
showScreenPopup(OpenPgpImportPopupView);
|
||||
}
|
||||
|
||||
generateOpenPgpKey() {
|
||||
showScreenPopup(OpenPgpGeneratePopupView);
|
||||
}
|
||||
|
||||
onBuild() {
|
||||
/**
|
||||
* Create an iframe to display the Mailvelope keyring settings.
|
||||
* The iframe will be injected into the container identified by selector.
|
||||
*/
|
||||
window.mailvelope && mailvelope.createSettingsContainer('#mailvelope-settings'/*[, keyring], options*/);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ addObservablesTo(themeBackground, {
|
|||
error: ''
|
||||
});
|
||||
|
||||
export class ThemesUserSettings /*extends AbstractViewSettings*/ {
|
||||
export class UserSettingsThemes /*extends AbstractViewSettings*/ {
|
||||
constructor() {
|
||||
this.theme = ThemeStore.theme;
|
||||
this.themes = ThemeStore.themes;
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "جهات الإتصال",
|
||||
"LABEL_FOLDERS_NAME": "المجلدات",
|
||||
"LABEL_ACCOUNTS_NAME": "الحسابات",
|
||||
"LABEL_IDENTITIES_NAME": "الهويات",
|
||||
"LABEL_FILTERS_NAME": "عوامل التصفية",
|
||||
"LABEL_SECURITY_NAME": "الأمان",
|
||||
"LABEL_THEMES_NAME": "المظاهر العامة"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Контакти",
|
||||
"LABEL_FOLDERS_NAME": "Папки",
|
||||
"LABEL_ACCOUNTS_NAME": "Акаунти",
|
||||
"LABEL_IDENTITIES_NAME": "Идентичности",
|
||||
"LABEL_FILTERS_NAME": "Филтри",
|
||||
"LABEL_SECURITY_NAME": "Сигурност",
|
||||
"LABEL_THEMES_NAME": "Теми"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Administrační panel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Základní",
|
||||
"LABEL_LOGIN_NAME": "Login",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakty",
|
||||
"LABEL_FOLDERS_NAME": "Složky",
|
||||
"LABEL_ACCOUNTS_NAME": "Účty",
|
||||
"LABEL_IDENTITIES_NAME": "Aliasy",
|
||||
"LABEL_FILTERS_NAME": "Filtry",
|
||||
"LABEL_SECURITY_NAME": "Zabezpečení",
|
||||
"LABEL_THEMES_NAME": "Motivy"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Admin Panel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Generelt",
|
||||
"LABEL_LOGIN_NAME": "Log ind",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakter",
|
||||
"LABEL_FOLDERS_NAME": "Mapper",
|
||||
"LABEL_ACCOUNTS_NAME": "Kontoer",
|
||||
"LABEL_IDENTITIES_NAME": "Identiteter",
|
||||
"LABEL_FILTERS_NAME": "Filtre",
|
||||
"LABEL_SECURITY_NAME": "Sikkerhed",
|
||||
"LABEL_THEMES_NAME": "Temaer"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Adminpanel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Allgemein",
|
||||
"LABEL_LOGIN_NAME": "Anmeldung",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakte",
|
||||
"LABEL_FOLDERS_NAME": "Ordner",
|
||||
"LABEL_ACCOUNTS_NAME": "Konten",
|
||||
"LABEL_IDENTITIES_NAME": "Identitäten",
|
||||
"LABEL_FILTERS_NAME": "Filter",
|
||||
"LABEL_SECURITY_NAME": "Sicherheit",
|
||||
"LABEL_THEMES_NAME": "Themen"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Επαφές",
|
||||
"LABEL_FOLDERS_NAME": "Φάκελοι",
|
||||
"LABEL_ACCOUNTS_NAME": "Λογαρισμοί",
|
||||
"LABEL_IDENTITIES_NAME": "Ταυτότητες",
|
||||
"LABEL_FILTERS_NAME": "Φίλτρα",
|
||||
"LABEL_SECURITY_NAME": "Ασφάλεια",
|
||||
"LABEL_THEMES_NAME": "Θέματα"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Admin Panel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "General",
|
||||
"LABEL_LOGIN_NAME": "Login",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contacts",
|
||||
"LABEL_FOLDERS_NAME": "Folders",
|
||||
"LABEL_ACCOUNTS_NAME": "Accounts",
|
||||
"LABEL_IDENTITIES_NAME": "Identities",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "Security",
|
||||
"LABEL_THEMES_NAME": "Themes"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Panel de Control"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "General",
|
||||
"LABEL_LOGIN_NAME": "Ingresar",
|
||||
"LABEL_BRANDING_NAME": "Personalización",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contactos",
|
||||
"LABEL_FOLDERS_NAME": "Carpetas",
|
||||
"LABEL_ACCOUNTS_NAME": "Cuentas",
|
||||
"LABEL_IDENTITIES_NAME": "Identidades",
|
||||
"LABEL_FILTERS_NAME": "Filtros",
|
||||
"LABEL_SECURITY_NAME": "Seguridad",
|
||||
"LABEL_THEMES_NAME": "Temas"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontaktid",
|
||||
"LABEL_FOLDERS_NAME": "Kaustad",
|
||||
"LABEL_ACCOUNTS_NAME": "Kontod",
|
||||
"LABEL_IDENTITIES_NAME": "Identiteedid",
|
||||
"LABEL_FILTERS_NAME": "Filtrid",
|
||||
"LABEL_SECURITY_NAME": "Turvalisus",
|
||||
"LABEL_THEMES_NAME": "Teemad"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "صفحه مدیریت"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "عمومی",
|
||||
"LABEL_LOGIN_NAME": "ورود",
|
||||
"LABEL_BRANDING_NAME": "برندسازی",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "تماسها",
|
||||
"LABEL_FOLDERS_NAME": "پوشهها",
|
||||
"LABEL_ACCOUNTS_NAME": "حسابهای کاربری",
|
||||
"LABEL_IDENTITIES_NAME": "شناسهها",
|
||||
"LABEL_FILTERS_NAME": "فیلترها",
|
||||
"LABEL_SECURITY_NAME": "امنیت",
|
||||
"LABEL_THEMES_NAME": "پوستهها"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Halintapaneli"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Yleiset",
|
||||
"LABEL_LOGIN_NAME": "Kirjautuminen",
|
||||
"LABEL_BRANDING_NAME": "Brändäys",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Yhteystiedot",
|
||||
"LABEL_FOLDERS_NAME": "kansiot",
|
||||
"LABEL_ACCOUNTS_NAME": "Tilit",
|
||||
"LABEL_IDENTITIES_NAME": "Identiteetit",
|
||||
"LABEL_FILTERS_NAME": "Suodattimet",
|
||||
"LABEL_SECURITY_NAME": "Turvallisuus",
|
||||
"LABEL_THEMES_NAME": "Teemat"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Panneau d'Administration"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Général",
|
||||
"LABEL_LOGIN_NAME": "Identifiant",
|
||||
"LABEL_BRANDING_NAME": "Logo & Marque",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contacts",
|
||||
"LABEL_FOLDERS_NAME": "Dossiers",
|
||||
"LABEL_ACCOUNTS_NAME": "Comptes",
|
||||
"LABEL_IDENTITIES_NAME": "Identités",
|
||||
"LABEL_FILTERS_NAME": "Filtres",
|
||||
"LABEL_SECURITY_NAME": "Sécurité",
|
||||
"LABEL_THEMES_NAME": "Thèmes"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Adminisztrációs felület"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Általános",
|
||||
"LABEL_LOGIN_NAME": "Belépés",
|
||||
"LABEL_BRANDING_NAME": "Arculat",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Névjegyek",
|
||||
"LABEL_FOLDERS_NAME": "Mappák",
|
||||
"LABEL_ACCOUNTS_NAME": "Fiókok",
|
||||
"LABEL_IDENTITIES_NAME": "Identitások",
|
||||
"LABEL_FILTERS_NAME": "Szűrők",
|
||||
"LABEL_SECURITY_NAME": "Biztonság",
|
||||
"LABEL_THEMES_NAME": "Témák"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Panel Admin"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Umum",
|
||||
"LABEL_LOGIN_NAME": "Login",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontak",
|
||||
"LABEL_FOLDERS_NAME": "Folder",
|
||||
"LABEL_ACCOUNTS_NAME": "Akun",
|
||||
"LABEL_IDENTITIES_NAME": "Identitas",
|
||||
"LABEL_FILTERS_NAME": "Filter",
|
||||
"LABEL_SECURITY_NAME": "Keamanan",
|
||||
"LABEL_THEMES_NAME": "Tema"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Tengiliðir",
|
||||
"LABEL_FOLDERS_NAME": "Möppur",
|
||||
"LABEL_ACCOUNTS_NAME": "Aðgangar",
|
||||
"LABEL_IDENTITIES_NAME": "Auðkenni",
|
||||
"LABEL_FILTERS_NAME": "Síur",
|
||||
"LABEL_SECURITY_NAME": "Öryggi",
|
||||
"LABEL_THEMES_NAME": "Þemu"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Amministrazione"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Generali",
|
||||
"LABEL_LOGIN_NAME": "Accesso",
|
||||
"LABEL_BRANDING_NAME": "Personalizzazione",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contatti",
|
||||
"LABEL_FOLDERS_NAME": "Cartelle",
|
||||
"LABEL_ACCOUNTS_NAME": "Account",
|
||||
"LABEL_IDENTITIES_NAME": "Identità",
|
||||
"LABEL_FILTERS_NAME": "Filtri",
|
||||
"LABEL_SECURITY_NAME": "Sicurezza",
|
||||
"LABEL_THEMES_NAME": "Temi"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "管理画面"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "全般",
|
||||
"LABEL_LOGIN_NAME": "ログイン",
|
||||
"LABEL_BRANDING_NAME": "ブランド化",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "連絡先",
|
||||
"LABEL_FOLDERS_NAME": "フォルダー",
|
||||
"LABEL_ACCOUNTS_NAME": "アカウント",
|
||||
"LABEL_IDENTITIES_NAME": "表示名",
|
||||
"LABEL_FILTERS_NAME": "フィルター",
|
||||
"LABEL_SECURITY_NAME": "セキュリティ",
|
||||
"LABEL_THEMES_NAME": "テーマ"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "연락처",
|
||||
"LABEL_FOLDERS_NAME": "폴더",
|
||||
"LABEL_ACCOUNTS_NAME": "계정",
|
||||
"LABEL_IDENTITIES_NAME": "신원",
|
||||
"LABEL_FILTERS_NAME": "필터",
|
||||
"LABEL_SECURITY_NAME": "보안",
|
||||
"LABEL_THEMES_NAME": "테마"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Administratoriaus valdymo skydas"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Pagrindiniai",
|
||||
"LABEL_LOGIN_NAME": "Prisijungimo vardas",
|
||||
"LABEL_BRANDING_NAME": "Įdaguoti",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontaktai",
|
||||
"LABEL_FOLDERS_NAME": "Katalogai",
|
||||
"LABEL_ACCOUNTS_NAME": "Paskyros",
|
||||
"LABEL_IDENTITIES_NAME": "Tapatybės",
|
||||
"LABEL_FILTERS_NAME": "Filtrai",
|
||||
"LABEL_SECURITY_NAME": "Sauga",
|
||||
"LABEL_THEMES_NAME": "Temos"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contacts",
|
||||
"LABEL_FOLDERS_NAME": "Mapes",
|
||||
"LABEL_ACCOUNTS_NAME": "Konti",
|
||||
"LABEL_IDENTITIES_NAME": "Identities",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "Security",
|
||||
"LABEL_THEMES_NAME": "Tēmas"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Admin-panel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Generelt",
|
||||
"LABEL_LOGIN_NAME": "Brukernavn",
|
||||
"LABEL_BRANDING_NAME": "Utforming",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakter",
|
||||
"LABEL_FOLDERS_NAME": "Mapper",
|
||||
"LABEL_ACCOUNTS_NAME": "Kontoer",
|
||||
"LABEL_IDENTITIES_NAME": "Identiteter",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "Sikkerhet",
|
||||
"LABEL_THEMES_NAME": "Tema"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Beheer paneel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Algemeen",
|
||||
"LABEL_LOGIN_NAME": "Inlogscherm",
|
||||
"LABEL_BRANDING_NAME": "Huisstijl",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contactpersonen",
|
||||
"LABEL_FOLDERS_NAME": "Mappen",
|
||||
"LABEL_ACCOUNTS_NAME": "Accounts",
|
||||
"LABEL_IDENTITIES_NAME": "Identiteiten",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "Beveiliging",
|
||||
"LABEL_THEMES_NAME": "Thema's"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Panel administracyjny"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Ogólne",
|
||||
"LABEL_LOGIN_NAME": "Login",
|
||||
"LABEL_BRANDING_NAME": "Personalizacja",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakty",
|
||||
"LABEL_FOLDERS_NAME": "Foldery",
|
||||
"LABEL_ACCOUNTS_NAME": "Konta",
|
||||
"LABEL_IDENTITIES_NAME": "Tożsamości",
|
||||
"LABEL_FILTERS_NAME": "Filtry",
|
||||
"LABEL_SECURITY_NAME": "Bezpieczeństwo",
|
||||
"LABEL_THEMES_NAME": "Motywy"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Painel Administrativo"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Geral",
|
||||
"LABEL_LOGIN_NAME": "Login",
|
||||
"LABEL_BRANDING_NAME": "Personalizar",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contatos",
|
||||
"LABEL_FOLDERS_NAME": "Pastas",
|
||||
"LABEL_ACCOUNTS_NAME": "Contas",
|
||||
"LABEL_IDENTITIES_NAME": "Identidades",
|
||||
"LABEL_FILTERS_NAME": "Filtros",
|
||||
"LABEL_SECURITY_NAME": "Segurança",
|
||||
"LABEL_THEMES_NAME": "Temas"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contactos",
|
||||
"LABEL_FOLDERS_NAME": "Pastas",
|
||||
"LABEL_ACCOUNTS_NAME": "Contas",
|
||||
"LABEL_IDENTITIES_NAME": "Identidades",
|
||||
"LABEL_FILTERS_NAME": "Filtros",
|
||||
"LABEL_SECURITY_NAME": "Segurança",
|
||||
"LABEL_THEMES_NAME": "Temas"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Contacte",
|
||||
"LABEL_FOLDERS_NAME": "Dosare",
|
||||
"LABEL_ACCOUNTS_NAME": "Conturi",
|
||||
"LABEL_IDENTITIES_NAME": "Profiluri",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "Security",
|
||||
"LABEL_THEMES_NAME": "Subiecte"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Админка"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Основные",
|
||||
"LABEL_LOGIN_NAME": "Логин",
|
||||
"LABEL_BRANDING_NAME": "Брендинг",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Контакты",
|
||||
"LABEL_FOLDERS_NAME": "Папки",
|
||||
"LABEL_ACCOUNTS_NAME": "Аккаунты",
|
||||
"LABEL_IDENTITIES_NAME": "Профили",
|
||||
"LABEL_FILTERS_NAME": "Фильтры",
|
||||
"LABEL_SECURITY_NAME": "Безопасность",
|
||||
"LABEL_THEMES_NAME": "Темы"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Admin Panel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Všeobecné",
|
||||
"LABEL_LOGIN_NAME": "Používateľské meno",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakty",
|
||||
"LABEL_FOLDERS_NAME": "Priečinky",
|
||||
"LABEL_ACCOUNTS_NAME": "Účty",
|
||||
"LABEL_IDENTITIES_NAME": "Identity",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "Zabezpečenie",
|
||||
"LABEL_THEMES_NAME": "Motívy"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Administracijska plošča"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Splošno",
|
||||
"LABEL_LOGIN_NAME": "Prijava",
|
||||
"LABEL_BRANDING_NAME": "Prilagoditev",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Stiki",
|
||||
"LABEL_FOLDERS_NAME": "Mape",
|
||||
"LABEL_ACCOUNTS_NAME": "Računi",
|
||||
"LABEL_IDENTITIES_NAME": "Identitete",
|
||||
"LABEL_FILTERS_NAME": "Filtri",
|
||||
"LABEL_SECURITY_NAME": "Varnost",
|
||||
"LABEL_THEMES_NAME": "Teme"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "Adminpanel"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "Allmän",
|
||||
"LABEL_LOGIN_NAME": "Logga in",
|
||||
"LABEL_BRANDING_NAME": "Branding",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kontakter",
|
||||
"LABEL_FOLDERS_NAME": "Mappar",
|
||||
"LABEL_ACCOUNTS_NAME": "Konton",
|
||||
"LABEL_IDENTITIES_NAME": "Identiteter",
|
||||
"LABEL_FILTERS_NAME": "Filter",
|
||||
"LABEL_SECURITY_NAME": "Säkerhet",
|
||||
"LABEL_THEMES_NAME": "Teman"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Kişi Listesi",
|
||||
"LABEL_FOLDERS_NAME": "Klasörler",
|
||||
"LABEL_ACCOUNTS_NAME": "Hesaplar",
|
||||
"LABEL_IDENTITIES_NAME": "Kimlikler",
|
||||
"LABEL_FILTERS_NAME": "Filtreler",
|
||||
"LABEL_SECURITY_NAME": "Güvenlik",
|
||||
"LABEL_THEMES_NAME": "Temalar"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "Контакти",
|
||||
"LABEL_FOLDERS_NAME": "Теки",
|
||||
"LABEL_ACCOUNTS_NAME": "Акаунти",
|
||||
"LABEL_IDENTITIES_NAME": "Профілі",
|
||||
"LABEL_FILTERS_NAME": "Фильтры",
|
||||
"LABEL_SECURITY_NAME": "Безпека",
|
||||
"LABEL_THEMES_NAME": "Теми"
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"TOP_PANEL": {
|
||||
"LABEL_ADMIN_PANEL": "控制面板"
|
||||
},
|
||||
"TABS_LABELS": {
|
||||
"SETTINGS_LABELS": {
|
||||
"LABEL_GENERAL_NAME": "常规",
|
||||
"LABEL_LOGIN_NAME": "登录",
|
||||
"LABEL_BRANDING_NAME": "Logo",
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "联系人",
|
||||
"LABEL_FOLDERS_NAME": "文件夹",
|
||||
"LABEL_ACCOUNTS_NAME": "账户",
|
||||
"LABEL_IDENTITIES_NAME": "身份",
|
||||
"LABEL_FILTERS_NAME": "筛选条件",
|
||||
"LABEL_SECURITY_NAME": "安全",
|
||||
"LABEL_THEMES_NAME": "主题"
|
||||
|
|
|
|||
|
|
@ -347,7 +347,6 @@
|
|||
"LABEL_CONTACTS_NAME": "連絡人",
|
||||
"LABEL_FOLDERS_NAME": "資料夾",
|
||||
"LABEL_ACCOUNTS_NAME": "帳戶",
|
||||
"LABEL_IDENTITIES_NAME": "簽名",
|
||||
"LABEL_FILTERS_NAME": "Filters",
|
||||
"LABEL_SECURITY_NAME": "安全",
|
||||
"LABEL_THEMES_NAME": "主題"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<div class="legend">
|
||||
<span data-i18n="TABS_LABELS/LABEL_PACKAGES_NAME"></span>
|
||||
<span data-i18n="SETTINGS_LABELS/LABEL_PACKAGES_NAME"></span>
|
||||
<i class="icon-spinner" style="margin: 5px" data-bind="visible: packages.loading"></i>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,119 +0,0 @@
|
|||
<div class="legend">OpenPGP</div>
|
||||
<button class="btn" data-bind="click: addOpenPgpKey" data-icon="✚" data-i18n="SETTINGS_OPENPGP/BUTTON_IMPORT_KEY"></button>
|
||||
<!-- ko if: canOpenPGP || canGnuPG -->
|
||||
|
||||
<button class="btn" data-bind="click: generateOpenPgpKey" data-icon="🔑" data-i18n="SETTINGS_OPENPGP/BUTTON_GENERATE_KEY_PAIR"></button>
|
||||
<!-- /ko -->
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<div class="control-group">
|
||||
<div data-bind="component: {
|
||||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'SETTINGS_OPENPGP/LABEL_ALLOW_DRAFT_AUTOSAVE',
|
||||
value: allowDraftAutosave
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
<!-- ko if: canGnuPG -->
|
||||
<details>
|
||||
<summary class="legend">GnuPG</summary>
|
||||
<table class="table table-hover list-table">
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PRIVATE">Private keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: gnupgPrivateKeys, i18nUpdate: gnupgPrivateKeys">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span data-bind="visible: can_sign" class="fontastic">✍</span>
|
||||
<span data-bind="visible: can_decrypt" class="fontastic">🔓</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PUBLIC">Public keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: gnupgPublicKeys, i18nUpdate: gnupgPublicKeys">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span data-bind="visible: can_verify" class="fontastic">✔</span>
|
||||
<span data-bind="visible: can_encrypt" class="fontastic">🔒</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</details>
|
||||
<!-- /ko -->
|
||||
|
||||
<!-- ko if: canOpenPGP -->
|
||||
<details>
|
||||
<summary class="legend">OpenPGP.js</summary>
|
||||
<table class="table table-hover list-table">
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PRIVATE">Private keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: openpgpkeysPrivate, i18nUpdate: openpgpkeysPrivate">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span class="fontastic" data-i18n="[title]SETTINGS_OPENPGP/TITLE_PRIVATE">🔒</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PUBLIC">Public keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: openpgpkeysPublic, i18nUpdate: openpgpkeysPublic">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span class="fontastic" data-i18n="[title]SETTINGS_OPENPGP/TITLE_PUBLIC">🔑</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</details>
|
||||
<!-- /ko -->
|
||||
|
||||
<details>
|
||||
<summary class="legend">Mailvelope</summary>
|
||||
<a data-bind="visible: !canMailvelope" href="https://mailvelope.com/en/help" target="_blank" data-i18n="SETTINGS_OPENPGP/GET_MAILVELOPE"></a>
|
||||
<div id="mailvelope-settings" style="height:40em" data-bind="visible: canMailvelope"></div>
|
||||
</details>
|
||||
|
|
@ -15,3 +15,123 @@
|
|||
}"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="legend">OpenPGP</div>
|
||||
<button class="btn" data-bind="click: addOpenPgpKey" data-icon="✚" data-i18n="SETTINGS_OPENPGP/BUTTON_IMPORT_KEY"></button>
|
||||
<!-- ko if: canOpenPGP || canGnuPG -->
|
||||
|
||||
<button class="btn" data-bind="click: generateOpenPgpKey" data-icon="🔑" data-i18n="SETTINGS_OPENPGP/BUTTON_GENERATE_KEY_PAIR"></button>
|
||||
<!-- /ko -->
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<div class="control-group">
|
||||
<div data-bind="component: {
|
||||
name: 'Checkbox',
|
||||
params: {
|
||||
label: 'SETTINGS_OPENPGP/LABEL_ALLOW_DRAFT_AUTOSAVE',
|
||||
value: allowDraftAutosave
|
||||
}
|
||||
}"></div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
<!-- ko if: canGnuPG -->
|
||||
<details>
|
||||
<summary class="legend">GnuPG</summary>
|
||||
<table class="table table-hover list-table">
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PRIVATE">Private keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: gnupgPrivateKeys, i18nUpdate: gnupgPrivateKeys">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span data-bind="visible: can_sign" class="fontastic">✍</span>
|
||||
<span data-bind="visible: can_decrypt" class="fontastic">🔓</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PUBLIC">Public keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: gnupgPublicKeys, i18nUpdate: gnupgPublicKeys">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span data-bind="visible: can_verify" class="fontastic">✔</span>
|
||||
<span data-bind="visible: can_encrypt" class="fontastic">🔒</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</details>
|
||||
<!-- /ko -->
|
||||
|
||||
<!-- ko if: canOpenPGP -->
|
||||
<details>
|
||||
<summary class="legend">OpenPGP.js</summary>
|
||||
<table class="table table-hover list-table">
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PRIVATE">Private keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: openpgpkeysPrivate, i18nUpdate: openpgpkeysPrivate">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span class="fontastic" data-i18n="[title]SETTINGS_OPENPGP/TITLE_PRIVATE">🔒</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody><tr><th colspan="4" data-i18n="SETTINGS_OPENPGP/TITLE_PUBLIC">Public keys</th></tr></tbody>
|
||||
<tbody data-bind="foreach: openpgpkeysPublic, i18nUpdate: openpgpkeysPublic">
|
||||
<tr>
|
||||
<td data-bind="click: view">
|
||||
<span class="fontastic" data-i18n="[title]SETTINGS_OPENPGP/TITLE_PUBLIC">🔑</span>
|
||||
<span class="key-id" data-bind="text: id"></span>
|
||||
<!-- ko foreach: emails -->
|
||||
<span class="key-user" data-bind="text: $data"></span>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-small btn-danger button-confirm-delete" data-bind="css: {'delete-access': askDelete()}, click: remove"
|
||||
data-i18n="GLOBAL/ARE_YOU_SURE"></a>
|
||||
</td>
|
||||
<td>
|
||||
<span class="delete-key fontastic" data-bind="visible: !askDelete(), click: openForDeletion">🗑</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</details>
|
||||
<!-- /ko -->
|
||||
|
||||
<details>
|
||||
<summary class="legend">Mailvelope</summary>
|
||||
<a data-bind="visible: !canMailvelope" href="https://mailvelope.com/en/help" target="_blank" data-i18n="SETTINGS_OPENPGP/GET_MAILVELOPE"></a>
|
||||
<div id="mailvelope-settings" style="height:40em" data-bind="visible: canMailvelope"></div>
|
||||
</details>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue