From cbcc2fa56554cf45313ade4c9c8a07391ca4dc3d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20Gro=C3=9Fe?= <grosse@cosmocode.de>
Date: Thu, 22 Mar 2018 13:58:54 +0100
Subject: [PATCH] feat(search): add origin page as parameter

There are several use cases in which knowing the page where a search
request originated would be useful. This commit adds a `from` parameter
which provides that information.
---
 inc/Ui/Search.php | 3 ++-
 inc/template.php  | 2 ++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/inc/Ui/Search.php b/inc/Ui/Search.php
index 478e3231a..2e09ee935 100644
--- a/inc/Ui/Search.php
+++ b/inc/Ui/Search.php
@@ -63,10 +63,11 @@ class Search extends Ui
      */
     protected function getSearchFormHTML($query)
     {
-        global $lang;
+        global $lang, $ID;
 
         $searchForm = (new Form())->attrs(['method' => 'get'])->addClass('search-results-form');
         $searchForm->setHiddenField('do', 'search');
+        $searchForm->setHiddenField('from', $ID);
         $searchForm->addFieldsetOpen()->addClass('search-results-form__fieldset');
         $searchForm->addTextInput('id')->val($query);
         $searchForm->addButton('', $lang['btn_search'])->attr('type', 'submit');
diff --git a/inc/template.php b/inc/template.php
index abb4d8267..c5501f545 100644
--- a/inc/template.php
+++ b/inc/template.php
@@ -656,6 +656,7 @@ function tpl_searchform($ajax = true, $autocomplete = true) {
     global $lang;
     global $ACT;
     global $QUERY;
+    global $ID;
 
     // don't print the search form if search action has been disabled
     if(!actionOK('search')) return false;
@@ -668,6 +669,7 @@ function tpl_searchform($ajax = true, $autocomplete = true) {
         'id' => 'dw__search',
     ]);
     $searchForm->setHiddenField('do', 'search');
+    $searchForm->setHiddenField('from', $ID);
     $searchForm->addTextInput('id')
         ->addClass('edit')
         ->attrs([
-- 
GitLab