From ddd149d948ae617443c130ef8f3caaafdb6a4465 Mon Sep 17 00:00:00 2001 From: Moritz Strohm <strohm@data-quest.de> Date: Mon, 23 Oct 2023 18:49:31 +0000 Subject: [PATCH] QuickSearch: only send necessary data to trigger the search, fixes #3381 Closes #3381 Merge request studip/studip!2301 --- app/views/messages/write.php | 1 + resources/assets/javascripts/lib/quick_search.js | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/views/messages/write.php b/app/views/messages/write.php index cfa081638da..2b2d06d2319 100644 --- a/app/views/messages/write.php +++ b/app/views/messages/write.php @@ -27,6 +27,7 @@ <div class="message-search-wrapper"> <?= QuickSearch::get('user_id', new StandardSearch('user_id')) ->fireJSFunctionOnSelect('STUDIP.Messages.add_adressee') + ->setAttributes(['data-context' => '']) ->withButton() ->render(); diff --git a/resources/assets/javascripts/lib/quick_search.js b/resources/assets/javascripts/lib/quick_search.js index 115941b2918..806debd5f50 100644 --- a/resources/assets/javascripts/lib/quick_search.js +++ b/resources/assets/javascripts/lib/quick_search.js @@ -43,9 +43,12 @@ const QuickSearch = { }, source: function(input, add) { //get the variables that should be sent: - var send_vars = jQuery('#' + name) - .closest('form') - .serializeArray(); + let node = jQuery('#' + name); + let form = jQuery(node[0].form); + if (node.data('context') !== undefined) { + form = form.find(node.data('context')) + } + let send_vars = form.serializeArray(); send_vars.push({ name: 'request', value: input.term -- GitLab