mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Cleanup FolderClearPopupView
This commit is contained in:
parent
36c54521d7
commit
64c716ea07
2 changed files with 23 additions and 41 deletions
|
|
@ -13,55 +13,42 @@ export class FolderClearPopupView extends AbstractViewPopup {
|
|||
super('FolderClear');
|
||||
|
||||
this.addObservables({
|
||||
selectedFolder: null,
|
||||
clearingProcess: false,
|
||||
clearingError: ''
|
||||
folder: null,
|
||||
clearing: false
|
||||
});
|
||||
|
||||
this.addComputables({
|
||||
dangerDescHtml: () => {
|
||||
const folder = this.selectedFolder();
|
||||
// return i18n('POPUPS_CLEAR_FOLDER/DANGER_DESC_HTML_1', { FOLDER: folder ? folder.fullName.replace(folder.delimiter, ' / ') : '' });
|
||||
return i18n('POPUPS_CLEAR_FOLDER/DANGER_DESC_HTML_1', { FOLDER: folder ? folder.localName() : '' });
|
||||
// const folder = this.folder();
|
||||
// return i18n('POPUPS_CLEAR_FOLDER/DANGER_DESC_HTML_1', { FOLDER: folder.fullName.replace(folder.delimiter, ' / ') });
|
||||
return i18n('POPUPS_CLEAR_FOLDER/DANGER_DESC_HTML_1', { FOLDER: this.folder()?.localName() });
|
||||
}
|
||||
});
|
||||
|
||||
decorateKoCommands(this, {
|
||||
clearCommand: self => {
|
||||
const folder = self.selectedFolder();
|
||||
return !self.clearingProcess() && null !== folder;
|
||||
}
|
||||
clearCommand: self => !self.clearing()
|
||||
});
|
||||
}
|
||||
|
||||
clearCommand() {
|
||||
const folderToClear = this.selectedFolder();
|
||||
if (folderToClear) {
|
||||
MessageUserStore.message(null);
|
||||
MessagelistUserStore([]);
|
||||
|
||||
this.clearingProcess(true);
|
||||
|
||||
folderToClear.totalEmails(0);
|
||||
folderToClear.unreadEmails(0);
|
||||
folderToClear.hash = '';
|
||||
|
||||
const folder = this.folder();
|
||||
if (folder) {
|
||||
this.clearing(true);
|
||||
Remote.request('FolderClear', iError => {
|
||||
this.clearingProcess(false);
|
||||
if (iError) {
|
||||
this.clearingError(getNotification(iError));
|
||||
} else {
|
||||
MessagelistUserStore.reload(true);
|
||||
this.close();
|
||||
}
|
||||
folder.totalEmails(0);
|
||||
folder.unreadEmails(0);
|
||||
MessageUserStore.message(null);
|
||||
MessagelistUserStore.reload(true, true);
|
||||
this.clearing(false);
|
||||
iError ? alert(getNotification(iError)) : this.close();
|
||||
}, {
|
||||
Folder: folderToClear.fullName
|
||||
Folder: folder.fullName
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
onShow(folder) {
|
||||
this.clearingProcess(false);
|
||||
this.selectedFolder(folder || null);
|
||||
this.clearing(false);
|
||||
this.folder(folder);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue