From 01056afe74749dd4a07ea1c9dc87eb9079f81780 Mon Sep 17 00:00:00 2001 From: Jonathan Miller Date: Thu, 4 Jun 2026 20:33:56 -0500 Subject: [PATCH] fix: menu icons use FA6 for unmapped classes, query all MokoWaaS submenu items - Helpdesk: fa-solid fa-handshake-angle (was icon-headphones, unmapped) - .htaccess: fa-solid fa-file-code (was icon-file-code, unmapped) - Query now finds ALL submenu items under the MokoWaaS parent menu, including those linking to com_plugins, com_installer, com_checkin, com_cache Authored-by: Moko Consulting Co-Authored-By: Claude Opus 4.6 (1M context) --- src/script.php | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/script.php b/src/script.php index 85da88e6..49481545 100644 --- a/src/script.php +++ b/src/script.php @@ -980,8 +980,8 @@ class Pkg_MokowaasInstallerScript $iconMap = [ 'class:cogs' => 'icon-cogs', 'class:puzzle-piece' => 'icon-puzzle-piece', - 'class:headphones' => 'icon-headphones', - 'class:file-code' => 'icon-file-code', + 'class:headphones' => 'fa-solid fa-handshake-angle', + 'class:file-code' => 'fa-solid fa-file-code', 'class:lock' => 'icon-lock', 'class:shield-alt' => 'icon-shield-alt', 'class:database' => 'icon-database', @@ -992,10 +992,15 @@ class Pkg_MokowaasInstallerScript 'class:bolt' => 'icon-bolt', ]; + // Find all MokoWaaS component submenu items (including those linking to other components) $db->setQuery( - "SELECT id, img, params FROM #__menu" - . " WHERE client_id = 1 AND level >= 2" - . " AND link LIKE '%com_mokowaas%'" + $db->getQuery(true) + ->select(['m.id', 'm.img', 'm.params']) + ->from($db->quoteName('#__menu', 'm')) + ->where('m.client_id = 1') + ->where('m.level >= 2') + ->where('m.parent_id IN (SELECT id FROM ' . $db->quoteName('#__menu') + . ' WHERE client_id = 1 AND level = 1 AND link LIKE ' . $db->quote('%com_mokowaas%') . ')') ); foreach ($db->loadObjectList() as $item)