From 35db07c69dd7e7d07127e94b36ef05a8cf480fe5 Mon Sep 17 00:00:00 2001 From: shuki Date: Sat, 7 Mar 2026 05:07:31 +0200 Subject: [PATCH] Require at least one source and destination to save a schedule Co-Authored-By: Claude Opus 4.6 --- tui/screens/schedule_edit.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tui/screens/schedule_edit.py b/tui/screens/schedule_edit.py index c4f939e..d81bd1f 100644 --- a/tui/screens/schedule_edit.py +++ b/tui/screens/schedule_edit.py @@ -222,14 +222,23 @@ class ScheduleEditScreen(Screen): else: day_val = "" + selected_targets = self._get_selected_switches("sched-src-") + selected_remotes = self._get_selected_switches("sched-dst-") + if not selected_targets: + self.notify("Select at least one source", severity="error") + return + if not selected_remotes: + self.notify("Select at least one destination", severity="error") + return + sched = Schedule( name=name, schedule=stype, time=self.query_one("#sched-time", Input).value.strip() or "02:00", day=day_val, cron=self.query_one("#sched-cron", Input).value.strip(), - targets=",".join(self._get_selected_switches("sched-src-")), - remotes=",".join(self._get_selected_switches("sched-dst-")), + targets=",".join(selected_targets), + remotes=",".join(selected_remotes), ) conf = CONFIG_DIR / "schedules.d" / f"{name}.conf" write_conf(conf, sched.to_conf())