Commit Graph

957 Commits

Author SHA1 Message Date
8d4ddbc1e4 Clarify custom palette files survive template updates
Add update-safe note to light and dark custom palette descriptions
in both en-US and en-GB language files, matching the existing
user.css/user.js messaging.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 11:24:52 -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
005644b07f CSS adjustment 2026-04-04 08:48:24 -05:00
628a99c37c Fix sticky header: remove position:relative override on .container-header
.container-header had position:relative which overrode .sticky-top's
position:sticky due to CSS source order (container-header appeared
later). Removed the conflicting rule. Added .container-header.sticky-top
with z-index:1020 to keep header above all content. Mobile media query
now only disables sticky when the sticky class is present.

Fixes #115

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 23:07:12 -05:00
27c0006ac2 Fix FA7 not loading: simplify to single all.css, fix kit code check
- Load only all.css (or all.min.css) instead of 5 redundant files
- Trim fA6KitCode to prevent whitespace from triggering CDN path
- Remove nested try/catch with 10 fallback registrations
- Single clean try/catch with one dynamic fallback
- all.css already bundles brands + solid + regular + fontawesome

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 23:03:49 -05:00
8b49ff679b Fix mod_finder and mod_footer overrides to match Joomla core contracts
mod_finder:
- Use correct language keys (MOD_FINDER_SEARCH_VALUE, JSEARCH_FILTER_SUBMIT)
- Use $app (available from module dispatcher) instead of Factory
- Load com_finder.finder script and awesomplete preset
- Add show_label, show_button, show_advanced support from core
- Register com_finder extension assets
- Use $route from module dispatcher (not hardcoded)

mod_footer:
- Use $lineone variable from module helper (not $module->content)
- Add MOD_FOOTER_LINE2 language string output
- mod_footer generates its own content, it's not a custom HTML module

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 22:55:54 -05:00
c80f12455c fix: update all workflows to latest MokoStandards v04.04 templates [skip ci]
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 22:47:01 -05:00
0e27011057 Load module language files in template overrides
Added explicit language loading for overrides that use Text::_():
- mod_breadcrumbs: loads mod_breadcrumbs language
- mod_login: loads mod_login language
- mod_finder: loads mod_finder + com_finder language
- mod_articles_category: loads mod_articles_category language

Without this, language strings could show as raw keys when the
module chrome doesn't preload the language file.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 22:39:14 -05:00
a8e1ddbb05 Auto-minify CSS/JS: dev mode deletes .min, prod mode regenerates
- helper/minify.php: PHP-based CSS/JS minifier with timestamp caching
- Dev mode ON: deletes all .min.css and .min.js files
- Dev mode OFF: regenerates .min files from source if stale or missing
- Covers template.css, light/dark standard/custom theme CSS, template.js
- No external build tools needed — template is self-contained

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 22:05:09 -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
65bb4c13f9 Update dark.standard.css 2026-04-02 21:56:14 -05:00
1e180dab81 Update dark.standard.css 2026-04-02 21:55:36 -05:00
f48b3348d8 Remove vendor/ from .gitignore to fix deploy exclusion
The vendor/ rule was causing the deploy workflow to skip all files
under media/vendor/ (FA7, bootstrap-toc) because the deployed path
no longer has the src/ prefix. This repo has no Composer vendor
directory, so the rule is unnecessary.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 21:42:38 -05:00
cd59cf3eb8 Wrap main-top and main-bottom positions in conditional divs
Both positions already existed but rendered unconditionally.
Now wrapped with $this->countModules() checks so the containing
<div> only renders when modules are assigned to the position.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 21:37:02 -05:00
a25f0cb2ea fix: update all workflows to latest MokoStandards v04.04 templates [skip ci]
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 21:25:36 -05:00
19a480ba0c Update template.css 2026-04-02 21:14:07 -05:00
704178ba0d Update .gitignore 2026-04-02 20:53:26 -05:00
887c7a8af3 Merge branch 'dev/03.09.01' of https://github.com/mokoconsulting-tech/MokoCassiopeia into dev/03.09.01 2026-04-02 20:51:50 -05:00
7ee1e3fe39 Footer css fix 2026-04-02 20:51:48 -05:00
35cab4dd08 fix: update .gitignore to platform-specific template (v04.05) [skip ci]
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 20:20:44 -05:00
94a90178e2 Update .gitignore 2026-04-02 20:01:07 -05:00
5c8d551a98 Remove vendor/ rule from .gitignore
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 19:59:43 -05:00
6d1ef1d49f Strip Joomla-specific gitignore, add Usage section, update changelog
- Rewrote .gitignore: removed ~700 lines of Joomla CMS core paths,
  Dolibarr entries, and other framework-specific rules not applicable
  to a template repository. Kept only relevant rules.
- Added Usage section to README.md (required by MokoStandards)
- Added changelog entry for all work in this development cycle

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 19:20:29 -05:00
cd1340452e Update .gitignore 2026-04-02 19:15:31 -05:00
519a8b86d9 Workflow Fix 2026-04-02 19:13:59 -05:00
523e75bb21 Update .gitignore 2026-04-02 19:13:35 -05:00
52da1039ab Language fix 2026-04-02 19:06:22 -05:00
4017e45975 Module overrides with showtitle, suffix, and header_tag support + CSS
New default.php overrides for 11 Joomla core modules:
- mod_custom (default + updated hero layout)
- mod_articles_latest, mod_articles_popular, mod_articles_news
- mod_articles_category, mod_breadcrumbs, mod_footer
- mod_login (BS5 form with FA7 icons), mod_finder (BS5 search)
- mod_tags_popular (badge layout), mod_tags_similar, mod_related_items

All overrides consistently respect:
- $module->showtitle — renders title only when enabled
- header_tag param — configurable heading level (h1-h6)
- header_class param — custom CSS class on the title
- moduleclass_sfx — custom suffix class on the wrapper

CSS additions in template.css:
- Shared __title styles for all module headings
- List styling for article/tag/related modules
- Newsflash card layout, tag badges, search form, login form
- Breadcrumb and footer module styling

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 18:46:17 -05:00
4a0b905c6c Update index.php 2026-04-02 18:40:29 -05:00
f476c6310d Strip remaining FILE INFORMATION headers from all non-XML/README files
Removes DEFGROUP, INGROUP, PATH, VERSION, BRIEF metadata from:
- Root PHP files (index.php, custom.php, error.php, offline.php, component.php)
- Language INI files (en-GB, en-US)
- All index.html security stubs
- brand-showcase.html, theme-test.html

Copyright/SPDX block preserved in all files.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 15:50:35 -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
de5b4395cd Remove empty override directories left after mobile.php cleanup
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 12:22:49 -05:00
26e7be57d3 Hero variable system, CSS fallbacks, header cleanup, remove mobile overrides
- Hero card fully variable-driven: --hero-card-bg/color/overlay/border-radius/padding/max-width
- Alternative hero variant: --hero-alt-card-* for secondary theme
- Overlay bg-position and bg-size now customizable via variables
- Mobile breakpoint: photo bg hidden, hero full-bleed on small screens
- Added fallback values to 1365 var() calls in template.css
- .btn --btn-bg changed from transparent to var(--body-bg) in dark/light themes
- .offcanvas-header .btn-close gets background-color from overlay
- Stripped file info headers (@package/DEFGROUP/VERSION) from 48 files, kept copyright/SPDX
- Synced all theme variables across standard and custom templates
- Removed 26 mobile.php layout overrides
- Added *.py to .gitignore, card-border-radius fallback

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 11:17:53 -05:00
a0cc9020a4 fix: update all workflows to latest MokoStandards v04.04 templates [skip ci]
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 10:04:12 -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
044d8277f8 CSS and Joomla 6 fixes: dropdown icons, footer, drawers, horizontal menu
- Replace CSS border-triangle dropdown toggles with FontAwesome chevron icon
- Fix footer: use --nav-bg-color background, --mainmenu-nav-link-color links, add display:flex to grid-child
- Dynamic footer padding-right when theme control is active
- Drawer close buttons: align left in left drawer, right in right drawer
- Fix .menu-horizontal selector (was .metismenu.menu-horizontal, actual output is .mod-menu.menu-horizontal)
- Add horizontal padding to .mod-list li
- Joomla 6 compat: replace legacy JHtml with namespaced HTMLHelper in mod_kunenalogin

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 16:48:12 -05:00
dd19e226f4 Drawer toggle fix 2026-03-31 13:43:36 -05:00
e061232447 Color and padding fixes 2026-03-31 13:19:32 -05:00
8e6835cd47 Added close buttons to drawers 2026-03-31 13:19:11 -05:00
c4b0ad7290 Update .gitignore 2026-03-26 17:43:35 -05:00
735ec95077 Update templateDetails.xml 2026-03-26 17:42:17 -05:00
269d36f38f docs: add variable audit results and brand showcase to CHANGELOG
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 17:41:08 -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
b03cacc608 Color variable fix 2026-03-26 17:32:51 -05:00
ea7debf262 Update component.php 2026-03-26 17:03:00 -05:00
1f69f26d80 Update template.css 2026-03-26 16:43:48 -05:00
bd4b9390a9 Update index.php 2026-03-26 16:43:44 -05:00
80750fcce6 docs: update CSS_VARIABLES.md and CHANGELOG with sync script docs and version bump
- Bump CSS_VARIABLES.md version to 03.09.02, update effective date
- Add sync_custom_vars.php usage instructions to custom palette section
- Update CHANGELOG to reflect all files modified/added including standard
  theme files, script.php, and language files
- Bump CHANGELOG header version to 03.09.02

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 13:45:56 -05:00
eb3ad178c9 feat: add hero variant and block color variables to standard theme files
Adds all 20 hero variant and block color CSS variables to both
light.standard.css and dark.standard.css, matching the custom palette
templates. Users on the standard palette now get hero variants and
block colors out of the box.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 13:31:02 -05:00
2b7c009f8a feat: add branded Bootstrap 5 showcase with computed CSS swatches to theme test sheet
Merges the full Joomla branded-bootstrap5 article content into theme-test.html:
nav sample, typography, buttons, badges/alerts, tables, forms, cards/list groups,
breadcrumb/pagination, progress bars, and computed CSS variable swatches that
display resolved values via JavaScript.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 12:52:21 -05:00