Remove mod_menu overrides to fix breaking menu links and language loading

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-02-27 00:25:03 +00:00
parent a3cfaca97e
commit a4463e374b
8 changed files with 48 additions and 149 deletions

View File

@@ -8,17 +8,48 @@
DEFGROUP: Joomla.Template.Site
INGROUP: MokoCassiopeia.Documentation
PATH: ./CHANGELOG.md
VERSION: 03.08.00
VERSION: 03.08.01
BRIEF: Changelog file documenting version history of MokoCassiopeia
-->
# Changelog — MokoCassiopeia (VERSION: 03.08.00)
# Changelog — MokoCassiopeia (VERSION: 03.08.01)
All notable changes to the MokoCassiopeia Joomla template are documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [03.08.01] - 2026-02-27
### Removed - Fix Breaking Overrides
**Critical fix**: Removed mod_menu override that was causing menu links to break and language strings not to load.
#### Problem
- mod_menu override files (default.php, default_component.php, default_url.php) were attempting to load menu-specific layouts that don't exist in the template
- This broke Joomla's core menu rendering system
- Menu links were not functional
- Language strings were not loading properly in menus
#### Solution
- **Removed** entire `src/templates/html/mod_menu/` directory (4 files)
- Template now uses Joomla's default menu rendering
- Custom styling can still be applied via CSS using `.mod-menu` class
- All menu functionality restored to standard Joomla behavior
#### Documentation Updates
- Updated MODULE_OVERRIDES.md: Changed count from 20 to 19 module overrides, removed mod_menu section, added note about removal
- Updated STANDARD_MODULES_README.md: Removed mod_menu documentation, renumbered remaining modules, updated file structure
- Updated testing checklists to remove mod_menu references
#### Files Removed
- `src/templates/html/mod_menu/default.php`
- `src/templates/html/mod_menu/default_component.php`
- `src/templates/html/mod_menu/default_url.php`
- `src/templates/html/mod_menu/index.html`
**Note**: This is a patch release that removes problematic overrides to restore core functionality. Menu styling via CSS remains intact.
## [03.08.00] - 2026-02-22
### Added - Community Builder Component Overrides

View File

@@ -24,7 +24,7 @@
INGROUP: MokoCassiopeia.Documentation
REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia
FILE: docs/MODULE_OVERRIDES.md
VERSION: 03.08.00
VERSION: 03.08.01
BRIEF: Comprehensive guide to MokoCassiopeia mobile-responsive module overrides
PATH: /docs/MODULE_OVERRIDES.md
-->
@@ -35,7 +35,7 @@ This document provides a comprehensive guide to all mobile-responsive module and
## Overview
MokoCassiopeia includes **20 mobile-responsive module overrides** and **7 component view overrides** designed to enhance the mobile user experience across standard Joomla, VirtueMart, Community Builder, and popular third-party extensions.
MokoCassiopeia includes **19 mobile-responsive module overrides** and **7 component view overrides** designed to enhance the mobile user experience across standard Joomla, VirtueMart, Community Builder, and popular third-party extensions.
### Key Features
@@ -132,25 +132,11 @@ Manufacturer/brand display with grid layout.
### 3. Standard Joomla & Community Builder Modules
Six essential Joomla core and Community Builder module overrides.
Five essential Joomla core and Community Builder module overrides.
**Master Documentation**: [STANDARD_MODULES_README.md](../src/templates/html/STANDARD_MODULES_README.md)
#### mod_menu
**Location**: `src/templates/html/mod_menu/`
Main navigation menu with multiple layout files.
**Features**:
- Responsive horizontal/vertical layouts
- Multi-level menu support
- Active state highlighting
- Keyboard navigation
**Files**:
- `default.php` - Main menu layout
- `default_component.php` - Component links
- `default_url.php` - External URLs
**Note**: The mod_menu override has been removed to prevent conflicts with Joomla's core menu system. Use Joomla's default menu rendering or apply custom CSS to the `.mod-menu` class for styling.
#### mod_breadcrumbs
**Location**: `src/templates/html/mod_breadcrumbs/`

View File

@@ -3,17 +3,11 @@
## Overview
This directory contains mobile-responsive overrides for standard Joomla and Community Builder modules, designed specifically for the MokoCassiopeia template.
**Note**: The mod_menu override has been removed to prevent conflicts with Joomla's core menu system. Use Joomla's default menu rendering or apply custom CSS to the `.mod-menu` class for styling.
## Standard Joomla Modules
### 1. mod_menu
Main navigation menu module with:
- Responsive navigation structure
- BEM naming for easy styling
- Support for all menu types
- Semantic HTML5 nav element
- Accessibility-friendly with ARIA labels
### 2. mod_breadcrumbs
### 1. mod_breadcrumbs
Breadcrumb navigation module featuring:
- Schema.org structured data
- Responsive breadcrumb trail
@@ -21,7 +15,7 @@ Breadcrumb navigation module featuring:
- Active page highlighting
- Touch-friendly links
### 3. mod_login
### 2. mod_login
User login form module with:
- Login and logout states
- Two-factor authentication support
@@ -31,7 +25,7 @@ User login form module with:
- Touch-friendly form inputs (48px on mobile)
- 16px input font (prevents iOS zoom)
### 4. mod_articles_latest
### 3. mod_articles_latest
Latest articles display module offering:
- Responsive article cards
- Optional metadata display (author, date, category, hits)
@@ -42,7 +36,7 @@ Latest articles display module offering:
## Community Builder Modules
### 5. mod_cblogin
### 4. mod_cblogin
Community Builder login module with:
- Avatar display in logged-in state
- Profile link button
@@ -52,7 +46,7 @@ Community Builder login module with:
- Registration link
- Pre/post text support
### 6. mod_comprofilerOnline
### 5. mod_comprofilerOnline
Community Builder online users module featuring:
- Online user count display
- Members vs. guests breakdown
@@ -143,11 +137,6 @@ All modules include:
```
src/templates/html/
├── mod_menu/
│ ├── default.php
│ ├── default_url.php
│ ├── default_component.php
│ └── index.html
├── mod_breadcrumbs/
│ ├── default.php
│ └── index.html
@@ -217,7 +206,7 @@ Each PHP file can be modified to adjust HTML structure while maintaining mobile
- [ ] Verify ARIA labels
### Module-Specific Testing
- [ ] mod_menu: Test menu types and levels
- [ ] mod_breadcrumbs: Test breadcrumb trail on nested pages
- [ ] mod_breadcrumbs: Verify breadcrumb trail accuracy
- [ ] mod_login: Test login/logout flows, 2FA
- [ ] mod_articles_latest: Check various parameter combinations

View File

@@ -1,40 +0,0 @@
<?php
/**
* @package Joomla.Site
* @subpackage mod_menu
*
* @copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* Mobile responsive override for mod_menu module
*/
defined('_JEXEC') or die;
use Joomla\CMS\Helper\ModuleHelper;
$id = '';
if ($tagId = $params->get('tag_id', '')) {
$id = ' id="' . $tagId . '"';
}
// The menu class is deprecated. Use mod-menu instead
$moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx', ''), ENT_COMPAT, 'UTF-8');
// Add responsive wrapper class
$wrapperClass = 'mod-menu mod-menu-responsive ' . $moduleclass_sfx;
if ($params->get('layout', 'default') === 'default') {
$wrapperClass .= ' mod-menu--default';
}
?>
<nav class="<?php echo $wrapperClass; ?>"<?php echo $id; ?> aria-label="<?php echo htmlspecialchars($module->title, ENT_COMPAT, 'UTF-8'); ?>">
<?php if ($params->get('showHeading', 0)) : ?>
<h<?php echo $params->get('heading', 3); ?> class="mod-menu__heading">
<?php echo $module->title; ?>
</h<?php echo $params->get('heading', 3); ?>>
<?php endif; ?>
<?php require ModuleHelper::getLayoutPath('mod_menu', $params->get('layout', 'default') . '_' . $params->get('menutype')); ?>
</nav>

View File

@@ -1,14 +0,0 @@
<?php
/**
* @package Joomla.Site
* @subpackage mod_menu
*
* @copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* Mobile responsive component for mod_menu
*/
defined('_JEXEC') or die;
?>
<span class="mod-menu__separator"><?php echo $item->title; ?></span>

View File

@@ -1,52 +0,0 @@
<?php
/**
* @package Joomla.Site
* @subpackage mod_menu
*
* @copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* Mobile responsive menu list for mod_menu
*/
defined('_JEXEC') or die;
use Joomla\CMS\HTML\HTMLHelper;
$attributes = [];
if ($item->anchor_title) {
$attributes['title'] = $item->anchor_title;
}
if ($item->anchor_css) {
$attributes['class'] = $item->anchor_css;
}
if ($item->anchor_rel) {
$attributes['rel'] = $item->anchor_rel;
}
$linktype = $item->title;
if ($item->menu_image) {
if ($item->menu_image_css) {
$image_attributes['class'] = $item->menu_image_css;
$linktype = HTMLHelper::_('image', $item->menu_image, $item->title, $image_attributes);
} else {
$linktype = HTMLHelper::_('image', $item->menu_image, $item->title);
}
if ($item->params->get('menu_text', 1)) {
$linktype .= '<span class="image-title">' . $item->title . '</span>';
}
}
if ($item->browserNav == 1) {
$attributes['target'] = '_blank';
} elseif ($item->browserNav == 2) {
$options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes';
$attributes['onclick'] = "window.open(this.href, 'targetWindow', '" . $options . "'); return false;";
}
echo HTMLHelper::_('link', $item->flink, $linktype, $attributes);

View File

@@ -1 +0,0 @@
<!DOCTYPE html><html><head><title></title></head><body></body></html>

View File

@@ -25,7 +25,7 @@
DEFGROUP: Joomla
INGROUP: MokoCassiopeia
PATH: templates/mokocassiopeia/templateDetails.xml
VERSION: 03.06.03
VERSION: 03.08.01
BRIEF: Template manifest XML file for MokoCassiopeia
=========================================================================
-->
@@ -36,8 +36,8 @@
</server>
</updateservers>
<name>MokoCassiopeia</name>
<version>03.06.03</version>
<creationDate>2026-01-30</creationDate>
<version>03.08.01</version>
<creationDate>2026-02-27</creationDate>
<author>Jonathan Miller || Moko Consulting</author>
<authorEmail>hello@mokoconsulting.tech</authorEmail>
<copyright>(C)GNU General Public License Version 3 - 2026 Moko Consulting</copyright>