Repository navigation
feat: alert System Managers of backup and restore failures in the desk and by email - #18
Merged
Merged
Conversation
tulayha
added a commit
that referenced
this pull request
Oct 7, 2026
Stacked on #18; GitHub retargets this to `develop` once that merges. ## What - **Backup Settings** (the settings form already linked in the sidebar) is now the only place to edit settings. It gets the day-pill schedule editor and the off-site storage status that only the dialog had. - The **Settings** button on Backup Control opens that page; the settings dialog and its `save_settings` endpoint are removed. - Backup Control reloads when you return to it, so the "Scheduled backups" card reflects what was just saved. ## Why Settings could be edited in two places that behaved differently: the dialog had the good schedule editor, the form had a raw table with comma-separated weekdays. The dialog also kept its own copy of the settings, which went out of sync when it was reopened. ## Notes - The schedule is still stored in the `backup_schedule` child table, now hidden; the editor reads and writes its rows, so saving, validation and change tracking are the form's own. - The schedule editor is always shown. The dialog hid it while scheduling was disabled and silently kept the previous schedule on save. - Times loaded from the database (`9:00:00`) are padded before they go into the time input, which otherwise showed them empty. - "Remote Retention (Days)" is relabelled "Off-site Retention (Days)" to match the rest of the screen. - `get_configuration` reports only whether each deployment variable is set, never its value, and is System Manager only. ## Testing Tests updated for the form, saving and the new endpoint (CI). Checked by hand on a local v16 bench in light and dark theme: toggling days, adding and removing rows, changing a time, saving, the client-side validation message, the storage status, and Backup Control picking up the saved state on return. Not checked on v15 in a browser.
Contributor
Author
|
🎉 This PR is included in version 0.2.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Why
Alerts only reached the addresses typed into a free-text field. With that field empty, or with outgoing email not working, a failure was visible only in Error Log and on the Backup Control page.
Behaviour changes to know about
Has Roledirectly.Notes
Alerttype, which Frappe never emails, so nobody gets a second email.Testing
Unit tests added for both channels (CI). The bell was checked by hand on a local v16 bench: a simulated failure showed up in Administrator's notification panel.