feat: Selective article restore from snapshot #58

Closed
opened 2026-06-21 16:49:50 +00:00 by jmiller · 0 comments
Owner

Summary

Allow users to browse articles inside a snapshot and selectively restore individual articles rather than restoring the entire content type.

UI

  • Add a "Browse" button on each snapshot row
  • Show a modal/view listing all articles in the snapshot with title, category, date, status
  • Checkboxes to select which articles to restore
  • Restore selected articles using merge (upsert) mode

Why

Often a user only needs to recover a single article that was accidentally deleted or corrupted. Full replace mode is too destructive, and merge mode restores everything. Selective restore fills this gap.

Files

  • src/Engine/SnapshotRestoreEngine.php — add restoreSelectedArticles(int $snapshotId, array $articleIds) method
  • src/Controller/SnapshotsController.php — add browse() and restoreSelected() actions
  • tmpl/snapshots/ — browse modal or sub-view
## Summary Allow users to browse articles inside a snapshot and selectively restore individual articles rather than restoring the entire content type. ## UI - Add a "Browse" button on each snapshot row - Show a modal/view listing all articles in the snapshot with title, category, date, status - Checkboxes to select which articles to restore - Restore selected articles using merge (upsert) mode ## Why Often a user only needs to recover a single article that was accidentally deleted or corrupted. Full replace mode is too destructive, and merge mode restores everything. Selective restore fills this gap. ## Files - `src/Engine/SnapshotRestoreEngine.php` — add `restoreSelectedArticles(int $snapshotId, array $articleIds)` method - `src/Controller/SnapshotsController.php` — add `browse()` and `restoreSelected()` actions - `tmpl/snapshots/` — browse modal or sub-view
jmiller added the component: enginecomponent: admin labels 2026-06-21 16:49:50 +00:00
Sign in to join this conversation.
Priority Medium
Type Feature
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MokoConsulting/MokoSuiteBackup#58