From 0573e0593ae6cc51d81e89c9718f776b71ad79c0 Mon Sep 17 00:00:00 2001 From: Samuel Georges Date: Sat, 30 Jul 2016 11:46:36 +1000 Subject: [PATCH] Search should persist across pagination The search term is now reset only when the record finder is first opened Fixes #2161 --- modules/backend/formwidgets/RecordFinder.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/modules/backend/formwidgets/RecordFinder.php b/modules/backend/formwidgets/RecordFinder.php index 8b40c3ed3..3017dd78a 100644 --- a/modules/backend/formwidgets/RecordFinder.php +++ b/modules/backend/formwidgets/RecordFinder.php @@ -130,6 +130,8 @@ class RecordFinder extends FormWidgetBase $this->searchWidget = $this->makeSearchWidget(); $this->searchWidget->bindToController(); + $this->listWidget->setSearchTerm($this->searchWidget->getActiveTerm()); + /* * Link the Search Widget to the List Widget */ @@ -137,8 +139,6 @@ class RecordFinder extends FormWidgetBase $this->listWidget->setSearchTerm($this->searchWidget->getActiveTerm()); return $this->listWidget->onRefresh(); }); - - $this->searchWidget->setActiveTerm(null); } } @@ -237,6 +237,15 @@ class RecordFinder extends FormWidgetBase public function onFindRecord() { $this->prepareVars(); + + /* + * Purge the search term stored in session + */ + if ($this->searchWidget) { + $this->listWidget->setSearchTerm(null); + $this->searchWidget->setActiveTerm(null); + } + return $this->makePartial('recordfinder_form'); }