chore(release): merge dev to main #111

Merged
jmiller merged 14 commits from dev into main 2026-05-30 16:30:11 +00:00
17 changed files with 107 additions and 32 deletions
+1 -1
View File
@@ -8,7 +8,7 @@
<name>Template - MokoOnyx</name>
<org>MokoConsulting</org>
<description>MokoOnyx - Joomla site template (successor to MokoCassiopeia)</description>
<version>02.11.00</version>
<version>02.11.02</version>
<license spdx="GPL-3.0-or-later">GNU General Public License v3</license>
</identity>
<governance>
+1 -1
View File
@@ -5,7 +5,7 @@
# FILE INFORMATION
# DEFGROUP: Gitea.Workflow
# INGROUP: moko-platform.Automation
# VERSION: 02.11.00
# VERSION: 02.11.02
# BRIEF: Auto-create feature branch when an issue is opened
name: "Universal: Issue Branch"
+63 -9
View File
@@ -8,21 +8,75 @@
DEFGROUP: Joomla.Template.Site
INGROUP: MokoOnyx.Documentation
PATH: ./CHANGELOG.md
VERSION: 02.11.00
VERSION: 02.11.02
BRIEF: Changelog file documenting version history of MokoOnyx
-->
# Changelog — MokoOnyx (VERSION: 02.11.00)
# Changelog — MokoOnyx (VERSION: 02.11.02)
## [Unreleased]
## [02.11.00] --- 2026-05-30
### Added
- Hero image (`hero.jpg`) to template images
- `.fa-solid`, `.fa-regular`, `.fa-brands`, `.fa-light` icon margin spacing
- `.blog-item .item-image` fixed 250px height with object-fit cover
- Hide header on home page option (`hideHeaderHome` template param)
- Hide main menu on home page option (`hideMenuHome` template param)
- Three distinct menu overrides: mainmenu (collapsible), horizontal (always visible), default (vertical)
- `<php_minimum>8.1.0</php_minimum>` to templateDetails.xml
- `<changelogurl>` support in updates.xml
- CONTRIBUTING.md with universal workflow and version policy
<<<<<<< HEAD
## [02.10.00] --- 2026-05-30
### Changed
- Release pipeline rework: independent update streams, CLI-driven workflows
- Version bumps only trigger on `src/` changes (not docs/config)
- Branch protection: CI bot only for push, force push disabled
- Auto-bump supports dev, rc, feature/*, patch/* branches
### Fixed
- Joomla update loop caused by version mismatch between ZIP and updates.xml
- Duplicate hamburger menu on mobile
- Stacked version suffixes (-dev-dev-dev)
- Template name doubling (Template - Template - MokoOnyx)
## [02.08.00] --- 2026-05-29
=======
## [02.09.03] --- 2026-05-30
## [02.09.02] --- 2026-05-30
>>>>>>> origin/main
## [02.08.00] --- 2026-05-29
## [02.08.00] --- 2026-05-29
## [02.08.00] --- 2026-05-28
All notable changes to the MokoOnyx 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).
## [02.08.01] --- 2026-05-28
### Changed
- Migrated all workflow and template paths from `.github/` to `.mokogitea/`
- Template source paths updated: `templates/gitea/` to `templates/mokogitea/`
- HCL definition files removed -- Template repos are now the canonical source
### Added
- `branch-cleanup.yml`: auto-delete merged feature branches after PR merge
### Removed
- Removed deploy-manual.yml workflow -- switching to Joomla update server method for extension distribution
- Removed deploy variables and secrets (DEV_FTP_*)
- **Theme preview removed** -- Removed unused language strings for theme preview feature (never wired into config)
- **Repo cleanup** -- Removed 38 unused files: Fredoka/Pacifico fonts, dead npm tooling (package.json, scripts/), tmp-overrides/, placeholder tests, orphaned workflow copies, stale READMEs
- **Broken font options removed** -- Removed Noto Sans and Fira Sans from font selector (CSS files never existed)
- **Docs moved to wiki** -- CONTRIBUTING.md, CODE_OF_CONDUCT.md, GOVERNANCE.md migrated to Gitea wiki
### Changed
- **repo-health.yml** -- Wiki-preferred documentation checks via Gitea API (wiki = full credit, repo file = advisory)
- **auto-release.yml Step 8b** -- Replaced inline Python with release_body_update.php CLI tool (fixes SIGPIPE exit 141)
- **pre-release.yml rewritten** -- Uses moko-platform CLI tools, PHP instead of Python, fixed broken platform detection
- **All workflow YAML files** -- Stripped non-ASCII characters (em dashes, arrows, emoji) for Gitea YAML parser compatibility
### Fixed
- **Menu icon padding removed** -- Removed hardcoded `p-2` class from all mod_menu icon spans (horizontal + mainmenu layouts); icons now inherit spacing from the parent link
- **Runner checkout failures** -- Fixed MySQL deadlocks in Gitea actions scheduler by restarting Gitea and recreating runners with --privileged flag
- **workflow_dispatch 500 error** -- Stripped UTF-8 multibyte characters from all YAML files that Gitea's Go parser rejected as control characters
+1 -1
View File
@@ -10,7 +10,7 @@
INGROUP: MokoOnyx.Governance
REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
FILE: SECURITY.md
VERSION: 02.11.00
VERSION: 02.11.02
BRIEF: Security policy and vulnerability reporting process for MokoOnyx.
PATH: /SECURITY.md
NOTE: This policy is process oriented and does not replace secure engineering practices.
@@ -11,7 +11,7 @@
* INGROUP: MokoOnyx
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: /html/com_joomgallery/category/default.php
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: Category view override — password gate then loads default_cat sub-layout
*/
@@ -11,7 +11,7 @@
* INGROUP: MokoOnyx
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: /html/com_joomgallery/category/default_cat.php
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: Category sub-layout — subcategories grid + images grid with pagination
*/
+1 -1
View File
@@ -11,7 +11,7 @@
* INGROUP: MokoOnyx
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: /html/com_joomgallery/gallery/default.php
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: Gallery view override — main image grid with masonry/justified layout
*/
+1 -1
View File
@@ -11,7 +11,7 @@
* INGROUP: MokoOnyx
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: /html/com_joomgallery/image/default.php
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: Image detail view override — single image with metadata, tags, custom fields
*/
+1 -1
View File
@@ -10,7 +10,7 @@
* INGROUP: MokoOnyx
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: /html/layouts/joomla/module/card.php
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: Custom card module chrome — renders module titles for all modules
*/
@@ -11,7 +11,7 @@
* INGROUP: MokoOnyx.Layouts
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: /src/html/layouts/mokoonyx/article-metadata.php
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: Article metadata footer layout -- renders jcfields grouped by field group
*/
+7 -2
View File
@@ -205,7 +205,10 @@ if ($this->countModules('drawer-left', true) || $this->countModules('drawer-righ
// Container
$wrapper = $this->params->get('fluidContainer') ? 'wrapper-fluid' : 'wrapper-static';
$stickyHeader = $this->params->get('stickyHeader') ? 'position-sticky sticky-top' : '';
$stickyHeader = $this->params->get('stickyHeader') ? 'position-sticky sticky-top' : '';
$isHomePage = Factory::getApplication()->getMenu()->getActive() === Factory::getApplication()->getMenu()->getDefault();
$hideHeaderHome = $isHomePage && (int) $this->params->get('hideHeaderHome', 0);
$hideMenuHome = $isHomePage && (int) $this->params->get('hideMenuHome', 0);
// Meta
$this->setMetaData('viewport', 'width=device-width, initial-scale=1');
@@ -430,6 +433,7 @@ $wa->useScript('user.js'); // js/user.js
<!-- End Google Analytics -->
<?php endif; ?>
<?php if (!$hideHeaderHome) : ?>
<header id="top" class="header container-header full-width<?php echo $stickyHeader ? ' ' . $stickyHeader : ''; ?>" role="banner">
<?php if ($this->countModules('topbar')) : ?>
@@ -493,7 +497,7 @@ $wa->useScript('user.js'); // js/user.js
</button>
<?php endif; ?>
<?php if ($this->countModules('menu', true) || $this->countModules('search', true)) : ?>
<?php if (($this->countModules('menu', true) || $this->countModules('search', true)) && !$hideMenuHome) : ?>
<div class="grid-child container-nav">
<?php // Mobile: hamburger (left) + search icon (right) on one line ?>
<div class="nav-mobile-bar d-lg-none">
@@ -521,6 +525,7 @@ $wa->useScript('user.js'); // js/user.js
</div>
<?php endif; ?>
</header>
<?php endif; ?>
<div class="site-grid">
<?php if ($this->countModules('banner', true)) : ?>
+4
View File
@@ -61,6 +61,10 @@ TPL_MOKOONYX_FONT_NOTE_TEXT="Loading fonts from external sources might be agains
; ===== Header & navigation (Theme tab) =====
TPL_MOKOONYX_STICKY_LABEL="Sticky Header"
TPL_MOKOONYX_HIDE_HEADER_HOME_LABEL="Hide Header on Home Page"
TPL_MOKOONYX_HIDE_HEADER_HOME_DESC="Hide the site header (logo, branding) on the front page only."
TPL_MOKOONYX_HIDE_MENU_HOME_LABEL="Hide Main Menu on Home Page"
TPL_MOKOONYX_HIDE_MENU_HOME_DESC="Hide the main navigation menu on the front page only."
TPL_MOKOONYX_BACKTOTOP="Back to Top"
TPL_MOKOONYX_TOC_TITLE="Table of Contents"
TPL_MOKOONYX_BACKTOTOP_LABEL="Back-to-top Link"
+4
View File
@@ -61,6 +61,10 @@ TPL_MOKOONYX_FONT_NOTE_TEXT="Loading fonts from external sources might be agains
; ===== Header & navigation (Theme tab) =====
TPL_MOKOONYX_STICKY_LABEL="Sticky Header"
TPL_MOKOONYX_HIDE_HEADER_HOME_LABEL="Hide Header on Home Page"
TPL_MOKOONYX_HIDE_HEADER_HOME_DESC="Hide the site header (logo, branding) on the front page only."
TPL_MOKOONYX_HIDE_MENU_HOME_LABEL="Hide Main Menu on Home Page"
TPL_MOKOONYX_HIDE_MENU_HOME_DESC="Hide the main navigation menu on the front page only."
TPL_MOKOONYX_BACKTOTOP="Back to Top"
TPL_MOKOONYX_TOC_TITLE="Table of Contents"
TPL_MOKOONYX_BACKTOTOP_LABEL="Back-to-top Link"
+1 -1
View File
@@ -10,7 +10,7 @@
* INGROUP: MokoOnyx.Accessibility
* REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx
* PATH: ./media/css/a11y-high-contrast.css
* VERSION: 02.11.00
* VERSION: 02.11.02
* BRIEF: High-contrast stylesheet for accessibility toolbar
*/
+10 -2
View File
@@ -23514,8 +23514,16 @@ font-size: 0.8125rem;
.fa-regular {
margin-right: 0.25rem;
}
/* pipeline test */
/* v3 test */
.blog-item .item-image {
height: 250px;
overflow: hidden;
}
.blog-item .item-image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.fa-brands {
margin-right: 0.25rem;
Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

+9 -9
View File
@@ -36,15 +36,7 @@
</server>
</updateservers>
<name>Template - MokoOnyx</name>
<<<<<<< HEAD
<version>02.11.00</version>
=======
<<<<<<< HEAD
<version>02.11.00</version>
=======
<version>02.11.00</version>
>>>>>>> origin/main
>>>>>>> origin/main
<version>02.11.02-dev</version>
<scriptfile>script.php</scriptfile>
<creationDate>2026-05-16</creationDate>
<author>Jonathan Miller || Moko Consulting</author>
@@ -246,6 +238,14 @@
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field name="hideHeaderHome" type="radio" label="TPL_MOKOONYX_HIDE_HEADER_HOME_LABEL" description="TPL_MOKOONYX_HIDE_HEADER_HOME_DESC" layout="joomla.form.field.radio.switcher" default="0" filter="integer">
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<field name="hideMenuHome" type="radio" label="TPL_MOKOONYX_HIDE_MENU_HOME_LABEL" description="TPL_MOKOONYX_HIDE_MENU_HOME_DESC" layout="joomla.form.field.radio.switcher" default="0" filter="integer">
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
<!-- Accessibility -->
<field name="theme_sep_a11y" type="spacer" label="Accessibility" hr="false" class="text fw-bold" />