mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-08-30 12:39:20 +03:00
Add some comments and some renames
This commit is contained in:
parent
25214f2d87
commit
c14d7bdd46
11 changed files with 74 additions and 27 deletions
|
|
@ -116,6 +116,11 @@ export class AbstractViewSettings
|
|||
onHide() {}
|
||||
viewModelDom
|
||||
*/
|
||||
/**
|
||||
* When this[name] does not exists, create as observable with value of SettingsGet(name)
|
||||
* When this[name+'Trigger'] does not exists, create as observable
|
||||
* Subscribe to this[name], and handle saving the setting
|
||||
*/
|
||||
addSetting(name, valueCb)
|
||||
{
|
||||
let prop = name[0].toLowerCase() + name.slice(1),
|
||||
|
|
@ -131,6 +136,7 @@ export class AbstractViewSettings
|
|||
rl.app.Remote.saveSetting(name, value,
|
||||
iError => {
|
||||
this[trigger](iError ? SaveSettingStatus.Failed : SaveSettingStatus.Success);
|
||||
// iError || Settings.set(name, value);
|
||||
setTimeout(() => this[trigger](SaveSettingStatus.Idle), 1000);
|
||||
}
|
||||
);
|
||||
|
|
@ -138,6 +144,10 @@ export class AbstractViewSettings
|
|||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Foreach name if this[name] does not exists, create as observable with value of SettingsGet(name)
|
||||
* Subscribe to this[name], for saving the setting
|
||||
*/
|
||||
addSettings(names)
|
||||
{
|
||||
names.forEach(name => {
|
||||
|
|
|
|||
|
|
@ -484,16 +484,12 @@ export class FolderModel extends AbstractModel {
|
|||
return null;
|
||||
},
|
||||
|
||||
hasSubscribedUnreadMessagesSubfolders: () =>
|
||||
!!this.subFolders().find(
|
||||
folder => folder.unreadEmails() | folder.hasSubscribedUnreadMessagesSubfolders()
|
||||
)
|
||||
/*
|
||||
!!this.subFolders().filter(
|
||||
folder => folder.unreadEmails() | folder.hasSubscribedUnreadMessagesSubfolders()
|
||||
).length
|
||||
*/
|
||||
,href: () => this.canBeSelected() && mailBox(this.fullNameHash)
|
||||
hasUnreadInSub: () =>
|
||||
this.subFolders().some(
|
||||
folder => folder.unreadEmails() | folder.hasUnreadInSub()
|
||||
),
|
||||
|
||||
href: () => this.canBeSelected() && mailBox(this.fullNameHash)
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -511,7 +511,7 @@ export class MessageModel extends AbstractModel {
|
|||
hasImages = true;
|
||||
},
|
||||
attr = 'data-x-src',
|
||||
src, useProxy = !!SettingsGet('useLocalProxyForExternalImages');
|
||||
src, useProxy = !!SettingsGet('proxyExternalImages');
|
||||
body.querySelectorAll('img[' + attr + ']').forEach(node => {
|
||||
src = node.getAttribute(attr);
|
||||
if (isValid(src)) {
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ export class AdminSettingsSecurity extends AbstractViewSettings {
|
|||
constructor() {
|
||||
super();
|
||||
|
||||
this.addSettings(['useLocalProxyForExternalImages', 'autoVerifySignatures']);
|
||||
this.addSettings(['proxyExternalImages', 'autoVerifySignatures']);
|
||||
|
||||
this.weakPassword = rl.app.weakPassword;
|
||||
|
||||
|
|
|
|||
|
|
@ -32,6 +32,14 @@ export class UserSettingsGeneral extends AbstractViewSettings {
|
|||
this.language = LanguageStore.language;
|
||||
this.languages = LanguageStore.languages;
|
||||
this.hourCycle = LanguageStore.hourCycle;
|
||||
/*
|
||||
// 'THREAD=REFS', 'THREAD=REFERENCES', 'THREAD=ORDEREDSUBJECT'
|
||||
this.threadModes = ko.observableArray();
|
||||
AppUserStore.capabilities.forEach(capa =>
|
||||
capa.startsWith('THREAD=') && this.threadModes.push(capa.slice(7))
|
||||
);
|
||||
this.threadModes.sort((a, b) => a.length - b.length);
|
||||
*/
|
||||
|
||||
this.soundNotification = SMAudio.notifications;
|
||||
this.notificationSound = ko.observable(SettingsGet('NotificationSound'));
|
||||
|
|
|
|||
|
|
@ -111,6 +111,39 @@ export const SettingsUserStore = new class {
|
|||
'pgpSign',
|
||||
'pgpEncrypt',
|
||||
'allowSpellcheck'
|
||||
/*
|
||||
'MessagesPerPage',
|
||||
'MessageReadDelay',
|
||||
'SoundNotification',
|
||||
'NotificationSound',
|
||||
'DesktopNotifications',
|
||||
'Layout',
|
||||
'AutoLogout',
|
||||
'ContactsAutosave',
|
||||
'contactsAllowed',
|
||||
'CheckMailInterval',
|
||||
'SentFolder',
|
||||
'DraftsFolder',
|
||||
'JunkFolder',
|
||||
'TrashFolder',
|
||||
'ArchiveFolder',
|
||||
'hourCycle',
|
||||
'Resizer4Width',
|
||||
'Resizer5Width',
|
||||
'Resizer5Height',
|
||||
'fontSansSerif',
|
||||
'fontSerif',
|
||||
'fontMono',
|
||||
'userBackgroundName',
|
||||
'userBackgroundHash',
|
||||
'autoVerifySignatures',
|
||||
'allowLanguagesOnSettings',
|
||||
'attachmentLimit',
|
||||
'Theme',
|
||||
'language',
|
||||
'clientLanguage',
|
||||
'StaticLibsJs',
|
||||
*/
|
||||
].forEach(name => {
|
||||
let value = SettingsGet(name);
|
||||
name = name[0].toLowerCase() + name.slice(1);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue