added actuall event creation
This commit is contained in:
parent
6b39ed588d
commit
0b97ad1e49
28
main.py
28
main.py
@ -85,8 +85,8 @@ def sort_events(events: list[Event]) -> list[Event]:
|
|||||||
events = sorted(events, key=lambda k: (k.start_date, k.start_time))
|
events = sorted(events, key=lambda k: (k.start_date, k.start_time))
|
||||||
return events
|
return events
|
||||||
|
|
||||||
def add_event(events: list[Event],
|
def create_event(name: str,
|
||||||
name: str,
|
location: str,
|
||||||
categories: str,
|
categories: str,
|
||||||
description: str,
|
description: str,
|
||||||
start,
|
start,
|
||||||
@ -94,7 +94,7 @@ def add_event(events: list[Event],
|
|||||||
"""create event"""
|
"""create event"""
|
||||||
# pylint: disable=too-many-arguments
|
# pylint: disable=too-many-arguments
|
||||||
event = Event(name,
|
event = Event(name,
|
||||||
"Main Campus",
|
location,
|
||||||
"",
|
"",
|
||||||
start.strftime("%Y-%m-%d"),
|
start.strftime("%Y-%m-%d"),
|
||||||
start.strftime("%I:%M %p"),
|
start.strftime("%I:%M %p"),
|
||||||
@ -108,7 +108,8 @@ def add_event(events: list[Event],
|
|||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
description)
|
description)
|
||||||
events.append(event)
|
return event
|
||||||
|
# events.append(event)
|
||||||
|
|
||||||
|
|
||||||
def write_calendar(events: list[Event]) -> None:
|
def write_calendar(events: list[Event]) -> None:
|
||||||
@ -133,13 +134,17 @@ def write_calendar(events: list[Event]) -> None:
|
|||||||
writer.write()
|
writer.write()
|
||||||
|
|
||||||
|
|
||||||
def process_day(events, day_events):
|
def process_day(events, year, month, day, day_events):
|
||||||
"""process all events for one day"""
|
"""process all events for one day"""
|
||||||
for event_item in day_events:
|
for event_item in day_events:
|
||||||
debug_print(f" {event_item}", DEBUG)
|
start = datetime(year, month, day, event_item[0], event_item[1])
|
||||||
|
finish = datetime(year, month, day, event_item[2], event_item[3])
|
||||||
|
debug_print(f" {start:%H:%M}-{finish:%H:%M} {event_item[6]:25} {event_item[4]:11} {event_item[5]:16} {event_item[7]:70.70}", DEBUG)
|
||||||
|
event = create_event(event_item[6], event_item[4], event_item[5], event_item[7], start, finish)
|
||||||
|
events.append(event)
|
||||||
return events
|
return events
|
||||||
|
|
||||||
def process_month(MONTHS, monthly_events, week_of_month, week, events):
|
def process_month(MONTHS, monthly_events, year, month, week_of_month, week, events):
|
||||||
"""process one MONTHS of events"""
|
"""process one MONTHS of events"""
|
||||||
for day_of_week, day in enumerate(week):
|
for day_of_week, day in enumerate(week):
|
||||||
if day > 0:
|
if day > 0:
|
||||||
@ -149,26 +154,25 @@ def process_month(MONTHS, monthly_events, week_of_month, week, events):
|
|||||||
"""
|
"""
|
||||||
debug_print(f" {day_of_week}-{day:02d}", DEBUG)
|
debug_print(f" {day_of_week}-{day:02d}", DEBUG)
|
||||||
day_events = [x[1:] for x in monthly_events[day_of_week] if week_of_month + 1 in x[0]]
|
day_events = [x[1:] for x in monthly_events[day_of_week] if week_of_month + 1 in x[0]]
|
||||||
# debug_print(day_events, DEBUG)
|
events = process_day(events, year, month, day, day_events)
|
||||||
events = process_day(events, day_events)
|
|
||||||
debug_print("", DEBUG)
|
debug_print("", DEBUG)
|
||||||
return events
|
return events
|
||||||
|
|
||||||
|
|
||||||
def process_months(MONTHS, monthly_events):
|
def process_months(MONTHS, monthly_events, year):
|
||||||
"""process full year of MONTHS and return list of events"""
|
"""process full year of MONTHS and return list of events"""
|
||||||
events = []
|
events = []
|
||||||
for month in range(1, 13):
|
for month in range(1, 13):
|
||||||
debug_print(f"MONTH: {month}", DEBUG)
|
debug_print(f"MONTH: {month}", DEBUG)
|
||||||
for week_of_month, week in enumerate(MONTHS[month]):
|
for week_of_month, week in enumerate(MONTHS[month]):
|
||||||
debug_print(f"{week_of_month} {week}", DEBUG)
|
debug_print(f"{week_of_month} {week}", DEBUG)
|
||||||
events = process_month(MONTHS, monthly_events, week_of_month, week, events)
|
events = process_month(MONTHS, monthly_events, year, month, week_of_month, week, events)
|
||||||
return events
|
return events
|
||||||
|
|
||||||
@click.command()
|
@click.command()
|
||||||
def main():
|
def main():
|
||||||
"""create csv file"""
|
"""create csv file"""
|
||||||
events = process_months(MONTHS, monthly_events)
|
events = process_months(MONTHS, monthly_events, YEAR)
|
||||||
events = sort_events(events)
|
events = sort_events(events)
|
||||||
write_calendar(events)
|
write_calendar(events)
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
Loading…
Reference in New Issue
Block a user