From 692afac9a7d9a98614065f4d34d913f3c3fdada8 Mon Sep 17 00:00:00 2001 From: chmst Date: Mon, 5 Aug 2024 21:49:15 +0200 Subject: [PATCH 1/6] Avoid strlen for admin submenu items --- .../components/com_menus/src/Model/MenutypesModel.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/administrator/components/com_menus/src/Model/MenutypesModel.php b/administrator/components/com_menus/src/Model/MenutypesModel.php index 680a79e965585..d40f8e180b41f 100644 --- a/administrator/components/com_menus/src/Model/MenutypesModel.php +++ b/administrator/components/com_menus/src/Model/MenutypesModel.php @@ -407,9 +407,12 @@ protected function getTypeOptionsFromManifest($component) $request['view'] = (string) $attributes->view; $request['layout'] = (string) $attributes->layout; $request['sub'] = (string) $attributes->sub; + + // Remove empty values. + $request = array_filter($request); } - $o->request = array_filter($request, 'strlen'); + $o->request = $request; $options[] = new CMSObject($o); // Do not repeat the default view link (index.php?option=com_abc). From ba979db73ff7a3be4240b122d3f4a374728593e1 Mon Sep 17 00:00:00 2001 From: chmst Date: Wed, 7 Aug 2024 10:55:02 +0200 Subject: [PATCH 2/6] as requestd --- .../com_menus/src/Model/MenutypesModel.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/administrator/components/com_menus/src/Model/MenutypesModel.php b/administrator/components/com_menus/src/Model/MenutypesModel.php index d40f8e180b41f..c875d0f1cc5a0 100644 --- a/administrator/components/com_menus/src/Model/MenutypesModel.php +++ b/administrator/components/com_menus/src/Model/MenutypesModel.php @@ -407,12 +407,16 @@ protected function getTypeOptionsFromManifest($component) $request['view'] = (string) $attributes->view; $request['layout'] = (string) $attributes->layout; $request['sub'] = (string) $attributes->sub; - - // Remove empty values. - $request = array_filter($request); } - $o->request = $request; + $o->request = array_filter($request, function($value) { + if (is_array($value)) { + return !empty($value); + } else { + return strlen($value); + } + }); + $options[] = new CMSObject($o); // Do not repeat the default view link (index.php?option=com_abc). From 363f44e0a59c3e4b4cb82350012f0d0bc7a66396 Mon Sep 17 00:00:00 2001 From: Allon Moritz Date: Wed, 7 Aug 2024 15:11:44 +0200 Subject: [PATCH 3/6] Update administrator/components/com_menus/src/Model/MenutypesModel.php Co-authored-by: Quy --- .../components/com_menus/src/Model/MenutypesModel.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/administrator/components/com_menus/src/Model/MenutypesModel.php b/administrator/components/com_menus/src/Model/MenutypesModel.php index c875d0f1cc5a0..5a0240f485214 100644 --- a/administrator/components/com_menus/src/Model/MenutypesModel.php +++ b/administrator/components/com_menus/src/Model/MenutypesModel.php @@ -412,8 +412,9 @@ protected function getTypeOptionsFromManifest($component) $o->request = array_filter($request, function($value) { if (is_array($value)) { return !empty($value); - } else { - return strlen($value); + } + + return strlen($value); } }); From 87df3813083fe0c67df8821ed152b9722857eb88 Mon Sep 17 00:00:00 2001 From: Quy Date: Wed, 7 Aug 2024 08:45:54 -0700 Subject: [PATCH 4/6] Update administrator/components/com_menus/src/Model/MenutypesModel.php --- administrator/components/com_menus/src/Model/MenutypesModel.php | 1 - 1 file changed, 1 deletion(-) diff --git a/administrator/components/com_menus/src/Model/MenutypesModel.php b/administrator/components/com_menus/src/Model/MenutypesModel.php index 5a0240f485214..242419c9d9eaf 100644 --- a/administrator/components/com_menus/src/Model/MenutypesModel.php +++ b/administrator/components/com_menus/src/Model/MenutypesModel.php @@ -415,7 +415,6 @@ protected function getTypeOptionsFromManifest($component) } return strlen($value); - } }); $options[] = new CMSObject($o); From 88e9534f65218a13215aa8a7315345979866728a Mon Sep 17 00:00:00 2001 From: Quy Date: Wed, 7 Aug 2024 09:03:29 -0700 Subject: [PATCH 5/6] Update administrator/components/com_menus/src/Model/MenutypesModel.php --- administrator/components/com_menus/src/Model/MenutypesModel.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/administrator/components/com_menus/src/Model/MenutypesModel.php b/administrator/components/com_menus/src/Model/MenutypesModel.php index 242419c9d9eaf..7687fccc756c3 100644 --- a/administrator/components/com_menus/src/Model/MenutypesModel.php +++ b/administrator/components/com_menus/src/Model/MenutypesModel.php @@ -409,7 +409,7 @@ protected function getTypeOptionsFromManifest($component) $request['sub'] = (string) $attributes->sub; } - $o->request = array_filter($request, function($value) { + $o->request = array_filter($request, function ($value) { if (is_array($value)) { return !empty($value); } From 07cd00bd5878a617c46bcacf68214a1b8acd5a21 Mon Sep 17 00:00:00 2001 From: Robert Deutz Date: Thu, 31 Oct 2024 12:22:20 +0100 Subject: [PATCH 6/6] Update MenutypesModel.php --- .../components/com_menus/src/Model/MenutypesModel.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/administrator/components/com_menus/src/Model/MenutypesModel.php b/administrator/components/com_menus/src/Model/MenutypesModel.php index 0de292f026ee2..b5f186c9dceb6 100644 --- a/administrator/components/com_menus/src/Model/MenutypesModel.php +++ b/administrator/components/com_menus/src/Model/MenutypesModel.php @@ -412,11 +412,11 @@ protected function getTypeOptionsFromManifest($component) } $o->request = array_filter($request, function ($value) { - if (is_array($value)) { + if (\is_array($value)) { return !empty($value); } - return strlen($value); + return \strlen($value); }); $options[] = new CMSObject($o);