diff options
| author | Loïc Guégan <manzerbredes@mailbox.org> | 2025-07-26 15:18:10 +0200 |
|---|---|---|
| committer | Loïc Guégan <manzerbredes@mailbox.org> | 2025-07-26 15:18:10 +0200 |
| commit | 8aceece5b8ec4f7dfb550d71b1beea546d16d70e (patch) | |
| tree | f7b614b95c055178d62b9035bd5e6ff61b174173 /main2.py | |
| parent | 171314fa265274f94cd3a7600ac931ed8e94b45b (diff) | |
Minor changes
Diffstat (limited to 'main2.py')
| -rwxr-xr-x | main2.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/main2.py b/main2.py new file mode 100755 index 0000000..05387db --- /dev/null +++ b/main2.py @@ -0,0 +1,45 @@ +#!./env/bin/python + +import yaml, textwrap +from prettytable import PrettyTable +from datetime import datetime, timedelta + +with open("infos2.yaml", "r") as f: + _i=yaml.safe_load(f) + +#### Parsing +def parse_date(s): + return datetime.strptime(s, "%d/%m/%Y") +def parse_time(s): + return datetime.strptime(s, "%H:%M") +#### Dates +def getmonday(d): + return d - timedelta(days=d.weekday()) +def getnextmonday(d): + return getmonday(d)+timedelta(days=7) +def getnextdayn(d,n): + return (d+timedelta(days=n)) +def getweek(d): + return d.isocalendar().week + +#### Load events +events={} +for e in _i["events"]: + _e=_i["events"][e] + events[e]={ + "type": _e["type"], + "name": _e["name"], + "date": parse_date(_e["date"]), + } + events[e]["hidden"]=_e["hidden"] if "hidden" in _e.keys() else False + events[e]["who"]=_e["who"] if "who" in _e.keys() else None + events[e]["start"]=parse_time(_e["start"]) if "start" in _e.keys() else None + events[e]["end"]=parse_time(_e["end"]) if "end" in _e.keys() else None + events[e]["room"]=_e["room"] if "room" in _e.keys() else None + print(events[e]) + +#### Load semester + +#### Load slots + +#### Gen semester calendar |
