Complete template system overhaul: CSS variables, theme management, and UI improvements #74

Merged
Copilot merged 47 commits from copilot/fix-language-constants-display into main 2026-02-07 17:49:30 +00:00
13 changed files with 23 additions and 25 deletions
Showing only changes of commit 1719d0e6fd - Show all commits

View File

@@ -1,4 +1,4 @@
<!-- Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> <!-- Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.

View File

@@ -1,4 +1,4 @@
; ; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> ; ; Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
; ;
; This file is part of a Moko Consulting project. ; This file is part of a Moko Consulting project.
; ;

View File

@@ -1,4 +1,4 @@
; ; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> ; ; Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
; ;
; This file is part of a Moko Consulting project. ; This file is part of a Moko Consulting project.
; ;

View File

@@ -1,4 +1,4 @@
; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> ; Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
; ;
; This file is part of a Moko Consulting project. ; This file is part of a Moko Consulting project.
; ;
@@ -24,7 +24,6 @@ TPL_MOKOCASSIOPEIA_FLUID="Fluid"
; ===== Custom Code tab ===== ; ===== Custom Code tab =====
TPL_MOKOCASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code" TPL_MOKOCASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code"
COM_TEMPLATES_CUSTOM_HEAD_FIELDSET_LABEL="Custom Head"
TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start" TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start"
TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the &lt;head&gt; tag" TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the &lt;head&gt; tag"
TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End" TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End"
@@ -33,14 +32,14 @@ TPL_MOKOCASSIOPEIA_OFFLINEEMBED_LABEL="Offline Page Embed Code"
TPL_MOKOCASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.<i>Use for Mailchimp code and Social Icons</i>" TPL_MOKOCASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.<i>Use for Mailchimp code and Social Icons</i>"
; ===== Drawers ===== ; ===== Drawers =====
COM_TEMPLATES_DRAWERS_FIELDSET_LABEL="Drawers" TPL_MOKOCASSIOPEIA_DRAWERS_FIELDSET_LABEL="Drawers"
TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS" TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS"
TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')." TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')."
TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS" TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS"
TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')." TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')."
; ===== Google ===== ; ===== Google =====
COM_TEMPLATES_GOOGLE_FIELDSET_LABEL="Google" TPL_MOKOCASSIOPEIA_GOOGLE_FIELDSET_LABEL="Google"
TPL_MOKOCASSIOPEIA_GOOGLE_NOTE_TEXT="<h3>PLEASE NOTE:</h3>If fields are left blank, relative Google features will not be used" TPL_MOKOCASSIOPEIA_GOOGLE_NOTE_TEXT="<h3>PLEASE NOTE:</h3>If fields are left blank, relative Google features will not be used"
TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_LABEL="Use Google Tag Manager?" TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_LABEL="Use Google Tag Manager?"
TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_DESC="Do you want to use Google Tag Manager?<br>More information on Google Tag Manager can be found <a target='_blank' href='https://support.google.com/tagmanager/answer/14842164'>here.</a>" TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_DESC="Do you want to use Google Tag Manager?<br>More information on Google Tag Manager can be found <a target='_blank' href='https://support.google.com/tagmanager/answer/14842164'>here.</a>"

View File

@@ -1,4 +1,4 @@
; ; Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> ; Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
; ;
; This file is part of a Moko Consulting project. ; This file is part of a Moko Consulting project.
; ;
@@ -12,8 +12,8 @@
; BRIEF: English (US) language strings for the MokoCassiopeia Joomla template ; BRIEF: English (US) language strings for the MokoCassiopeia Joomla template
; ;
; ===== Template meta ===== ; ===== Template meta =====
MOKOCASSIOPEIA="MOKOCASSIOPEIA Site template" MOKOCASSIOPEIA="MokoCassiopeia Site template"
TPL_MOKOCASSIOPEIA_XML_DESCRIPTION="<h3>MOKOCASSIOPEIA Template Description</h3> <p> <strong>MOKOCASSIOPEIA 3.0</strong> continues Joomlas tradition of space-themed default templates— building on the legacy of <em>Solarflare</em> (Joomla 1.0), <em>Milkyway</em> (Joomla 1.5), and <em>Protostar</em> (Joomla 3.0). </p> <p> This template is a customized fork of the <strong>Cassiopeia</strong> template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting. </p> <h4>Code Attribution</h4> <p> This template is based on the original <strong>Cassiopeia</strong> template developed by the <a href=\"https://www.joomla.org\" target=\"_blank\" rel=\"noopener\">Joomla! Project</a> and released under the GNU General Public License. </p> <p> Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards. </p> <p> It includes integration with <a href=\"https://afeld.github.io/bootstrap-toc/\" target=\"_blank\" rel=\"noopener\">Bootstrap TOC</a>, an open-source table of contents generator by A. Feld, licensed under the MIT License. </p> <p> All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable. </p>" TPL_MOKOCASSIOPEIA_XML_DESCRIPTION="<h3>MokoCassiopeia Template Description</h3> <p> <strong>MokoCassiopeia 3.0</strong> continues Joomlas tradition of space-themed default templates— building on the legacy of <em>Solarflare</em> (Joomla 1.0), <em>Milkyway</em> (Joomla 1.5), and <em>Protostar</em> (Joomla 3.0). </p> <p> This template is a customized fork of the <strong>Cassiopeia</strong> template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting. </p> <h4>Code Attribution</h4> <p> This template is based on the original <strong>Cassiopeia</strong> template developed by the <a href=\"https://www.joomla.org\" target=\"_blank\" rel=\"noopener\">Joomla! Project</a> and released under the GNU General Public License. </p> <p> Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards. </p> <p> It includes integration with <a href=\"https://afeld.github.io/bootstrap-toc/\" target=\"_blank\" rel=\"noopener\">Bootstrap TOC</a>, an open-source table of contents generator by A. Feld, licensed under the MIT License. </p> <p> All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable. </p>"
; ===== System / layout ===== ; ===== System / layout =====
TPL_MOKOCASSIOPEIA_DEVELOPMENTMODE_LABEL="Development Mode" TPL_MOKOCASSIOPEIA_DEVELOPMENTMODE_LABEL="Development Mode"
@@ -24,7 +24,6 @@ TPL_MOKOCASSIOPEIA_FLUID="Fluid"
; ===== Custom Code tab ===== ; ===== Custom Code tab =====
TPL_MOKOCASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code" TPL_MOKOCASSIOPEIA_CUSTOM_CODE_FIELDSET="Custom Code"
COM_TEMPLATES_CUSTOM_HEAD_FIELDSET_LABEL="Custom Head"
TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start" TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_LABEL="Custom Head: Start"
TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the &lt;head&gt; tag" TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_START_DESC="This content will be inserted at the beginning of the &lt;head&gt; tag"
TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End" TPL_MOKOCASSIOPEIA_CUSTOM_HEAD_END_LABEL="Custom Head: End"
@@ -33,14 +32,14 @@ TPL_MOKOCASSIOPEIA_OFFLINEEMBED_LABEL="Offline Page Embed Code"
TPL_MOKOCASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.<i>Use for Mailchimp code and Social Icons</i>" TPL_MOKOCASSIOPEIA_OFFLINEEMBED_DESC="In addition to the 'Offline message' defined in 'Global Configuration', this will be displayed on the offline page.<i>Use for Mailchimp code and Social Icons</i>"
; ===== Drawers ===== ; ===== Drawers =====
COM_TEMPLATES_DRAWERS_FIELDSET_LABEL="Drawers" TPL_MOKOCASSIOPEIA_DRAWERS_FIELDSET_LABEL="Drawers"
TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS" TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL="Drawer Left Icon CSS"
TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')." TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC="Enter the Font-Awesome class for the left drawer toggle (e.g. 'fas fa-chevron-left')."
TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS" TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL="Drawer Right Icon CSS"
TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')." TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC="Enter the Font-Awesome class for the right drawer toggle (e.g. 'fas fa-chevron-right')."
; ===== Google ===== ; ===== Google =====
COM_TEMPLATES_GOOGLE_FIELDSET_LABEL="Google" TPL_MOKOCASSIOPEIA_GOOGLE_FIELDSET_LABEL="Google"
TPL_MOKOCASSIOPEIA_GOOGLE_NOTE_TEXT="<h3>PLEASE NOTE:</h3>If fields are left blank, relative Google features will not be used" TPL_MOKOCASSIOPEIA_GOOGLE_NOTE_TEXT="<h3>PLEASE NOTE:</h3>If fields are left blank, relative Google features will not be used"
TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_LABEL="Use Google Tag Manager?" TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_LABEL="Use Google Tag Manager?"
TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_DESC="Do you want to use Google Tag Manager?<br>More information on Google Tag Manager can be found <a target='_blank' href='https://support.google.com/tagmanager/answer/14842164'>here.</a>" TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_DESC="Do you want to use Google Tag Manager?<br>More information on Google Tag Manager can be found <a target='_blank' href='https://support.google.com/tagmanager/answer/14842164'>here.</a>"

View File

@@ -1,5 +1,5 @@
<?php <?php
/* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> /* Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.

View File

@@ -1,5 +1,5 @@
<?php <?php
/* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> /* Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.

View File

@@ -1,5 +1,5 @@
<?php <?php
/* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> /* Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.

View File

@@ -3,7 +3,7 @@
* @package Joomla.Site * @package Joomla.Site
* @subpackage Templates.MokoCassiopeia * @subpackage Templates.MokoCassiopeia
* *
* @copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> * @copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
* @license GNU General Public License version 3 or later; see LICENSE.txt * @license GNU General Public License version 3 or later; see LICENSE.txt
* *
* FILE INFORMATION * FILE INFORMATION

View File

@@ -3,7 +3,7 @@
* @package Joomla.Site * @package Joomla.Site
* @subpackage Templates.MokoCassiopeia * @subpackage Templates.MokoCassiopeia
* *
* @copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> * @copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
* @license GNU General Public License version 3 or later; see LICENSE.txt * @license GNU General Public License version 3 or later; see LICENSE.txt
* *
* FILE INFORMATION * FILE INFORMATION

View File

@@ -1,5 +1,5 @@
<?php <?php
/* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> /* Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.

View File

@@ -1,5 +1,5 @@
<?php <?php
/* Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> /* Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- ========================================================================= <!-- =========================================================================
Copyright (C) 2025 Moko Consulting <hello@mokoconsulting.tech> Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
This file is part of a Moko Consulting project. This file is part of a Moko Consulting project.
@@ -37,10 +37,10 @@
</updateservers> </updateservers>
<name>mokocassiopeia</name> <name>mokocassiopeia</name>
<version>03.06.03</version> <version>03.06.03</version>
<creationDate>2025-12-23</creationDate> <creationDate>2026-01-30</creationDate>
<author>Jonathan Miller || Moko Consulting</author> <author>Jonathan Miller || Moko Consulting</author>
<authorEmail>hello@mokoconsulting.tech</authorEmail> <authorEmail>hello@mokoconsulting.tech</authorEmail>
<copyright>(C)GNU General Public License Version 3 - 2025 Moko Consulting</copyright> <copyright>(C)GNU General Public License Version 3 - 2026 Moko Consulting</copyright>
<description>TPL_MOKOCASSIOPEIA_XML_DESCRIPTION</description> <description>TPL_MOKOCASSIOPEIA_XML_DESCRIPTION</description>
<inheritable>1</inheritable> <inheritable>1</inheritable>
<files> <files>
@@ -114,7 +114,7 @@
</fieldset> </fieldset>
<!-- Google tab --> <!-- Google tab -->
<fieldset name="google"> <fieldset name="google" label="TPL_MOKOCASSIOPEIA_GOOGLE_FIELDSET_LABEL">
<field name="googletagmanager" type="radio" label="TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_LABEL" description="TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_DESC" layout="joomla.form.field.radio.switcher" filter="boolean"> <field name="googletagmanager" type="radio" label="TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_LABEL" description="TPL_MOKOCASSIOPEIA_GOOGLETAGMANAGER_DESC" layout="joomla.form.field.radio.switcher" filter="boolean">
<option value="0">JNO</option> <option value="0">JNO</option>
<option value="1">JYES</option> <option value="1">JYES</option>
@@ -134,7 +134,7 @@
</fieldset> </fieldset>
<!-- Drawers tab --> <!-- Drawers tab -->
<fieldset name="drawers"> <fieldset name="drawers" label="TPL_MOKOCASSIOPEIA_DRAWERS_FIELDSET_LABEL">
<field name="drawerLeftIcon" type="text" default="fa-solid fa-chevron-right" label="TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL" description="TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC" filter="string" /> <field name="drawerLeftIcon" type="text" default="fa-solid fa-chevron-right" label="TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_LABEL" description="TPL_MOKOCASSIOPEIA_DRAWER_LEFT_ICON_DESC" filter="string" />
<field name="drawerRightIcon" type="text" default="fa-solid fa-chevron-left" label="TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL" description="TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC" filter="string" /> <field name="drawerRightIcon" type="text" default="fa-solid fa-chevron-left" label="TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_LABEL" description="TPL_MOKOCASSIOPEIA_DRAWER_RIGHT_ICON_DESC" filter="string" />
</fieldset> </fieldset>