Index: channels/timer.py ================================================================== --- channels/timer.py +++ channels/timer.py @@ -3,11 +3,11 @@ # title: Recording timer # description: Schedules play/record events for bookmarked radio stations. # type: feature # category: hook # depends: kronos, action >= 1.1.1 -# version: 0.7.5 +# version: 0.7.6 # config: # { name: timer_duration, type: select, select: "auto|streamripper|fpls", value: none, description: "Support for time ranges" } # { name: timer_crontab, type: bool, value: 0, description: "Utilize cron instead of runtime scheduler. (not implemented yet)" } # priority: optional # support: basic @@ -112,10 +112,14 @@ row["listformat"] = "href" #self.parent.channel().listformat if row.get(self.timefield): row["title"] = row["title"] + " -- " + row[self.timefield] row[self.timefield] = self.parent.timer_value.get_text() + # basic check for consistency + if not re.match("^(\w{2,3}|\*|,)+\s+(\d+:\d+[-.\d+:]*)\s+(record|play)", row[self.timefield]): + self.parent.status("⛔ Danger, Will Robinson! → The given timer date/action is likely invalid. This won't work.", timeout=22) + # store self.save_timer(row) # store row in timer database