From 5bad1e1c8888ad8b493fbf7599a695a05e6b1098 Mon Sep 17 00:00:00 2001 From: Stephen Abello Date: Thu, 7 Jun 2018 07:41:49 +0000 Subject: [PATCH] =?UTF-8?q?N=C2=B01476=20=20:=20Fixed=20a=20regression=20i?= =?UTF-8?q?ntroduced=20in=202.5=20where=20on=20changing=20final=20class=20?= =?UTF-8?q?on=20a=20n-n=20object=20selection=20form,=20checkboxes=20were?= =?UTF-8?q?=20lost.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SVN:trunk[5830] --- js/utils.js | 20 +++++++++++++++++-- pages/ajax.render.php | 14 ++++++++++++- .../search/searchform.class.inc.php | 20 ++++++++++--------- 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/js/utils.js b/js/utils.js index 0742a015b6..d9dc291a8b 100644 --- a/js/utils.js +++ b/js/utils.js @@ -250,7 +250,7 @@ function UpdateFileName(id, sNewFileName) { /** * Reload a search form for the specified class */ -function ReloadSearchForm(divId, sClassName, sBaseClass, sContext, sTableId) { +function ReloadSearchForm(divId, sClassName, sBaseClass, sContext, sTableId, sExtraParams) { var oDiv = $('#ds_'+divId); oDiv.block(); // deprecated in jQuery 1.8 @@ -278,7 +278,23 @@ function ReloadSearchForm(divId, sClassName, sBaseClass, sContext, sTableId) { oMap.currentId = divId; oMap._table_id_ = sTableId; oMap.action = sAction; - + if(sExtraParams['selection_mode']) + { + oMap.selection_mode = sExtraParams['selection_mode']; + } + if(sExtraParams['result_list_outer_selector']) + { + oMap.result_list_outer_selector = sExtraParams['result_list_outer_selector']; + } + if(sExtraParams['cssCount']) + { + oMap.css_count = sExtraParams['cssCount']; + $(sExtraParams['cssCount']).val(0).trigger('change'); + } + if(sExtraParams['table_inner_id']) + { + oMap.table_inner_id = sExtraParams['table_inner_id']; + } $.post(GetAbsoluteUrlAppRoot()+'pages/ajax.render.php?'+sContext, oMap, function (data) { oDiv.empty(); diff --git a/pages/ajax.render.php b/pages/ajax.render.php index 773f722ede..01d08f096f 100644 --- a/pages/ajax.render.php +++ b/pages/ajax.render.php @@ -861,9 +861,21 @@ try $currentId = utils::ReadParam('currentId', ''); $sTableId = utils::ReadParam('_table_id_', null, false, 'raw_data'); $sAction = utils::ReadParam('action', ''); + $sSelectionMode = utils::ReadParam('selection_mode', null,false,'raw_data'); + $sResultListOuterSelector = utils::ReadParam('result_list_outer_selector', null,false,'raw_data'); + $scssCount = utils::ReadParam('css_count', null,false,'raw_data'); + $sTableInnerId = utils::ReadParam('table_inner_id', null,false,'raw_data'); + $oFilter = new DBObjectSearch($sClass); $oSet = new CMDBObjectSet($oFilter); - $sHtml = cmdbAbstractObject::GetSearchForm($oPage, $oSet, array('currentId' => $currentId, 'baseClass' => $sRootClass, 'action' => $sAction, 'table_id' => $sTableId)); + $sHtml = cmdbAbstractObject::GetSearchForm($oPage, $oSet, array('currentId' => $currentId, + 'baseClass' => $sRootClass, + 'action' => $sAction, + 'table_id' => $sTableId, + 'selection_mode' => $sSelectionMode, + 'result_list_outer_selector' => $sResultListOuterSelector, + 'cssCount' => $scssCount, + 'table_inner_id' => $sTableInnerId)); $oPage->add($sHtml); break; diff --git a/sources/application/search/searchform.class.inc.php b/sources/application/search/searchform.class.inc.php index c2b4ff284b..cf16242977 100644 --- a/sources/application/search/searchform.class.inc.php +++ b/sources/application/search/searchform.class.inc.php @@ -135,7 +135,8 @@ class SearchForm $aOptions[MetaModel::GetName($sClassName)] = "