aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/base/imap.go
diff options
context:
space:
mode:
authorLibravatarLibravatar Simon Ser <[email protected]> 2020-01-24 20:27:05 +0100
committerLibravatarLibravatar Simon Ser <[email protected]> 2020-01-24 20:27:05 +0100
commit3384c39a1773c90eb4575d4017fcd92b9e9ab6f9 (patch)
treebf005a176449d6a5337ff2fa0e78111dadbd4188 /plugins/base/imap.go
parentd31c56ec98cd3f4fc5afbdd8f840538f3ee59429 (diff)
downloadalps-3384c39a1773c90eb4575d4017fcd92b9e9ab6f9.tar.gz
alps-3384c39a1773c90eb4575d4017fcd92b9e9ab6f9.tar.bz2
alps-3384c39a1773c90eb4575d4017fcd92b9e9ab6f9.zip
plugins/base: delete previous draft
Diffstat (limited to 'plugins/base/imap.go')
-rwxr-xr-xplugins/base/imap.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/plugins/base/imap.go b/plugins/base/imap.go
index 980a8aa..280a06b 100755
--- a/plugins/base/imap.go
+++ b/plugins/base/imap.go
@@ -436,3 +436,19 @@ func appendMessage(c *imapclient.Client, msg *OutgoingMessage, mboxType mailboxT
return true, nil
}
+
+func deleteMessage(c *imapclient.Client, mboxName string, uid uint32) error {
+ if err := ensureMailboxSelected(c, mboxName); err != nil {
+ return err
+ }
+
+ seqSet := new(imap.SeqSet)
+ seqSet.AddNum(uid)
+ item := imap.FormatFlagsOp(imap.AddFlags, true)
+ flags := []interface{}{imap.DeletedFlag}
+ if err := c.UidStore(seqSet, item, flags, nil); err != nil {
+ return err
+ }
+
+ return c.Expunge(nil)
+}