From fffcd35b9d584ced2a4e7d72a05349c116c98dd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=B4me=20Chilliet?= <come@opensides.be> Date: Mon, 13 May 2019 10:19:49 +0200 Subject: [PATCH] :ambulance: fix(core) Fix subtabs attribute ACL search Will be used by servicesManagement so that dashboard can search for services attribute without crash. issue #5967 --- include/class_config.inc | 2 +- include/class_userinfo.inc | 8 +++++--- plugins/config/class_pluginsConfigInLdap.inc | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/include/class_config.inc b/include/class_config.inc index c28ecded6..c07ae223b 100644 --- a/include/class_config.inc +++ b/include/class_config.inc @@ -803,7 +803,7 @@ class config if (isset($plInfo['plObjectType'])) { $entry = array('CLASS' => $class,'NAME' => $plInfo['plShortName']); if (isset($plInfo['plSubTabs'])) { - $entry['SUBTABS'] = strtoupper($plInfo['plSubTabs']).'TABS'; + $entry['SUBTABS'] = strtoupper($plInfo['plSubTabs']); } foreach ($plInfo['plObjectType'] as $key => $value) { if (is_numeric($key)) { diff --git a/include/class_userinfo.inc b/include/class_userinfo.inc index da2a32c0d..38c1d7615 100644 --- a/include/class_userinfo.inc +++ b/include/class_userinfo.inc @@ -1029,21 +1029,23 @@ class userinfo if (is_array($type)) { /* Used for recursion through subtabs */ - $tabs = $type; + $prefix = ''; + $tabs = $type; } else { /* Usual workflow */ $infos = objects::infos($type); + $prefix = $infos['aclCategory'].'/'; $tabs = $config->data['TABS'][$infos['tabGroup']]; } foreach ($tabs as $tab) { $acls = pluglist::pluginInfos($tab['CLASS'])['plProvidedAcls']; if (isset($acls[$attribute])) { - return $infos['aclCategory'].'/'.$tab['CLASS']; + return $prefix.$tab['CLASS']; } if (isset($tab['SUBTABS'])) { $acl = $this->getAttributeCategory($config->data['TABS'][$tab['SUBTABS']], $attribute); if ($acl !== FALSE) { - return $acl; + return $prefix.$acl; } } } diff --git a/plugins/config/class_pluginsConfigInLdap.inc b/plugins/config/class_pluginsConfigInLdap.inc index c797cf0b7..676fa318d 100644 --- a/plugins/config/class_pluginsConfigInLdap.inc +++ b/plugins/config/class_pluginsConfigInLdap.inc @@ -29,7 +29,7 @@ class pluginsConfigInLdap extends multiPlugin 'plDescription' => _('Configuration for plugins'), 'plPriority' => 20, 'plObjectType' => array('configuration'), - 'plSubTabs' => 'smallConfig', + 'plSubTabs' => 'SMALLCONFIGTABS', 'plProvidedAcls' => array() ); -- GitLab