From a2638d34f81407572d686a643626b7c3ca51c8c7 Mon Sep 17 00:00:00 2001 From: Frederic Aust <frederic.aust@stud.hs-bochum.de> Date: Mon, 26 Sep 2022 11:05:49 +0200 Subject: [PATCH] =?UTF-8?q?Pflanzenerinnerung=20f=C3=BCr=20die=20TierWG=20?= =?UTF-8?q?erg=C3=A4nzt.=20Der=20Befehl=20.nextEvents=20gibt=20nun=20die?= =?UTF-8?q?=20anstehenden=20Events=20aus=20und=20.allEvents=20enth=C3=A4lt?= =?UTF-8?q?=20die=20vollst=C3=A4ndige=20Liste=20inklusive=20historischer?= =?UTF-8?q?=20Events.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- commands.json | 10 +++++++++- mod_eventreminder.py | 12 +++++++++++- signalbot.py | 12 +++++++++++- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/commands.json b/commands.json index 8b8c67f..c84278c 100644 --- a/commands.json +++ b/commands.json @@ -160,11 +160,19 @@ "_Func": "get_next_event", "allowedGroups":[] }, + { + "Names": [ + ".nextEvents" + ], + "Description": "Get a list of all upcoming events.", + "_Func": "get_all_upcomming_events", + "allowedGroups":[] + }, { "Names": [ ".allEvents" ], - "Description": "Get a list of all events.", + "Description": "Get a list of all events, including past ones.", "_Func": "get_all_events", "allowedGroups":[] }, diff --git a/mod_eventreminder.py b/mod_eventreminder.py index 2338b6a..2ae7687 100644 --- a/mod_eventreminder.py +++ b/mod_eventreminder.py @@ -91,7 +91,17 @@ class ModuleEventReminder: return message def get_eventlist(self, groupInfo): - message = "Alle Events:\n" + today = datetime.today() + format = "%d.%m.%Y" + message = "Anstehende Events:\n" + for event in self.events[groupInfo["NAME"]]: # Dieses For geht bestimmt in einer Teile, so wie in signalbot.py + event_dt = datetime.strptime(event.date, format) + if (event_dt - today).days >=0: + message += f"{event.headline}, {event.date}\n" + return message + + def get_complete_eventlist(self, groupInfo): + message = "Alle Events (inklusive vergangener Events):\n" for event in self.events[groupInfo["NAME"]]: # Dieses For geht bestimmt in einer Teile, so wie in signalbot.py message += f"{event.headline}, {event.date}\n" return message diff --git a/signalbot.py b/signalbot.py index 6e14087..e4c73f8 100755 --- a/signalbot.py +++ b/signalbot.py @@ -389,9 +389,12 @@ def save_event(msgDict): send(event_reminder.save_event(msgDict["content"], msgDict["groupInfo"]), msgDict["receiver"]) -def get_all_events(msgDict): +def get_all_upcomming_events(msgDict): send(event_reminder.get_eventlist(msgDict["groupInfo"]), msgDict["receiver"]) +def get_all_events(msgDict): + send(event_reminder.get_complete_eventlist(msgDict["groupInfo"]), msgDict["receiver"]) + def get_next_event(msgDict): send(event_reminder.get_next_event(msgDict["groupInfo"]), msgDict["receiver"]) @@ -466,9 +469,16 @@ def init_schedule_jobs(): schedule.every().tuesday.at("10:00").do(run_threaded, gg_remind_schichten) schedule.every().day.at("11:00").do(run_threaded, gg_remind_stundenzettel) schedule.every().day.at("13:00").do(run_threaded,today.update) + schedule.every().thursday.at("10:00").do(run_threaded, remind_pflanzen) # schedule.every(10).seconds.do(run_threaded, birthday_reminder.check_for_birthdays) +def remind_pflanzen(): + for group in GROUPS: + if group["NAME"] == "TierWG": + send(f'Bitte gebt den armen Pflanzen etwas Lebenselixier!') + break + def gg_remind_schichten(): for group in GROUPS: if group["NAME"] == "GGOffiziell": -- GitLab