mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-08-28 11:39:21 +03:00
IMAP \archive is not the same \all, so split it
This commit is contained in:
parent
d6071a584e
commit
2def2fc118
5 changed files with 21 additions and 40 deletions
|
|
@ -21,15 +21,16 @@ import { AbstractModel } from 'Knoin/AbstractModel';
|
|||
|
||||
const
|
||||
ServerFolderType = {
|
||||
USER: 0,
|
||||
// USER: 0,
|
||||
INBOX: 1,
|
||||
SENT: 2,
|
||||
DRAFTS: 3,
|
||||
JUNK: 4,
|
||||
TRASH: 5,
|
||||
IMPORTANT: 10,
|
||||
FLAGGED: 11,
|
||||
ALL: 12
|
||||
// IMPORTANT: 10,
|
||||
// FLAGGED: 11,
|
||||
ARCHIVE: 12
|
||||
// ,ALL: 13
|
||||
},
|
||||
|
||||
normalizeFolder = sFolderFullNameRaw => ('' === sFolderFullNameRaw
|
||||
|
|
@ -129,7 +130,7 @@ export class FolderCollectionModel extends AbstractCollectionModel
|
|||
Settings.set('DraftFolder', this.SystemFolders[ServerFolderType.DRAFTS] || null);
|
||||
Settings.set('SpamFolder', this.SystemFolders[ServerFolderType.JUNK] || null);
|
||||
Settings.set('TrashFolder', this.SystemFolders[ServerFolderType.TRASH] || null);
|
||||
Settings.set('ArchiveFolder', this.SystemFolders[ServerFolderType.ALL] || null);
|
||||
Settings.set('ArchiveFolder', this.SystemFolders[ServerFolderType.ARCHIVE] || null);
|
||||
|
||||
update = true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,29 +75,10 @@ export const FolderUserStore = new class {
|
|||
|
||||
this.folderListSystemNames = ko.computed(() => {
|
||||
const list = [getFolderInboxName()],
|
||||
sentFolder = this.sentFolder(),
|
||||
draftFolder = this.draftFolder(),
|
||||
spamFolder = this.spamFolder(),
|
||||
trashFolder = this.trashFolder(),
|
||||
archiveFolder = this.archiveFolder();
|
||||
others = [this.sentFolder(), this.draftFolder(), this.spamFolder(), this.trashFolder(), this.archiveFolder()];
|
||||
|
||||
if (this.folderList.length) {
|
||||
if (sentFolder && UNUSED_OPTION_VALUE !== sentFolder) {
|
||||
list.push(sentFolder);
|
||||
}
|
||||
if (draftFolder && UNUSED_OPTION_VALUE !== draftFolder) {
|
||||
list.push(draftFolder);
|
||||
}
|
||||
if (spamFolder && UNUSED_OPTION_VALUE !== spamFolder) {
|
||||
list.push(spamFolder);
|
||||
}
|
||||
if (trashFolder && UNUSED_OPTION_VALUE !== trashFolder) {
|
||||
list.push(trashFolder);
|
||||
}
|
||||
if (archiveFolder && UNUSED_OPTION_VALUE !== archiveFolder) {
|
||||
list.push(archiveFolder);
|
||||
}
|
||||
}
|
||||
this.folderList().length &&
|
||||
others.forEach(name => name && UNUSED_OPTION_VALUE !== name && list.push(name));
|
||||
|
||||
return list;
|
||||
});
|
||||
|
|
@ -109,15 +90,11 @@ export const FolderUserStore = new class {
|
|||
const
|
||||
fRemoveSystemFolderType = (observable) => () => {
|
||||
const folder = getFolderFromCacheList(observable());
|
||||
if (folder) {
|
||||
folder.type(FolderType.User);
|
||||
}
|
||||
folder && folder.type(FolderType.User);
|
||||
},
|
||||
fSetSystemFolderType = type => value => {
|
||||
const folder = getFolderFromCacheList(value);
|
||||
if (folder) {
|
||||
folder.type(type);
|
||||
}
|
||||
folder && folder.type(type);
|
||||
};
|
||||
|
||||
this.sentFolder.subscribe(fRemoveSystemFolderType(this.sentFolder), this, 'beforeChange');
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue