优化:email垃圾邮件或回收站执行永久删除时imap服务器端实际执行移动到回收站
This commit is contained in:
parent
140bf0e1c2
commit
fa7d9289af
@ -60,7 +60,11 @@ def _do_imap_move(email_account, uid, src, dest):
|
||||
|
||||
|
||||
def _sync_imap_delete(email_name):
|
||||
"""Best-effort: delete email on IMAP server asynchronously."""
|
||||
"""Move email to Trash folder on IMAP server (soft delete).
|
||||
|
||||
Unlike other operations, this moves to Trash instead of permanent deletion
|
||||
to prevent accidental data loss. Emails can be recovered from IMAP Trash folder.
|
||||
"""
|
||||
uid, email_account, imap_folder = jingrow.db.get_value(
|
||||
"Email", email_name, ["uid", "email_account", "imap_folder"]
|
||||
) or (None, None, None)
|
||||
@ -68,14 +72,15 @@ def _sync_imap_delete(email_name):
|
||||
if not uid or uid == -1 or not email_account:
|
||||
return
|
||||
|
||||
folder = imap_folder or "INBOX"
|
||||
src = imap_folder or "INBOX"
|
||||
|
||||
enqueue(
|
||||
"jingrow.email.inbox._do_imap_delete",
|
||||
"jingrow.email.inbox._do_imap_move",
|
||||
queue="short",
|
||||
email_account=email_account,
|
||||
uid=str(uid),
|
||||
folder=folder,
|
||||
src=src,
|
||||
dest="Trash",
|
||||
)
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user