Commit Graph

43 Commits

Author SHA1 Message Date
7f52275e47 chore(release): bump version to 03.09.04
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:33:03 -05:00
c99eba5c01 chore(release): v03.09.03 — search 3-col layout, version sync
Search position now 25% width (3 cols), menu fills remaining space.
All VERSION headers synced to 03.09.03 across README, docs, manifests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:24:20 -05:00
c64aeaaf4f Search position 3 columns, menu takes remaining space
On desktop, .container-search is now flex: 0 0 25% (3 of 12 cols)
and the menu nav gets flex: 1 1 0% to fill the rest. Bump version
to 03.09.03.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:20:57 -05:00
79e7922311 chore(release): bump version to 03.09.02
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:49:54 -05:00
90d68db350 Align template version to branch: 03.09.01
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 14:09:07 -05:00
28bf07a443 Add accessibility toolbar with 6 toggleable options
Adds a floating accessibility toolbar to the template with individually
enable/disable options: text resize, color inversion, high contrast,
highlight links, readable font, and pause animations. Each option has
an admin toggle in the Theme tab and persists visitor preferences in
localStorage. Also fixes count() on null in mod_login override.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 11:21:22 -05:00
d98e42a936 Development mode controls CSS/JS minification
- When dev mode OFF (default): loads template.min.css,
  template.min.js, minified theme CSS, and minified FA7
- When dev mode ON: loads unminified sources for debugging
- Uncommented developmentmode field in templateDetails.xml
  with default set to 0 (off) for production use
- Updated language strings to describe minification behavior
- Resolved hero-card-max-width to 800px

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 22:01:45 -05:00
96161f34ae Add favicon configuration with auto-generation from PNG upload
- New "Favicon" tab in template config with media picker for PNG upload
- helper/favicon.php generates all standard sizes from source PNG using GD:
  - favicon.ico (16x16 + 32x32 embedded)
  - apple-touch-icon.png (180x180)
  - favicon-32x32.png, favicon-16x16.png
  - android-chrome-192x192.png, android-chrome-512x512.png
  - site.webmanifest for PWA icon discovery
- Generated files cached in images/favicons/ with timestamp checking
- Link tags auto-injected in <head> when favicon source is configured
- Language strings added for en-GB and en-US

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 13:45:34 -05:00
9b9bbf7d57 Sync all file VERSION headers to 03.09.02
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 16:54:44 -05:00
735ec95077 Update templateDetails.xml 2026-03-26 17:42:17 -05:00
0612a181fd feat: add Brand Showcase admin tab with interactive color sampler
New "Brand Showcase" tab in Joomla template configuration embeds
brand-showcase.html — features color system gradients with hover-to-sample
pixel picker, branded nav, typography, buttons, badges, alerts, tables,
forms, cards, accordion, and tabs. Light/dark toggle included.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 17:37:08 -05:00
b25a8f58d8 feat: hero variants, block colors, theme preview tab, CSS var sync on upgrade
- Add .hero#primary / .hero#secondary CSS variant system to template.css
- Add :nth-child() block color palette for top-a/b, bottom-a/b positions
- Add named per-module overrides (#block-highlight, #block-cta, #block-alert)
- Add all hero + block CSS variables to light/dark custom palette templates
- Add theme-test.html with full visual CSS variable reference + color test
- Add "Theme Preview" tab to admin config with embedded iframe of test sheet
- Add script.php install/update script (Joomla 5/6 compatible)
- Add sync_custom_vars.php — detects missing vars in user palettes on upgrade
- Add en-GB and en-US language strings for new admin config fields
- Update CSS_VARIABLES.md and CHANGELOG.md
- Bump version to 03.09.02

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 12:44:46 -05:00
079c4f4a5a Add CSS Variables tab documentation for all promoted Bootstrap components
Add LABEL/DESC language strings (en-US + en-GB) for all 17 Bootstrap
component variable groups now living in the :root theme files:

accordion, alert, badge, backdrop, breadcrumb, dropdown, list-group,
modal, nav-tabs, nav-pills, pagination, popover, progress, spinner,
table, toast, tooltip

Each section documents variables with HTML subheadings (Dimensions,
Colours, Typography, Stacking, Animation) and <code> tags for every
variable name. British English spellings used throughout en-GB.

Adds 34 new lines per language file (17 LABEL + 17 DESC pairs, 80
CSS_VARS_* keys total). XML fields were already present from the
prior migration commit.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 14:03:05 -05:00
b043ccc099 Promote offcanvas variables to :root theme files and document in CSS Variables tab
- Move --offcanvas-* definitions from component-scoped .offcanvas selector in
  template.css into :root[data-bs-theme] blocks in light.standard.css and
  dark.standard.css so they are overridable via user.css at root level
- Fix two bugs in the old definitions: --offcanvas-bg was incorrectly set to
  var(--body-color) (text colour); corrected to var(--body-bg); and
  --offcanvas-color had a spurious 'color:' prefix
- Dark theme uses a heavier box-shadow (0.3 alpha) for better depth perception
- Add css_vars_offcanvas field to templateDetails.xml CSS Variables tab
- Add en-US and en-GB language strings for the new Offcanvas Panel section
- Rebuild all .min CSS files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 22:54:55 -05:00
57b4c3240e Add hero/banner-overlay CSS variables and wire template.css
- Add HERO / BANNER OVERLAY section to light.standard.css and dark.standard.css:
  --hero-height, --hero-color, --hero-bg-repeat, --hero-bg-attachment,
  --hero-bg-position, --hero-bg-size, --hero-border-bottom,
  --hero-overlay-bg (light: 0.1 alpha / dark: 0.3 alpha),
  --hero-overlay-padding, --hero-overlay-text-align, --hero-overlay-text-color
- Replace all hardcoded values in .container-banner .banner-overlay and
  .overlay with var() references (with fallbacks)
- Fix background-position: comma syntax → correct space-separated single-bg value
- Add css_vars_hero note field to CSS Variables tab in templateDetails.xml
- Add TPL_MOKOCASSIOPEIA_CSS_VARS_HERO_LABEL/DESC to en-US and en-GB
- Regenerate .min files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:51:09 -05:00
f0e7ccac6d Add minify build script and generate .min CSS/JS; rename position to brand-aside
Build tooling:
- Add package.json with clean-css and terser dev dependencies
- Add scripts/minify.js: reads joomla.asset.json, auto-detects source/.min
  pairs, and minifies all template-owned CSS and JS files
- Add node_modules/ to .gitignore

Generated .min files (all 6 manifest pairs):
- css/template.min.css      (17.8% saved)
- css/editor.min.css        (49.4% saved)
- css/theme/light.standard.min.css  (13.1% saved)
- css/theme/dark.standard.min.css   (14.4% saved)
- js/template.min.js        (58.2% saved)
- js/gtm.min.js             (62.3% saved)

Rename: header-aside → brand-aside (position, CSS class, language keys)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:22:09 -05:00
f0de3bf342 Add header-aside module position to the right of the logo
- New position renders inside .header-brand-wrap, right-aligned via
  margin-inline-start: auto on .container-header-aside
- CSS: .header-brand-wrap uses flexbox so logo stays left, aside floats right
- Registered in templateDetails.xml positions list
- Language strings added to both en-US and en-GB sys.ini files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:16:39 -05:00
9a1269797a Add Google Search Console verification and ensure all Google services coexist
- Add googlesitekey param to Google fieldset in templateDetails.xml
- Inject <meta name="google-site-verification"> via setMetaData() in
  index.php, component.php, and offline.php
- GTM, GA, and Search Console verification can now all be active simultaneously
- Add language strings for new field in en-US and en-GB

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:14:00 -05:00
53ad226a51 Expand CSS Variables tab to full variable reference and add custom-hero class
- Replace 8-field CSS Variables tab with 21 comprehensive sections covering
  all variables from light.standard.css and dark.standard.css
- New sections: Links, Layout & Spacing, Breakpoints, Bootstrap Semantic
  Palette, Bootstrap State Colors, Alert & List Group Colors, Standard
  Colors/Grays/Opacity, Shadows & Shadow Tokens, Buttons, Cards,
  Component & Plugin Colors, VirtueMart, Gable
- Add custom-hero class to hero.php outer div (always present)
- Both en-GB and en-US language files updated

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:01:42 -05:00
e6a0a0a81e Add CSS Variables reference tab to template options
Adds a new 'CSS Variables' tab to the template configuration with eight
documented sections (brand, typography, navigation, header background,
container backgrounds, borders/shadows, forms/focus) so site builders
can reference all available custom properties without leaving Joomla admin.

Also removes external docs links from descriptions in templateDetails.xml
and both language files, replacing them with a pointer to the new tab.
Fixes stale custom palette source paths in en-GB and en-US ini files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:43:31 -05:00
fdd0d3ff51 Ship custom palette starters and update template description
- Add src/templates/light.custom.css and dark.custom.css as starter
  palette files that ship with the template, giving users a full
  variable reference to copy and customise
- Register src/templates/ folder in templateDetails.xml <files>
- Update <description> in templateDetails.xml: correct palette source
  paths, add Custom CSS & JavaScript section (user.css / user.js),
  link docs to GitHub repo docs/ directory
- Sync en-GB and en-US tpl_mokocassiopeia.sys.ini with same changes,
  preserving British/American spelling variants; bump version to 03.09.01

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:30:06 -05:00
40cce64afc Add mod_custom hero layout override and bump version to 03.09.01
Adds src/html/mod_custom/hero.php — a banner-overlay style template
override for mod_custom, mirroring Cassiopeia's banner layout pattern.
Includes background image support via WebAssetManager and respects the
Module Manager's moduleclass_sfx field.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 18:55:43 -05:00
e0697a18d0 Update templateDetails.xml 2026-03-08 13:22:09 -05:00
2b7a2cfd1f Update templateDetails.xml 2026-03-08 13:21:31 -05:00
copilot-swe-agent[bot]
c4e8306d1b Update all documentation references to new custom palette naming
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-08 00:56:17 +00:00
copilot-swe-agent[bot]
eb5f718039 Changes before error encountered
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-08 00:24:05 +00:00
copilot-swe-agent[bot]
af1f18e720 Migrate colors directory to theme with consistent naming convention
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-08 00:21:10 +00:00
copilot-swe-agent[bot]
8159b134a5 Address final code review feedback
- Add setup notes to font CSS files about required downloads
- Restore alert-warning class for font note (important setup info)
- Fix alignment in success message border

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-07 20:53:18 +00:00
copilot-swe-agent[bot]
34057518c8 Remove Google Fonts CDN dependencies
- Update templateDetails.xml to use local font CSS files only
- Add Noto Sans and Fira Sans as local font options
- Remove Google Fonts CDN preconnect links from index.php
- Remove Google Fonts CDN preconnect links from component.php
- Remove Google Fonts CDN preconnect link from offline.php

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-07 20:43:39 +00:00
copilot-swe-agent[bot]
81b46db3dd Hardcode XML description in templateDetails.xml instead of using language constant
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 08:11:56 +00:00
copilot-swe-agent[bot]
f910e1e704 Fix language file installation paths in templateDetails.xml
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 08:07:30 +00:00
copilot-swe-agent[bot]
82427e18ca Restructure language files - move .sys.ini and .ini to same folders
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:56:01 +00:00
copilot-swe-agent[bot]
0ad1f4d77b Fix: Add language and administrator folders to templateDetails.xml files section
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:46:26 +00:00
copilot-swe-agent[bot]
bb3636a232 Fix: Correct administrator folder attribute to just "administrator"
The folder attribute should specify the base destination directory, not the
full path. Changed from folder="administrator/language" to folder="administrator"
while keeping the full source path in the language tags.

This follows Joomla's standard where:
- folder="administrator" = base destination in Joomla
- path includes full source structure from template root
- Result: files install to JOOMLA_ROOT/administrator/language/en-GB/

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:38:56 +00:00
copilot-swe-agent[bot]
8e8da2636f Fix: Correct language file paths to be relative to template root
The paths in <language> tags must be relative to the template source root
(src/), not relative to the folder attribute. The folder attribute specifies
the DESTINATION in Joomla, but file paths must point to actual source files.

Corrected paths:
- Frontend: language/en-GB/tpl_mokocassiopeia.ini (was: en-GB/...)
- Backend: administrator/language/en-GB/tpl_mokocassiopeia.sys.ini (was: en-GB/...)

This ensures Joomla can find and install the language files correctly.

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:38:15 +00:00
copilot-swe-agent[bot]
38a8b73703 Fix: Remove language and administrator folders from files section
Language files should only be declared in <languages> sections, not in
<files> section. Having them in <files> causes Joomla to copy them to
the template directory instead of the proper Joomla language directories,
resulting in language constants showing instead of translations.

Removed:
- <folder>language</folder>
- <folder>administrator</folder>

The <languages> sections (lines 89-97) properly handle installation of
language files to Joomla's language directories where they can be loaded.

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:36:57 +00:00
copilot-swe-agent[bot]
2f2e461ec1 Fix: Add language and administrator folders to templateDetails.xml
Language files were not being installed because the folders weren't
listed in the <files> section. Added <folder>language</folder> and
<folder>administrator</folder> to ensure language files are packaged
and installed correctly.

Fixes language not working on install issue.

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:30:07 +00:00
06df7bb604 Reorganization 2026-03-01 01:15:39 -06:00
07a3793677 Delete templateDetails.xml 2025-12-16 20:41:43 -06:00
5c4ac4e4aa Update templateDetails.xml 2025-12-16 20:31:17 -06:00
github-actions[bot]
02619fdb3c chore(release): bump version to 03.01.00 2025-12-16 23:49:59 +00:00
066e15f954 Version fix 2025-12-16 16:51:58 -06:00
94f3c457ec Reorganization 2025-12-16 15:15:36 -06:00