Jonathan Miller
026b72deed
fix: address all PR review findings — error handling, security, validation
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Security:
- browseDir restricted to JPATH_ROOT and current user $HOME (not all /home/)
- MokoRestore db_prefix validated with regex to prevent SQL injection
- MokoRestore DB import returns failure when zero statements succeed
Error handling (fatal — would produce corrupt backups):
- BackupEngine/SteppedEngine mkdir() checked, returns error on failure
- SteppedSession save() checked, throws on write failure
- SteppedEngine SQL dump file_put_contents checked, throws on failure
- MokoRestore configuration.php write checked, throws on failure
Error handling (logged — secondary operations):
- BackupEngine dispatchAfterRun catch block logs to error_log
- BackupEngine/SteppedEngine log file write failures logged
- NotificationSender user group email resolution logged
- script.php download key save/restore logged
Operational fixes:
- Cleanup plugin: don't delete DB record if file unlink fails (prevents orphans)
- BackupEngine: count and log skipped unreadable files
- BackupEngine: handle MokoRestore rename failure gracefully
- SteppedEngine: add S3Uploader to stepUpload match (feature parity)
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 21:10:11 -05:00
Jonathan Miller
f604def173
docs: update changelog with all dev changes for merge to main
...
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Branch Cleanup / Delete merged branch (pull_request) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been cancelled
Universal: Build & Release / Promote to RC (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 20:25:56 -05:00
gitea-actions[bot]
b3c7044156
chore(version): pre-release bump to 01.01.21-dev [skip ci]
2026-06-07 01:10:13 +00:00
Jonathan Miller
083e7d4360
Merge branch 'dev' of https://git.mokoconsulting.tech/MokoConsulting/MokoJoomBackup into dev
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
2026-06-06 20:08:45 -05:00
Jonathan Miller
49eeb01007
chore: remove static updates.xml — served dynamically by MokoGitea
2026-06-06 20:08:15 -05:00
gitea-actions[bot]
6064dc1cfa
chore(version): pre-release bump to 01.01.20-dev [skip ci]
2026-06-06 23:05:19 +00:00
Jonathan Miller
05d160b169
fix: ActionlogsHelper::getIp() does not exist in Joomla 5
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Replace with direct REMOTE_ADDR fetch from input server.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 18:03:46 -05:00
gitea-actions[bot]
e23496819f
chore(version): pre-release bump to 01.01.19-dev [skip ci]
2026-06-06 22:59:49 +00:00
Jonathan Miller
ca7ab8f363
feat: JS placeholder resolution in FolderPicker for portable profiles
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
FolderPickerField now resolves [site_name], [host], [date], etc. in
JavaScript before browsing directories, and reverse-replaces actual
values back to placeholders when user selects a path. This makes
profiles portable across sites.
Default placeholder hint uses [host] for directory paths.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 17:54:20 -05:00
gitea-actions[bot]
f6c9f9b78d
chore(version): pre-release bump to 01.01.18-dev [skip ci]
2026-06-06 22:41:42 +00:00
Jonathan Miller
40a0ffdffe
Merge branch 'dev' of https://git.mokoconsulting.tech/MokoConsulting/MokoJoomBackup into dev
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
2026-06-06 17:26:00 -05:00
Jonathan Miller
8338eabf81
fix: replace showUpdateSiteNotice with warnMissingLicenseKey (MokoWaaS pattern)
2026-06-06 17:25:38 -05:00
gitea-actions[bot]
df319f9bb3
chore(version): pre-release bump to 01.01.17-dev [skip ci]
2026-06-06 21:40:43 +00:00
Jonathan Miller
2b5648101a
fix: suppress license warning when download key is already configured
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
checkUpdateSite() now checks extra_query for dlid= before showing
the notice. If a download key is present, no message is displayed.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 16:38:55 -05:00
gitea-actions[bot]
e5c6ab5e2a
chore(version): pre-release bump to 01.01.16-dev [skip ci]
2026-06-06 21:35:14 +00:00
Jonathan Miller
67329507f4
feat: beforeunload warning during backup, placeholder-aware directory checks
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
- Browser warns before closing/navigating while backup is in progress
- FolderPickerField shows info status for paths with [placeholders]
instead of "Directory not found"
- Dashboard health check skips filesystem check when backup_dir uses
placeholders (resolved at backup time by PlaceholderResolver)
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 16:33:31 -05:00
gitea-actions[bot]
2e1ec426ce
chore(version): pre-release bump to 01.01.15-dev [skip ci]
2026-06-06 20:46:31 +00:00
gitea-actions[bot]
0225baa53d
chore(version): pre-release bump to 01.01.14-dev [skip ci]
2026-06-06 20:44:26 +00:00
Jonathan Miller
95cf065264
fix: rename class files to match PSR-4 class names
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
MokoBackup*.php files renamed to MokoJoomBackup*.php to match the
class names inside. Joomla's PSR-4 autoloader requires filename=classname.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 15:43:27 -05:00
gitea-actions[bot]
4d64459b96
chore(version): pre-release bump to 01.01.13-dev [skip ci]
2026-06-06 20:38:36 +00:00
Jonathan Miller
9975d92ca2
feat: web cron trigger for shared hosting without crontab
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Add URL-based backup trigger for external cron services:
index.php?mokojoombackup_cron=SECRET&profile_id=1
- System plugin intercepts onAfterInitialise (before auth)
- Secret word, enable toggle, and IP whitelist in component config
- Timing-safe secret comparison with hash_equals
- Returns JSON response with success/failure and timestamp
Also fix: INSERT IGNORE for default profile to prevent duplicate key
error when updating an existing installation.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 15:37:19 -05:00
gitea-actions[bot]
fae2ea5567
chore(version): pre-release bump to 01.01.12-dev [skip ci]
2026-06-06 20:15:02 +00:00
gitea-actions[bot]
f03bb54d4a
chore(version): pre-release bump to 01.01.11-dev [skip ci]
2026-06-06 20:11:23 +00:00
Jonathan Miller
a0c6332372
fix: flatten nested package directories from rename
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
The mokobackup→mokojoombackup rename created double-nested directories
(e.g. com_mokojoombackup/com_mokojoombackup/). Joomla installer could
not find files at the expected paths. Flattened all packages.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 15:11:07 -05:00
gitea-actions[bot]
a10827294a
chore(version): pre-release bump to 01.01.10-dev [skip ci]
2026-06-06 20:02:10 +00:00
Jonathan Miller
37d325f1ed
chore: rename mokobackup to mokojoombackup throughout
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Full rename of all extension elements, namespaces, language keys,
database tables, file names, and directory names:
- pkg_mokobackup → pkg_mokojoombackup
- com_mokobackup → com_mokojoombackup
- plg_*_mokobackup → plg_*_mokojoombackup
- MokoBackup namespace → MokoJoomBackup
- #__mokobackup_ tables → #__mokojoombackup_
- COM_MOKOBACKUP_ keys → COM_MOKOJOOMBACKUP_
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 14:54:04 -05:00
jmiller
a7458a693e
chore: sync .mokogitea/workflows/auto-release.yml from moko-platform [skip ci]
2026-06-06 19:51:46 +00:00
jmiller
dc06336b04
chore: sync .mokogitea/workflows/pre-release.yml from moko-platform [skip ci]
2026-06-06 19:49:15 +00:00
gitea-actions[bot]
7c609dd3f1
chore(version): pre-release bump to 01.01.09-dev [skip ci]
2026-06-06 19:32:38 +00:00
gitea-actions[bot]
8aae10d1ec
chore(version): pre-release bump to 01.01.08-dev [skip ci]
2026-06-06 19:17:29 +00:00
Jonathan Miller
62262603a9
fix: remove double-quotes from pre-release workflow shell commands
...
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Act Runner v0.6.x has a quoting bug in Docker mode that double-wraps
quoted strings, causing test -f and git clone to fail. Remove all
unnecessary double-quotes from the Setup moko-platform tools step.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 14:07:14 -05:00
Jonathan Miller
42c995853f
docs: update changelog with all unreleased changes
...
Generic: Repo Health / Access control (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 13:32:21 -05:00
Jonathan Miller
be52bc048f
feat: Joomla-styled standalone installer with provisioning wizard
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Complete rewrite of MokoRestore restore.php generator:
- 7-step wizard UI matching Joomla installer look and feel
- Pre-flight checks (PHP, extensions, disk space, backup detection)
- Archive extraction with password support and config pre-fill
- Database connection test and SQL import with error reporting
- Create or update configuration.php with fresh Joomla secret
- Super admin dropdown with bcrypt password reset
- Client provisioning: reset hits, clear sessions/cache/keys/tokens/logs
- Zero innerHTML — all DOM built with safe createElement/textContent
- Fully self-contained single PHP file, no external dependencies
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 12:48:42 -05:00
Jonathan Miller
da9da3ef2c
chore: move CLAUDE.md to .mokogitea/ directory
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Relocate CLAUDE.md from repo root to .mokogitea/ per project convention.
Content updated with focused, repo-specific architecture and rules.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 09:30:48 -05:00
Jonathan Miller
a13f7ca6a6
chore: rename src/ to source/ per MokoStandards convention
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Update all references in Makefile, manifest.xml, .gitignore, and CI
workflows (ci-joomla, pr-check, repo-health) to use source/ as the
primary directory with src/ as a fallback for compatibility.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 08:08:33 -05:00
Jonathan Miller
28fcc72ced
fix: consolidate schema migrations to version within extension range
...
Generic: Repo Health / Access control (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Migrations 01.01.08 and 01.01.09 were never applied on upgrade because
their version numbers exceeded the extension version (01.01.07-dev).
Joomla skips migrations with version > extension version.
Consolidated into 01.01.02.sql which falls between 01.01.01 and
01.01.07-dev, ensuring existing installs receive the ALTER TABLE
statements for notify_user_groups and archive_name_format.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 07:36:05 -05:00
jmiller
fdd004b345
chore: sync .mokogitea/workflows/pre-release.yml from moko-platform [skip ci]
2026-06-06 12:32:27 +00:00
Jonathan Miller
2755ef709f
feat: interactive directory tree browser for exclude filters
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Replace plain text ExcludeList with DirectoryFilter field that provides
a browsable server directory tree with checkboxes, removable pills, and
manual path entry. Backward compatible storage format.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 07:24:33 -05:00
Jonathan Miller
df59fd7303
fix: dashboard tiles use onclick navigation, last backup links to record detail
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 07:13:26 -05:00
Jonathan Miller
b1632e790e
feat: make dashboard status tiles clickable links to their sections
...
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-06 06:07:53 -05:00
Jonathan Miller
3c469f0dae
feat: placeholder support, download fix, table exclusion modes, log viewer, detail view
...
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Universal: Build & Release / Promote to RC (pull_request) Has been cancelled
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been cancelled
Branch Cleanup / Delete merged branch (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
- Add PlaceholderResolver for [host], [date], [profile_name], etc. in
backup_dir and new archive_name_format profile field
- Fix download ERR_INVALID_RESPONSE by flushing output buffers before
sending file headers
- Table exclusions now have separate Data and Structure checkboxes
(backward compatible with existing newline format)
- Backup log files written alongside archive for posterity
- Log viewer modal in backup records list and inline in detail view
- Clickable record description links to detail view with checksum,
file path, DB size, and full log
- Dashboard health check shows actual resolved backup directory path
- Fix update site link to use list view (avoids Joomla core bug)
- Schema migration 01.01.09 for archive_name_format column
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-05 00:11:46 -05:00
Jonathan Miller
75e72c248a
feat: tar.gz archives, table checkbox excludes, user group notifications ( #32 , #33 , #34 )
...
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Archive formats (#32 ):
- ArchiverInterface abstraction with ZipArchiver and TarGzArchiver
- BackupEngine uses archiver factory based on profile archive_format
- tar.gz uses PharData (bundled with PHP, no extra extensions)
- RestoreEngine detects and extracts tar.gz via PharData
- AES-256 encryption skipped for non-ZIP formats with log warning
Exclude fields (#33 ):
- ExcludeListField: dynamic table with add/remove rows for dirs and files
- DatabaseTablesField: auto-populated checkbox list of all site tables
- Replaces textarea-based exclusion fields in profile form
User group notifications (#34 ):
- usergrouplist field added to profile notifications fieldset
- NotificationSender resolves group members to emails at send time
- Combined with manual email addresses, deduplicated
- SQL migration adds notify_user_groups column
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-04 20:40:07 -05:00
Jonathan Miller
cf50551595
feat: folder picker field and default directory dashboard warning
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
- Custom FolderPickerField with AJAX server-side directory browser
(Browse button opens collapsible tree, click to navigate, double-click
to select). Uses safe DOM methods instead of innerHTML.
- AjaxController::browseDir() endpoint lists subdirectories
- Dashboard shows warning when any profile uses the default backup
directory inside the web root
- Profile form and config.xml use FolderPicker for backup_dir field
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-04 20:30:28 -05:00
Jonathan Miller
368461577e
fix: CLI exit codes and SQL schema defaults
...
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
- Console commands: replace self::SUCCESS/FAILURE with 0/1 (Joomla's
AbstractCommand doesn't define these Symfony constants)
- SQL: make manifest and log columns DEFAULT NULL to prevent
"doesn't have a default value" on INSERT
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-04 20:15:52 -05:00
Jonathan Miller
fea1800e06
fix: console plugin namespace and quickicon translation
...
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
- Console: use Joomla\Application\ApplicationEvents (was wrong
namespace Joomla\Application\Event\ApplicationEvents causing
ClassNotFoundError on CLI)
- Quickicon: translate text key with Text::_() so language strings
render instead of showing raw keys
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-04 19:57:36 -05:00
Jonathan Miller
d19274d88b
chore: remove deprecated update-server.yml workflow [skip ci]
...
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-04 19:06:06 -05:00
jmiller
26635f933c
chore: add dlid and blockChildUninstall to package manifest [skip ci]
2026-06-04 22:02:33 +00:00
jmiller
af82b46fe0
chore: add dlid and blockChildUninstall to package manifest [skip ci]
2026-06-04 22:02:32 +00:00
gitea-actions[bot]
8d80c218da
chore(version): auto-bump 01.01.07-dev [skip ci]
2026-06-04 21:23:01 +00:00
Jonathan Miller
807da034c9
fix: add config.xml for component Options
...
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: PR Check / Branch Policy (pull_request) Has been cancelled
Generic: Repo Health / Access control (pull_request) Has been cancelled
Generic: Repo Health / Site Health (pull_request) Has been cancelled
Joomla: Extension CI / Release Readiness Check (pull_request) Has been cancelled
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Joomla: Extension CI / Lint & Validate (pull_request) Has been cancelled
Universal: PR Check / Validate PR (pull_request) Has been cancelled
Update Server / Update Server (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Generic: Repo Health / Report Issues (push) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report Issues (pull_request) Has been cancelled
The Options toolbar button was crashing with "Form::loadForm could not
load file" because config.xml did not exist. Added config.xml with
global settings: default backup dir, default profile, update notice
toggle, cleanup defaults, notification defaults, and permissions.
Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-04 16:22:15 -05:00