Fix opening draft conversations
authorTim Düsterhus <duesterhus@woltlab.com>
Wed, 27 Sep 2023 07:18:31 +0000 (09:18 +0200)
committerTim Düsterhus <duesterhus@woltlab.com>
Wed, 27 Sep 2023 07:18:31 +0000 (09:18 +0200)
This got broken in 40edd0891d0003c5441dfd2c067eeb5632fbc2ed, because drafts do
not have any participants, thus resulting in an empty list of visible
participants, breaking the database query for the modification log.

Fix this by adding the conversation author to the array if it's a draft
conversation. They are able to see it by definition.

files/lib/page/ConversationPage.class.php

index b7b2ec11a53dbafb3c00721eb67ffc505a03eed2..fe520b14eeb17b1a1aa988972d7709994e786e88 100644 (file)
@@ -303,6 +303,11 @@ class ConversationPage extends MultipleLinkPage
             }
         }
 
+        // Drafts do not store their participants in conversation_to_user.
+        if ($this->conversation->isDraft) {
+            $visibleParticipantIDs[] = $this->conversation->userID;
+        }
+
         // load modification log entries
         $this->modificationLogList = new ConversationLogModificationLogList($this->conversation->conversationID);
         $this->modificationLogList->getConditionBuilder()