From f0a96604aa265649b067d06536f0f9e7ff7f56ed Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Thu, 5 May 2022 15:21:26 +0000
Subject: [PATCH] don't show quick filter in multi person searches on a
 course's group page for...

Closes #1000

Merge request studip/studip!577
---
 app/views/course/statusgroups/_group.php | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/app/views/course/statusgroups/_group.php b/app/views/course/statusgroups/_group.php
index 35f8a90ebfa..ebd99728102 100644
--- a/app/views/course/statusgroups/_group.php
+++ b/app/views/course/statusgroups/_group.php
@@ -79,7 +79,7 @@
                               ]),
                               ['data-dialog' => 'size=auto']
                           )
-                          ->condition(!($is_participants_locked || $is_locked))
+                          ->condition(!($is_participants_locked || $is_locked) && count($allmembers) < 500)
                           ->addMultiPersonSearch(
                               MultiPersonSearch::get('add_statusgroup_member' . $group->id)
                                   ->setTitle(sprintf(_('Personen zu Gruppe %s hinzufügen'), $group->name))
@@ -96,6 +96,19 @@
                                   ->addQuickfilter(_('Teilnehmende ohne Gruppenzuordnung'),
                                       $nogroupmembers)
                           )
+                          ->condition(!($is_participants_locked || $is_locked) && count($allmembers) >= 500)
+                          ->addMultiPersonSearch(
+                              MultiPersonSearch::get('add_statusgroup_member' . $group->id)
+                                  ->setTitle(sprintf(_('Personen zu Gruppe %s hinzufügen'), $group->name))
+                                  ->setLinkText(_('Personen hinzufügen'))
+                                  ->setSearchObject($memberSearch)
+                                  ->setDefaultSelectedUser($group->members->pluck('user_id'))
+                                  ->setDataDialogStatus(Request::isXhr())
+                                  ->setJSFunctionOnSubmit(Request::isXhr() ?
+                                                'STUDIP.Dialog.close();' : false)
+                                  ->setExecuteURL($controller->url_for('course/statusgroups/add_member/' .
+                                                $group->id))
+                          )
                           ->conditionAll(!$is_locked)
                           ->addLink(
                               $controller->url_for('course/statusgroups/edit', $group->id),
-- 
GitLab