Related issue: #282 - Scheduled all-environments backup
NGX can now back up every environment automatically on a schedule, running the same backup you get from the Backup page but across all configured environments in one job. The job is off by default and is only available on an environment that can administer the others (staging), so ordinary group sites never run it.
Open Admin > System Settings > Scheduled Tasks (/admin/system-settings?tab=scheduled-tasks) on the platform-admin environment and choose the All-environments backup tab. From there you can:
The backups themselves appear in Admin > Environment Management > Backup on the History tab, one per environment, the same as a manually started backup.
Only an environment set up to administer the others (staging) holds the details needed to reach every environment's database and storage. The task follows the same rule as the Backup page: it is registered only where platform administration is switched on, and it stays off until an administrator turns it on.
server/lib/cron/all-environments-backup-job.ts (new) registers the task only when platform administration is enabled, defaults to off, and backs up each environment in turn with completion tracking and a per-environment timeout.server/lib/backup/backup-service-factory.ts (new) shares one backup-service builder between the Backup page's controller and the scheduled job, including backup-completion notifications.server/lib/backup/backup-controller.ts now uses the shared builder.server/lib/backup/backup-and-restore-service.ts records who started a backup via a new triggeredBy option, so scheduled runs are saved as "scheduled" rather than "web".scheduled-task.model.ts and the Scheduled Tasks page add the new task id and an All-environments backup tab.server/lib/server.ts schedules the task at start-up alongside the other recurring jobs.Administrators on the staging environment can now back up every site on a schedule from one place, with a single off-by-default job that runs each environment's backup in turn, records the outcome per environment, and stays unavailable on sites that cannot administer the others.
The Email Forward column badges (Active, Catch-all, Multiple) show the forwarding rule in a tooltip, e.g. "membership-co-ordinator@ngx-ramblers.org.uk -> eastkentwalkinggroup@gmail.com". ngx-bootstrap's default .tooltip-inner caps width at 200px, so the address wrapped across several lines.
Add a containerClass="email-forward-tooltip" to those three badges and a scoped :host ::ng-deep style lifting max-width and setting white-space: nowrap so the rule stays on one line.