mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Slightly modified patch code of #1657
This commit is contained in:
parent
95436347e5
commit
50e30dbb6e
47 changed files with 135 additions and 8 deletions
|
|
@ -36,6 +36,7 @@ import { baseCollator } from 'Common/Translator';
|
|||
|
||||
const
|
||||
isChecked = item => item.checked(),
|
||||
isDeleted = item => item.isDeleted(),
|
||||
replaceHash = hash => {
|
||||
rl.route.off();
|
||||
hasher.replaceHash(hash);
|
||||
|
|
@ -142,6 +143,14 @@ MessagelistUserStore.hasCheckedOrSelected = koComputable(() =>
|
|||
| !!MessagelistUserStore.find(isChecked)
|
||||
).extend({ rateLimit: 50 });
|
||||
|
||||
MessagelistUserStore.hasCheckedOrSelectedAndDeleted = koComputable(
|
||||
() => !!MessagelistUserStore.listCheckedOrSelected().find(isDeleted)
|
||||
).extend({ rateLimit: 50 });
|
||||
|
||||
MessagelistUserStore.hasCheckedOrSelectedAndUndeleted = koComputable(
|
||||
() => !!MessagelistUserStore.listCheckedOrSelected().find(item => !item?.isDeleted())
|
||||
).extend({ rateLimit: 50 });
|
||||
|
||||
MessagelistUserStore.notifyNewMessages = (folder, newMessages) => {
|
||||
if (getFolderInboxName() === folder && arrayLength(newMessages)) {
|
||||
|
||||
|
|
@ -370,6 +379,14 @@ MessagelistUserStore.setAction = (sFolderFullName, iSetAction, messages) => {
|
|||
messages.forEach(oMessage =>
|
||||
oMessage.isFlagged() && rootUids.push(oMessage.uid) && oMessage.flags.remove('\\flagged')
|
||||
);
|
||||
} else if (iSetAction == MessageSetAction.SetDeleted) {
|
||||
messages.forEach(oMessage =>
|
||||
!oMessage.isDeleted() && rootUids.push(oMessage.uid) && oMessage.flags.push('\\deleted')
|
||||
);
|
||||
} else if (iSetAction == MessageSetAction.UnsetDeleted) {
|
||||
messages.forEach(oMessage =>
|
||||
oMessage.isDeleted() && rootUids.push(oMessage.uid) && oMessage.flags.remove('\\deleted')
|
||||
);
|
||||
}
|
||||
rootUids = rootUids.validUnique();
|
||||
length = rootUids.length;
|
||||
|
|
@ -399,6 +416,15 @@ MessagelistUserStore.setAction = (sFolderFullName, iSetAction, messages) => {
|
|||
setAction: iSetAction == MessageSetAction.SetFlag ? 1 : 0
|
||||
});
|
||||
break;
|
||||
|
||||
case MessageSetAction.SetDeleted:
|
||||
case MessageSetAction.UnsetDeleted:
|
||||
Remote.request('MessageSetDeleted', null, {
|
||||
folder: sFolderFullName,
|
||||
uids: rootUids.join(','),
|
||||
setAction: iSetAction == MessageSetAction.SetDeleted ? 1 : 0
|
||||
});
|
||||
break;
|
||||
// no default
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue