From eaa39477bd53130e68bfb26d63308cc9b6af9369 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Fri, 11 Apr 2008 09:34:19 -0400
Subject: [PATCH] #1483863: empty trash and expunge inbox on logout

---
 program/include/main.inc |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/program/include/main.inc b/program/include/main.inc
index 5b82640..649dd25 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -352,6 +352,30 @@
   $USER->reset();
   }
 
+/**
+ * Do server side actions on logout
+ */
+function rcmail_logout_actions()
+  {
+  global $CONFIG, $IMAP;
+
+  // on logout action we're not connected to imap server  
+  if (($CONFIG['logout_purge'] && !empty($CONFIG['trash_mbox'])) 
+      || $CONFIG['logout_expunge'])
+    {
+      if (!rcmail_authenticate_session())
+        return;
+
+      rcmail_imap_init(true);
+    }
+
+  if ($CONFIG['logout_purge'] && !empty($CONFIG['trash_mbox']))
+    $IMAP->clear_mailbox($CONFIG['trash_mbox']);
+
+  if ($CONFIG['logout_expunge'])
+    $IMAP->expunge('INBOX');
+  }
+
 
 /**
  * Return correct name for a specific database table

--
Gitblit v1.9.1