Prechádzať zdrojové kódy

removed debug message and modified the messages array.
Now it uses the UIDVALIDITY tag from the imap select response.

stekkel 23 rokov pred
rodič
commit
3dd9279a7a
1 zmenil súbory, kde vykonal 10 pridanie a 7 odobranie
  1. 10 7
      src/read_body.php

+ 10 - 7
src/read_body.php

@@ -382,22 +382,25 @@ $mbx_response = sqimap_mailbox_select($imapConnection, $mailbox, false, false, t
 if (!isset($messages)) {
     $messages = array();
     session_register('messages');
-    echo "SET messages";
 }
 
 /**
  * $message contains all information about the message
  * including header and body
  */
-if (!isset($messages[$passed_id])) { 
+
+$uidvalidity = $mbx_response['UIDVALIDITY'];
+ 
+if (!isset($messages[$uidvalidity])) {
+   $messages[$uidvalidity] = array();
+}  
+if (!isset($messages[$uidvalidity][$passed_id])) {
     $message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
-    $messages["$passed_id"] = $message;
+    $messages[$uidvalidity][$passed_id] = $message;
     $header = $message->header;
-    
-    echo "NOT SET $passed_id";
 } else {
-    $message = $messages[$passed_id];
-    $message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
+    $message = $messages[$uidvalidity][$passed_id];
+//    $message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
     if (isset($passed_ent_id)) {
        $message = $message->getEntity($passed_ent_id);
        $message->id = $passed_id;