From 237f6530b6ec6e98ea70f26741318f5d55c55325 Mon Sep 17 00:00:00 2001 From: Paolo Date: Fri, 2 Mar 2018 12:53:37 +0100 Subject: [PATCH] FilterWidget bugfix: correct generation of array columnsAliases in method sortSelectedFields of controller system/Filters --- application/controllers/system/Filters.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/application/controllers/system/Filters.php b/application/controllers/system/Filters.php index fe8ecaaec..cda080a46 100644 --- a/application/controllers/system/Filters.php +++ b/application/controllers/system/Filters.php @@ -74,25 +74,33 @@ class Filters extends VileSci_Controller $allSelectedFields = $_SESSION[self::SESSION_NAME]['allSelectedFields']; $allColumnsAliases = $_SESSION[self::SESSION_NAME]['allColumnsAliases']; + $json->selectedFields = $_SESSION[self::SESSION_NAME]['selectedFields']; + $json->columnsAliases = $_SESSION[self::SESSION_NAME]['columnsAliases']; + if (isset($selectedFieldsLst) && is_array($selectedFieldsLst)) { - $json->selectedFields = $_SESSION[self::SESSION_NAME]['selectedFields'] = $selectedFieldsLst; + $json->selectedFields = $selectedFieldsLst; + $json->columnsAliases = array(); for ($i = 0; $i < count($json->selectedFields); $i++) { $pos = array_search($json->selectedFields[$i], $allSelectedFields); + $json->columnsAliases[$i] = $json->selectedFields[$i]; + if ($pos !== false) { - $json->columnsAliases[] = $json->selectedFields[$i]; if ($allColumnsAliases != null && is_array($allColumnsAliases)) { - $json->columnsAliases[] = $allColumnsAliases[$pos]; + $json->columnsAliases[$i] = $allColumnsAliases[$pos]; } } } } + $_SESSION[self::SESSION_NAME]['selectedFields'] = $json->selectedFields; + $_SESSION[self::SESSION_NAME]['columnsAliases'] = $json->columnsAliases; + $this->output->set_content_type('application/json')->set_output(json_encode($json)); }