modified sqimap_expunge to return the number of expunged messages and to
authorstekkel <stekkel@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Fri, 5 Jul 2002 13:12:56 +0000 (13:12 +0000)
committerstekkel <stekkel@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Fri, 5 Jul 2002 13:12:56 +0000 (13:12 +0000)
give and optional id range to expunge.

git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@3041 7612ce4b-ef26-0410-bec9-ea0150e637f0

functions/imap_mailbox.php

index 6bf64d2f87c0b0bbea8355e80874eb0277f7827a..44e14a91dca65f3f059282464b1c757646f83299 100755 (executable)
@@ -147,9 +147,23 @@ function isSpecialMailbox( $box ) {
 }
 
 /* Expunges a mailbox */
-function sqimap_mailbox_expunge ($imap_stream, $mailbox, $handle_errors = true) {
-    $read = sqimap_run_command($imap_stream, 'EXPUNGE', $handle_errors,
-                               $response, $message);
+function sqimap_mailbox_expunge ($imap_stream, $mailbox, $handle_errors = true, $id='') {
+  global $uid_support;
+    if (isset($id)) {
+       if (is_array($id)) {
+          $id = sqimap_message_list_squisher($id);
+       }
+       $id = ' '.$id;
+    }
+    $read = sqimap_run_command($imap_stream, 'EXPUNGE$id', $handle_errors,
+                               $response, $message, $uid_support);
+    $cnt = 0;                         
+    foreach ($read as $r) {
+       if (pregmatch('/^\*\s[0-9]+\sEXPUNGE/AUi',$r,$regs)) {
+          $cnt++;
+       }
+    }
+    return $cnt; 
 }
 
 /* Checks whether or not the specified mailbox exists */