diff options
| -rw-r--r-- | infos.yaml | 14 | ||||
| -rwxr-xr-x | main.py | 27 |
2 files changed, 38 insertions, 3 deletions
@@ -18,6 +18,20 @@ semester: friday: start: "14:15" end: "16:00" + projects: + 1: + name: "p1" + start: "01/09/2025" + end: "17/09/2025" + 2: + name: "p2" + start: "15/09/2025" + end: "08/10/2025" + 3: + name: "p3" + start: "06/10/2025" + end: "29/10/2025" + events: # test: @@ -57,12 +57,22 @@ def formatevents(d): return output def formatday(d): return d.strftime("%b %d") +def formatprojects(d): + output="" + for pkey in sem["projects"]: + p=sem["projects"][pkey] + if d.date() >= p["start"].date() and d.date() <= p["end"].date(): + if len(output)>0: + output+="\n" + output+=p["name"] + return output #### Load semester sem={ "start": parse_date(_i["semester"]["start"]), "end": parse_date(_i["semester"]["end"]), - "slots": {} + "slots": {}, + "projects": {} } for e in _i["semester"]["slots"]: _e=_i["semester"]["slots"][e] @@ -79,7 +89,12 @@ for e in _i["semester"]["slots"]: sem["slots"][e][dayname]["end"]=parse_time(_e[dayname]["end"]) if "room" in _e[dayname].keys(): sem["slots"][e][dayname]["room"]=_e[dayname]["room"] - +for p in _i["semester"]["projects"]: + _p=_i["semester"]["projects"][p] + sem["projects"][p]={} + sem["projects"][p]["start"]=parse_date(_p["start"]) + sem["projects"][p]["end"]=parse_date(_p["end"]) + sem["projects"][p]["name"]=_p["name"] #### Load events events={} for e in _i["events"]: @@ -128,7 +143,13 @@ while d<=sem["end"]: formatevents(getnextdayn(d, 1)), formatevents(getnextdayn(d, 2)), formatevents(getnextdayn(d, 3)), - formatevents(getnextdayn(d, 4))]) + formatevents(getnextdayn(d, 4))],divider=True) + t.add_row(["Projects", + formatprojects(getnextdayn(d, 0)), + formatprojects(getnextdayn(d, 1)), + formatprojects(getnextdayn(d, 2)), + formatprojects(getnextdayn(d, 3)), + formatprojects(getnextdayn(d, 4))]) print(t) d=getnextmonday(d) w+=1 |
