jmiller 4e07eabc0f
Universal: Auto Version Bump / Version Bump (push) Successful in 7s
feat(#237): implement duplicate snapshot mode (insert as new, remapped IDs)
Finishes the deferred 'duplicate' conflict mode. Inserts snapshot content
as brand-new records with remapped IDs, leaving existing content
untouched — for master->slave 'push as new copies'.

- Uses Joomla's Table API (bootComponent MVCFactory) for Article,
  Category and Module so assets, UCM entries, category/tag nested-sets
  and alias uniqueness are handled by core rather than hand-rolled.
- Remaps category parent_id (parents first), article catid, module menu
  assignments, and custom-field-value item_id; re-features articles.
- Tags are reused/created by title (resolveTagIds) and assigned via the
  article table's newTags so UCM/tag-map stay correct.
- uniqueAlias() avoids alias collisions per scope.
- DEFENSIVE: every item is wrapped in try/catch — a bad item is skipped
  and logged, never fatal — so an untested/partial import degrades
  gracefully instead of corrupting content.

NOTE: still needs a real test pass on a dev site before relying on it.

Refs #237

Claude-Session: https://claude.ai/code/session_01WbGBN9VyRK61zczYWcCQ2i
2026-07-10 12:00:45 -05:00

Contributing to MokoSuiteBackup

Thank you for your interest in contributing to MokoSuiteBackup.

Getting Started

  1. Fork the repository on MokoGitea
  2. Create a feature branch from dev (feature/your-feature)
  3. Make your changes following the coding standards below
  4. Submit a pull request targeting dev

Branch Strategy

  • main — stable releases only
  • dev — active development
  • feature/* — new features (target dev)
  • fix/* — bug fixes (target dev)
  • hotfix/* — urgent fixes (target dev or main)

Coding Standards

  • PHP 8.1+ required
  • Follow Joomla coding standards
  • SPDX license headers on all PHP files
  • Use SubscriberInterface for event subscription
  • Use bind() -> check() -> store() for Table operations

Reporting Issues

Report bugs and feature requests via Issues.

License

By contributing, you agree that your contributions will be licensed under GPL-3.0-or-later.

S
Description
Full-site backup and restore for Joomla - database, files, and configuration
https://mokoconsulting.tech/support/products/mokosuitebackup Readme
4.4 MiB
2026-07-06 00:32:10 +00:00
Languages
PHP 99.6%
HTML 0.3%
CSS 0.1%