Datetime support and updates for muzak endpoint
continuous-integration/drone/push Build is passing

Now supports ISO date. Hardcoded at UTC+2.
This commit is contained in:
2024-07-26 13:34:02 +02:00
parent 9852f21ef7
commit 392e19f4b3
+17 -9
View File
@@ -5,7 +5,7 @@ import random
import re import re
import json, requests import json, requests
import warnings import warnings
from datetime import date, timedelta from datetime import timedelta, datetime, timezone
from discord.ext import commands from discord.ext import commands
class General(commands.Cog): class General(commands.Cog):
@@ -97,23 +97,31 @@ class General(commands.Cog):
"""HD muzak playlist""" """HD muzak playlist"""
data = json.loads(self.get_playlist_json().content) data = json.loads(self.get_playlist_json().content)
msg = "" msg = ""
open = date.fromisoformat(data['openDate']) open = datetime.fromisoformat(data['openDate'])
nom = date.fromisoformat(data['deadlineNominations']) nom = datetime.fromisoformat(data['deadlineNominations'])
vote = date.fromisoformat(data['deadlineVoting']) vote = datetime.fromisoformat(data['deadlineVoting'])
today = date.today() today = datetime.now(tz=timezone(timedelta(hours=2)))
if open > today: if open > today:
msg += "Het stemmen is nog niet geopend voor dit jaar.\n" msg += "Het stemmen is nog niet geopend voor dit jaar.\n"
days = (open-today).days days = (open-today).days
msg += f"Nog {days} nachtjes slapen!\n" if days > 0:
msg += f"Vanaf {open} is de muzak open en kun je naar hartelust stemmen en nomineren op {self.muzak_url}.\n" msg += f"Nog {days} nachtjes slapen!\n"
msg += f"Vanaf {open}"
else:
msg += f"**Maar binnenkort is het zo ver:**\n"
msg += f"Vanaf {open.time()}"
msg += f" is de muzak open en kun je naar hartelust stemmen en nomineren op {self.muzak_url}.\n"
elif today > nom and today < vote:
msg += f"**Het nomineren is voorbij,** maar je kunt nog stemmen op alle genomineerde nummers tot {nom}.\n"
msg += f"Stemmen kan hier: {self.muzak_url}\n"
elif today > nom and today > vote and (today - vote) < timedelta(days=8): elif today > nom and today > vote and (today - vote) < timedelta(days=8):
msg += "Het nomineren en stemmen is alweer voorbij.\n" msg += "Het nomineren en stemmen is alweer voorbij.\n"
msg += "Je zult nog even geduld moeten hebben tot de lijst klaar is.\n" msg += "Je zult nog even geduld moeten hebben tot de lijst klaar is.\n"
elif today > nom and today > vote: elif today > nom and today > vote:
msg += "De lijst is al helemaal klaar. Goed gedaan jongens. Applausje voor jezelf." msg += "De lijst is al helemaal klaar. Goed gedaan jongens. Applausje voor jezelf."
else: else:
if open == today: if open.date() == today.date():
msg += "Jawel mensen! Vanaf vandaag mag het stemmen beginnen!\n" msg += "**Jawel mensen! Vanaf vandaag mag het stemmen beginnen!**\n"
msg += f"Stemmen en nomineren kan hier: {self.muzak_url}\n" msg += f"Stemmen en nomineren kan hier: {self.muzak_url}\n"
msg += f"*Er zijn al {data['stemCount']} nummers genomineerd!*\n" msg += f"*Er zijn al {data['stemCount']} nummers genomineerd!*\n"
msg += f"Nomineren kan tot {nom}, stemmen kan tot {vote}.\n" msg += f"Nomineren kan tot {nom}, stemmen kan tot {vote}.\n"