Add missing `restrictUserGroupIDs` property in AJAX request
authorMatthias Schmidt <gravatronics@live.com>
Mon, 1 Jun 2020 11:48:39 +0000 (13:48 +0200)
committerMatthias Schmidt <gravatronics@live.com>
Mon, 1 Jun 2020 11:48:39 +0000 (13:48 +0200)
See #127

files/lib/data/conversation/ConversationAction.class.php

index 4af71262922d42b6dadcf7e380a93da9422faa5f..898401ded1a2a06a1d0891d41b1c4ef28a61df9b 100644 (file)
@@ -7,6 +7,7 @@ use wcf\data\conversation\message\SimplifiedViewableConversationMessageList;
 use wcf\data\AbstractDatabaseObjectAction;
 use wcf\data\IClipboardAction;
 use wcf\data\IVisitableObjectAction;
+use wcf\data\user\group\UserGroup;
 use wcf\system\clipboard\ClipboardHandler;
 use wcf\system\conversation\ConversationHandler;
 use wcf\system\database\util\PreparedStatementConditionBuilder;
@@ -776,11 +777,19 @@ class ConversationAction extends AbstractDatabaseObjectAction implements IClipbo
         * @return      array
         */
        public function getAddParticipantsForm() {
+               $restrictUserGroupIDs = [];
+               foreach (UserGroup::getAllGroups() as $group) {
+                       if ($group->canBeAddedAsConversationParticipant) {
+                               $restrictUserGroupIDs[] = $group->groupID;
+                       }
+               }
+               
                return [
                        'excludedSearchValues' => $this->conversation->getParticipantNames(false, true),
                        'maxItems' => WCF::getSession()->getPermission('user.conversation.maxParticipants') - $this->conversation->participants,
                        'canAddGroupParticipants' => WCF::getSession()->getPermission('user.conversation.canAddGroupParticipants'),
-                       'template' => WCF::getTPL()->fetch('conversationAddParticipants', 'wcf', ['conversation' => $this->conversation])
+                       'template' => WCF::getTPL()->fetch('conversationAddParticipants', 'wcf', ['conversation' => $this->conversation]),
+                       'restrictUserGroupIDs' => $restrictUserGroupIDs,
                ];
        }