diff options
| author | Loïc Guégan <manzerbredes@mailbox.org> | 2025-07-26 13:20:04 +0200 |
|---|---|---|
| committer | Loïc Guégan <manzerbredes@mailbox.org> | 2025-07-26 13:20:04 +0200 |
| commit | 171314fa265274f94cd3a7600ac931ed8e94b45b (patch) | |
| tree | 0d014ae5af652b68dde00ad5d95dc131174b048e | |
| parent | 575cc83787bf335119814923ca4de7de607d2c05 (diff) | |
Minor changes
| -rw-r--r-- | infos.yaml | 14 | ||||
| -rwxr-xr-x | main.py | 47 |
2 files changed, 61 insertions, 0 deletions
@@ -12,6 +12,14 @@ semester: wednesday: start: "09:15" end: "10:00" + colloquiums: + slots: + monday: + start: "09:10" + end: "10:08" + wednesday: + start: "09:15" + end: "10:00" output: date_format: "%b %d" @@ -44,6 +52,12 @@ output: hidden: no msg_handout: "Mandatory assignment {} handout" msg_deadline: "Mandatory assignment {} deadline" + lectures: + hidden: no + show_rooms: no + colloquiums: + hidden: no + show_rooms: yes events: 1: @@ -30,6 +30,17 @@ def getgloballectureslot(d): room=slots[dname]["room"] if "room" in slots[dname].keys() else None return (start,end, room) return None +def getglobalcolloquiumsslot(d): + dname=d.strftime("%A").lower() + slots=i["semester"]["colloquiums"]["slots"] + if dname in slots.keys(): + start,end, room=(None,None,None) + if "start" in slots[dname].keys(): + start=datetime.strptime(i["semester"]["colloquiums"]["slots"][dname]["start"], "%H:%M") + end=datetime.strptime(i["semester"]["colloquiums"]["slots"][dname]["end"], "%H:%M") + room=slots[dname]["room"] if "room" in slots[dname].keys() else None + return (start,end, room) + return None def getassign(d): val="" for a in i["assignments"]: @@ -158,3 +169,39 @@ if not i["output"]["tables"]["deadlines"]["hidden"]: t.add_row([getweek(d),formatday(d),msg]) t.align["Assignment"] = "l" print(t.get_formatted_string(i["output"]["format"])) + + +if not i["output"]["tables"]["lectures"]["hidden"]: + sstart=parse_date(i["semester"]["start"]) + monday=getmonday(sstart) + t = PrettyTable() + t.field_names = ["Day", "Time", "Room"] + t.align["Day"] = "l" + for offset in range(0,5): + d=getnextdayn(monday, offset) + s=getgloballectureslot(d) + if s is not None: + (startT,endT,room)=s + room=room if room is not None else "" + t.add_row([d.strftime("%A"),startT.strftime(i["output"]["time_format"])+"-"+endT.strftime(i["output"]["time_format"]),room]) + if not i["output"]["tables"]["lectures"]["show_rooms"]: + t.del_column("Room") + print(t) + + +if not i["output"]["tables"]["colloquiums"]["hidden"]: + sstart=parse_date(i["semester"]["start"]) + monday=getmonday(sstart) + t = PrettyTable() + t.field_names = ["Day", "Time", "Room"] + t.align["Day"] = "l" + for offset in range(0,5): + d=getnextdayn(monday, offset) + s=getglobalcolloquiumsslot(d) + if s is not None: + (startT,endT,room)=s + room=room if room is not None else "" + t.add_row([d.strftime("%A"),startT.strftime(i["output"]["time_format"])+"-"+endT.strftime(i["output"]["time_format"]),room]) + if not i["output"]["tables"]["colloquiums"]["show_rooms"]: + t.del_column("Room") + print(t) |
