Commit Graph

182 Commits

Author SHA1 Message Date
jmiller 49bfdb8fb2 ci: sync workflows from main
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:48:11 -05:00
jmiller 625d74b686 fix: updates.xml points to major version release tag
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:31:32 -05:00
jmiller 29d916ade5 merge: sync dev with main
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:27:10 -05:00
jmiller 2b539db1d6 release: v02.01.10
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:19:14 -05:00
jmiller bd17aeb659 ci: Joomla release builds ZIP + SHA-256 checksum
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:14:36 -05:00
jmiller f87637ba9d fix: updates.xml download URL uses minor version tag
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:14:00 -05:00
jmiller 2442010bca fix: updates.xml download URL uses minor version tag
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:13:29 -05:00
github-actions[bot] 6c706fdf64 chore(version): sync badges and headers to 02.01.08 [skip ci] 2026-04-07 22:11:01 +00:00
jmiller f4fea85aed release: v02.01.09 — email reads version from manifest
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:09:37 -05:00
jmiller 8769af4fa3 Merge branch 'dev' 2026-04-07 17:08:02 -05:00
jmiller a29008fc99 fix: read version from manifest instead of hardcoding in email
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:07:59 -05:00
jmiller 75e961a94f Merge branch 'dev' 2026-04-07 17:06:32 -05:00
jmiller b286fd2012 fix: README version to 02.01.08
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:06:30 -05:00
jmiller 5ac9465412 Merge branch 'dev' 2026-04-07 17:05:30 -05:00
jmiller b9bf7750dd fix: sync all version numbers to 02.01.08, add SHA256 checksum
Updated version in all .ini, .php, .md files to 02.01.08.
Added SHA256 checksum to updates.xml for install integrity validation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:04:44 -05:00
jmiller be3483f9c3 chore: update CODEOWNERS — synced workflows listed explicitly 2026-04-07 17:00:38 -05:00
jmiller 13ce80f7c1 release: v02.01.08
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:59:08 -05:00
jmiller 6078565485 feat: bundle mokocassiopeia as payload inside plugin zip
- MokoCassiopeia zip shipped at src/payload/mokocassiopeia.zip
- Install script uses local payload instead of downloading
- Removed getDownloadUrlFromUpdates (no longer needed)
- Added update-payload.yml workflow to refresh payload on merge to main

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:59:02 -05:00
jmiller 2067d33caf release: v02.01.07
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:53:30 -05:00
jmiller cd6d236670 release: v02.01.06 — patch bump to trigger update
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:52:26 -05:00
jmiller 31e5cfd23a release: v02.01.05
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:49:08 -05:00
jmiller 3ddd4dca65 Merge branch 'dev' 2026-04-07 16:49:05 -05:00
jmiller acfecc383e fix: use release zip from updates.xml for mokocassiopeia install
The release zip is properly structured for Joomla installation.
Simplified extraction logic — release zips have templateDetails.xml
at root or one level deep. Added better error messages with the
failing URL for debugging.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:49:03 -05:00
jmiller 14e1b87ac5 fix: README version to 02.01.04
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:46:46 -05:00
jmiller 6094fef99e fix: README version to 02.01.04
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:46:17 -05:00
jmiller 202d69f67b ci: sync all workflows from MokoStandards v04.05
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:44:22 -05:00
jmiller 868b22393c release: v02.01.04
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:41:04 -05:00
jmiller 5f4c335876 feat: send email notification on uninstall
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:40:58 -05:00
jmiller 53a3c34865 release: v02.01.03 — install notification email, allow uninstall
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:39:53 -05:00
jmiller 5d0d006ccd feat: email notification on install/update, allow super user uninstall
- Send email to webmaster@mokoconsulting.tech on every install/update
  with site name, version, PHP, Joomla version
- Changed locked=0 (allows uninstall by super users) but kept
  protected=1 (prevents disabling)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:39:08 -05:00
jmiller 243467a121 release: v02.01.02 — resolve mokocassiopeia from updates.xml
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:28:28 -05:00
jmiller b1bc264314 feat: resolve mokocassiopeia download URL from updates.xml
Instead of hardcoding the zip URL, fetches MokoCassiopeia's updates.xml
from the repo main branch and parses the downloadurl. This way the
download location is controlled by the MokoCassiopeia repo.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:28:08 -05:00
jmiller db4bf1c784 fix: extract mokocassiopeia zip before installing
Joomla Installer::install() expects a directory path, not a zip file.
Now extracts the zip to a temp folder, finds the templateDetails.xml,
and passes the correct directory to the installer.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:26:40 -05:00
jmiller 19214dd672 fix: README version to 02.01.01
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:24:45 -05:00
jmiller c81e409a57 feat: auto-install mokocassiopeia, set as default, lock template
Minor version bump to 02.01.01:
- Auto-install mokocassiopeia from GitHub if not present
- Lock and protect the template (cannot be disabled/uninstalled)
- Set mokocassiopeia as default site template

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:22:01 -05:00
jmiller 7fdfaac7fb Merge branch 'dev' 2026-04-07 16:20:52 -05:00
jmiller f12e55f8b9 feat: auto-install and lock mokocassiopeia template
On install/update, checks if mokocassiopeia template exists. If found,
locks and protects it. If missing, downloads latest release from
GitHub and installs it automatically.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:20:26 -05:00
jmiller dcc1ba9569 release: v02.00.03 — lock plugin in postflight
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:17:28 -05:00
jmiller 5296a39cd5 Merge dev into main — v02.00.03 lock fix
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:16:34 -05:00
jmiller 64defa8a0c ci: version archive branch on every version change 2026-04-07 16:12:00 -05:00
jmiller d9dd6c4051 fix: lock plugin in postflight so it applies on update too
install() only runs on first install. Moved enableAndLockPlugin() to
postflight() which runs on both install and update, ensuring existing
installs get locked when updating.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:11:21 -05:00
jmiller 89fce9e83b ci: auto-dev-issue now creates sub-issues for full workflow 2026-04-07 16:09:39 -05:00
github-actions[bot] 7cb42d7bd7 chore(version): auto-bump patch 02.00.01 → 02.00.02 [skip ci] 2026-04-07 20:59:34 +00:00
jmiller 8dc00800a0 release: v02.00.02 — lock plugin on install
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 15:57:27 -05:00
jmiller 5222efa2e2 feat: lock plugin on install — cannot be disabled or uninstalled
Sets both locked=1 and protected=1 in #__extensions on install.
Prevents tenants from disabling or uninstalling the plugin through
the Extension Manager.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 15:56:58 -05:00
github-actions[bot] 6e76b3f235 chore(version): sync badges and headers to 02.00.01 [skip ci] 2026-04-07 20:56:11 +00:00
github-actions[bot] d1e36a05a4 chore(release): build 02.00.01 [skip ci] 2026-04-07 20:56:04 +00:00
jmiller 1b38ce9a07 feat: lock plugin on install — cannot be disabled or uninstalled
Sets both locked=1 and protected=1 in #__extensions on install.
Prevents tenants from disabling or uninstalling the plugin through
the Extension Manager.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 15:55:38 -05:00
jmiller 687e0ed3c9 Merge dev/02.00.00 into main — release v02.00.01
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 15:41:36 -05:00
jmiller 54c5c93c12 release: bump version to 02.00.01
First release of v02.00 — patch .00 reserved for development.
Version bumped across all files: manifest, PHP, language, docs,
composer, updates.xml, changelog, README.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 15:39:16 -05:00