From e0b1c78eef7d904c564e8528a825d98cf9bd10a7 Mon Sep 17 00:00:00 2001 From: Paolo Date: Mon, 10 Dec 2018 12:24:28 +0100 Subject: [PATCH] - Bugfix: fixed method generateFilterMenu of FiltersLib to generate the correct link for menu entries - Bugfix: system/Filters_model is loaded in every methods of FiltersLib and FilterWidget where it is used --- application/libraries/FiltersLib.php | 6 +++++- application/widgets/FilterWidget.php | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/application/libraries/FiltersLib.php b/application/libraries/FiltersLib.php index 1e3a591ac..48f6c413a 100644 --- a/application/libraries/FiltersLib.php +++ b/application/libraries/FiltersLib.php @@ -313,6 +313,8 @@ class FiltersLib if ($datasetQuery != null) { + $this->_ci->load->model('system/Filters_model', 'FiltersModel'); + // Execute the given SQL statement suppressing error messages $dataset = @$this->_ci->FiltersModel->execReadOnlyQuery($datasetQuery); } @@ -715,7 +717,7 @@ class FiltersLib $filter->description[0], // description sprintf( '%s?%s=%s', - site_url($this->_ci->router->directory.$this->_ci->router->class.'/'.$this->_ci->router->method), + site_url($navigationPage), self::FILTER_ID, $filter->filter_id ) // link @@ -816,6 +818,8 @@ class FiltersLib { $condition = ''; // starts building the condition + $this->_ci->load->model('system/Filters_model', 'FiltersModel'); + // "operation" is a required property for the applied filter definition if (!isEmptyString($filterDefinition->operation)) { diff --git a/application/widgets/FilterWidget.php b/application/widgets/FilterWidget.php index b8e55b587..1ae29cb42 100644 --- a/application/widgets/FilterWidget.php +++ b/application/widgets/FilterWidget.php @@ -312,6 +312,8 @@ class FilterWidget extends Widget { $this->_formatDataset($dataset); // marks rows using markRow and format rowns using formatRow + $this->load->model('system/Filters_model', 'FiltersModel'); + // Set the new dataset and its attributes in the session $this->filterslib->setElementSession(FiltersLib::SESSION_METADATA, $this->FiltersModel->getExecutedQueryMetaData()); $this->filterslib->setElementSession(FiltersLib::SESSION_ROW_NUMBER, count($dataset->retval)); @@ -350,6 +352,8 @@ class FilterWidget extends Widget { $this->_formatDataset($dataset); // marks rows using markRow and format rowns using formatRow + $this->load->model('system/Filters_model', 'FiltersModel'); + // Stores an array that contains all the data useful for $this->filterslib->setSession( array(