Procházet zdrojové kódy

make the failure to set the \Answered flag on a message when replying
non-fatal

robsiemb před 23 roky
rodič
revize
271ff2d72a
4 změnil soubory, kde provedl 12 přidání a 12 odebrání
  1. 5 5
      functions/imap_messages.php
  2. 1 1
      functions/smtp.php
  3. 2 2
      functions/tree.php
  4. 4 4
      src/move_messages.php

+ 5 - 5
functions/imap_messages.php

@@ -24,19 +24,19 @@ function sqimap_messages_delete ($imap_stream, $start, $end, $mailbox) {
     if (($move_to_trash == true) && (sqimap_mailbox_exists($imap_stream, $trash_folder) && ($mailbox != $trash_folder))) {
         sqimap_messages_copy ($imap_stream, $start, $end, $trash_folder);
     }
-    sqimap_messages_flag ($imap_stream, $start, $end, "Deleted");
+    sqimap_messages_flag ($imap_stream, $start, $end, "Deleted", true);
 }
 
 /* Sets the specified messages with specified flag */
-function sqimap_messages_flag ($imap_stream, $start, $end, $flag) {
+function sqimap_messages_flag ($imap_stream, $start, $end, $flag, $handle_errors) {
     global $uid_support;
-    $read = sqimap_run_command ($imap_stream, "STORE $start:$end +FLAGS (\\$flag)", true, $response, $message, $uid_support);
+    $read = sqimap_run_command ($imap_stream, "STORE $start:$end +FLAGS (\\$flag)", $handle_errors, $response, $message, $uid_support);
 }
 
 /* Remove specified flag from specified messages */
-function sqimap_messages_remove_flag ($imap_stream, $start, $end, $flag) {
+function sqimap_messages_remove_flag ($imap_stream, $start, $end, $flag, $handle_errors) {
     global $uid_support;
-    $read = sqimap_run_command ($imap_stream, "STORE $start:$end -FLAGS (\\$flag)", true, $response, $message, $uid_support);
+    $read = sqimap_run_command ($imap_stream, "STORE $start:$end -FLAGS (\\$flag)", $handle_errors, $response, $message, $uid_support);
 }
 
 /* Returns some general header information -- FROM, DATE, and SUBJECT */

+ 1 - 1
functions/smtp.php

@@ -789,7 +789,7 @@ function sendMessage($t, $c, $b, $subject, $body, $reply_id, $MDN,
 
     if (isset($reply_id) && $reply_id) {
         sqimap_mailbox_select ($imap_stream, $mailbox);
-        sqimap_messages_flag ($imap_stream, $reply_id, $reply_id, 'Answered');
+        sqimap_messages_flag ($imap_stream, $reply_id, $reply_id, 'Answered', false);
 
         /* Insert In-Reply-To and References headers if the
          * message-id of the message we reply to is set (longer than "<>")

+ 2 - 2
functions/tree.php

@@ -72,7 +72,7 @@ function walkTreeInPreOrderEmptyTrash($index, $imap_stream, $tree) {
             $numMessages = sqimap_get_num_messages($imap_stream, $trash_folder);
             if ($numMessages > 0) {
             sqimap_mailbox_select($imap_stream, $trash_folder);
-            sqimap_messages_flag ($imap_stream, 1, $numMessages, 'Deleted');
+            sqimap_messages_flag ($imap_stream, 1, $numMessages, 'Deleted', true);
             sqimap_mailbox_expunge($imap_stream, $trash_folder, true);
             }
         }
@@ -83,7 +83,7 @@ function walkTreeInPreOrderEmptyTrash($index, $imap_stream, $tree) {
             $numMessages = sqimap_get_num_messages($imap_stream, $trash_folder);
             if ($numMessages > 0) {
             sqimap_mailbox_select($imap_stream, $trash_folder);
-            sqimap_messages_flag ($imap_stream, 1, $numMessages, 'Deleted');
+            sqimap_messages_flag ($imap_stream, 1, $numMessages, 'Deleted', true);
             sqimap_mailbox_expunge($imap_stream, $trash_folder, true);
             }
         }

+ 4 - 4
src/move_messages.php

@@ -147,7 +147,7 @@ if(isset($expungeButton)) {
         //    loop because we never increment j.  so check to see if msg[0] is set or not to fix this.
         while ($j < count($msg)) {
             if ($msg[$i]) {
-                sqimap_messages_remove_flag ($imapConnection, $msg[$i], $msg[$i], "Deleted");
+                sqimap_messages_remove_flag ($imapConnection, $msg[$i], $msg[$i], "Deleted", true);
                 $j++;
             }
             $i++;
@@ -168,9 +168,9 @@ if(isset($expungeButton)) {
         while ($j < count($msg)) {
             if (isset($msg[$i])) {
                 if (isset($markRead)) {
-                    sqimap_messages_flag($imapConnection, $msg[$i], $msg[$i], "Seen");
+                    sqimap_messages_flag($imapConnection, $msg[$i], $msg[$i], "Seen", true);
                 } else if (isset($markUnread)) {
-                    sqimap_messages_remove_flag($imapConnection, $msg[$i], $msg[$i], "Seen");
+                    sqimap_messages_remove_flag($imapConnection, $msg[$i], $msg[$i], "Seen", true);
                 } else if (isset($attache)) {
 		    break;
                 } else  {
@@ -210,7 +210,7 @@ if(isset($expungeButton)) {
             if (isset($msg[$i])) {
                 /** check if they would like to move it to the trash folder or not */
                 sqimap_messages_copy($imapConnection, $msg[$i], $msg[$i], $targetMailbox);
-                sqimap_messages_flag($imapConnection, $msg[$i], $msg[$i], "Deleted");
+                sqimap_messages_flag($imapConnection, $msg[$i], $msg[$i], "Deleted", true);
                 $j++;
             }
             $i++;