From 15ee4ffd32b653edecb11a8c0ed93cb47d51c081 Mon Sep 17 00:00:00 2001 From: Tim Otten Date: Thu, 4 Feb 2021 14:14:35 -0800 Subject: [PATCH] Nav Menu Editor - Use API for listing/searching available permissions --- CRM/Admin/Form/Navigation.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CRM/Admin/Form/Navigation.php b/CRM/Admin/Form/Navigation.php index 0b21a818d9..3249beed8b 100644 --- a/CRM/Admin/Form/Navigation.php +++ b/CRM/Admin/Form/Navigation.php @@ -55,9 +55,13 @@ class CRM_Admin_Form_Navigation extends CRM_Admin_Form { $this->add('text', 'icon', ts('Icon'), ['class' => 'crm-icon-picker', 'title' => ts('Choose Icon'), 'allowClear' => TRUE]); + $getPerms = (array) \Civi\Api4\Permission::get(0) + ->addWhere('group', 'IN', ['civicrm', 'cms', 'const']) + ->setOrderBy(['group' => 'ASC', 'name' => 'ASC']) + ->execute(); $permissions = []; - foreach (CRM_Core_Permission::basicPermissions(TRUE, TRUE) as $id => $vals) { - $permissions[] = ['id' => $id, 'text' => $vals[0], 'description' => (array) CRM_Utils_Array::value(1, $vals)]; + foreach ($getPerms as $perm) { + $permissions[] = ['id' => $perm['name'], 'text' => $perm['title'], 'description' => $perm['description'] ?? '']; } $this->add('select2', 'permission', ts('Permission'), $permissions, FALSE, ['placeholder' => ts('Unrestricted'), 'class' => 'huge', 'multiple' => TRUE] -- 2.25.1