documented EVENT_LIST
This commit is contained in:
		
							parent
							
								
									fe5b7eaae0
								
							
						
					
					
						commit
						0e8637edff
					
				
							
								
								
									
										336
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										336
									
								
								main.py
									
									
									
									
									
								
							| @ -10,8 +10,31 @@ from datetime import datetime | ||||
| import sys | ||||
| import click | ||||
| from dataclass_csv import DataclassWriter | ||||
| from events import EVENT_LIST, YEAR | ||||
| 
 | ||||
| """ | ||||
| build a list of months / weeks / day of the month in those weeks | ||||
|    months 1-12, weeks 0-5  days of week 5 6 are the 1st and 2nd of month | ||||
|    MONTHS[1]    [0]        [ 0 0 0 0 0 1 2 ] | ||||
| 
 | ||||
| due to how months work | ||||
|   week 0 can have null days (represented by 0's) | ||||
|   weeks 1 - 4 will have all 7 days present | ||||
|   week 5 may have 7 days or nulls | ||||
|   week 6 can have a monday and/or tuesday in them if the 1st falls on a | ||||
|          saturday or sunday in week 0 | ||||
| 
 | ||||
| EVENT_LIST has weeks as 1-6 while MONTHS has weeks as 0-5, offsetting will | ||||
|   be necessary | ||||
| """ | ||||
| MONTHS: dict[int, list[list[int]]] | ||||
| MONTHS = dict(enumerate([calendar.monthcalendar(YEAR, month) for month in | ||||
|                          range(1, 13)], start=1)) | ||||
| 
 | ||||
| """ convert EVENT_LIST into EVENTS """ | ||||
| events = [[] for _ in range(7)] | ||||
| for event in EVENT_LIST: | ||||
|     events[event[0]].append(event[1:]) | ||||
| 
 | ||||
| @dataclass | ||||
| class Event(): | ||||
| @ -33,12 +56,6 @@ class Event(): | ||||
|     show_map: str | ||||
|     event_description: str | ||||
| 
 | ||||
| 
 | ||||
| YEAR: int = 2024 | ||||
| MONTHS: dict[int, list[list[int]]] | ||||
| MONTHS = dict(enumerate([calendar.monthcalendar(YEAR, month) for month in | ||||
|                          range(1, 13)], start=1)) | ||||
| 
 | ||||
| def suffix(day: int) -> str: | ||||
|     """convert day to suffix""" | ||||
|     result: str = 'th' | ||||
| @ -81,313 +98,6 @@ def add_event(events: list[Event], | ||||
|                   description) | ||||
|     events.append(event) | ||||
| 
 | ||||
| def add_tuesdays(events: list[Event], | ||||
|                 year: int, | ||||
|                 month: int, | ||||
|                 weeks: list[list[int]]) -> None: | ||||
|     """add Tuesday events to calendar""" | ||||
|     days = [day[1] for day in weeks if day[1]] | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Grief Share 6:00pm", | ||||
|               "Grief Share", | ||||
|               "", | ||||
|               datetime(year, month, days[0], 19, 00, 00), | ||||
|               datetime(year, month, days[0], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Grief Share 6:00pm", | ||||
|               "Grief Share", | ||||
|               "", | ||||
|               datetime(year, month, days[1], 19, 00, 00), | ||||
|               datetime(year, month, days[1], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Grief Share 6:00pm", | ||||
|               "Grief Share", | ||||
|               "", | ||||
|               datetime(year, month, days[2], 19, 00, 00), | ||||
|               datetime(year, month, days[2], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Grief Share 6:00pm", | ||||
|               "Grief Share", | ||||
|               "", | ||||
|               datetime(year, month, days[3], 19, 00, 00), | ||||
|               datetime(year, month, days[3], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     if len(days) == 5: | ||||
|         add_event(events, | ||||
|                   "Grief Share 6:00pm", | ||||
|                   "Grief Share", | ||||
|                   "", | ||||
|                   datetime(year, month, days[4], 19, 00, 00), | ||||
|                   datetime(year, month, days[4], 21, 00, 00), | ||||
|                  ) | ||||
| 
 | ||||
| 
 | ||||
| def add_wednesdays(events: list[Event], | ||||
|                 year: int, | ||||
|                 month: int, | ||||
|                 weeks: list[list[int]]) -> None: | ||||
|     """add Wednesday events to calendar""" | ||||
|     days = [day[2] for day in weeks if day[2]] | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Mid Week Service 6:00pm", | ||||
|               "Mid Week Service", | ||||
|               "", | ||||
|               datetime(year, month, days[0], 19, 00, 00), | ||||
|               datetime(year, month, days[0], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Mid Week Service 6:00pm", | ||||
|               "Mid Week Service", | ||||
|               "", | ||||
|               datetime(year, month, days[1], 19, 00, 00), | ||||
|               datetime(year, month, days[1], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Mid Week Service 6:00pm", | ||||
|               "Mid Week Service", | ||||
|               "", | ||||
|               datetime(year, month, days[2], 19, 00, 00), | ||||
|               datetime(year, month, days[2], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Mid Week Service 6:00pm", | ||||
|               "Mid Week Service", | ||||
|               "", | ||||
|               datetime(year, month, days[3], 19, 00, 00), | ||||
|               datetime(year, month, days[3], 21, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     if len(days) == 5: | ||||
|         add_event(events, | ||||
|                   "Mid Week Service 6:00pm", | ||||
|                   "Mid Week Service", | ||||
|                   "", | ||||
|                   datetime(year, month, days[4], 19, 00, 00), | ||||
|                   datetime(year, month, days[4], 21, 00, 00), | ||||
|                  ) | ||||
| 
 | ||||
| def add_thursdays(events: list[Event], | ||||
|                 year: int, | ||||
|                 month: int, | ||||
|                 days: list[list[int]]) -> None: | ||||
|     """add Thursday events to calendar""" | ||||
|     days = [day[3] for day in days if day[3]] | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Woman’s Meeting 10:00am", | ||||
|               "Woman’s Meeting", | ||||
|               "Woman 2 Woman Bible Study", | ||||
|               datetime(year, month, days[0], 10, 00, 00), | ||||
|               datetime(year, month, days[0], 11, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Woman’s Meeting 10:00am", | ||||
|               "Woman’s Meeting", | ||||
|               "Woman 2 Woman Bible Study", | ||||
|               datetime(year, month, days[1], 10, 00, 00), | ||||
|               datetime(year, month, days[1], 11, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Woman’s Meeting 10:00am", | ||||
|               "Woman’s Meeting", | ||||
|               "Woman 2 Woman Bible Study", | ||||
|               datetime(year, month, days[2], 10, 00, 00), | ||||
|               datetime(year, month, days[2], 11, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Woman’s Meeting 10:00am", | ||||
|               "Woman’s Meeting", | ||||
|               "Woman 2 Woman Bible Study", | ||||
|               datetime(year, month, days[3], 10, 00, 00), | ||||
|               datetime(year, month, days[3], 11, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     if len(days) == 5: | ||||
|         add_event(events, | ||||
|                   "Woman’s Meeting 10:00am", | ||||
|                   "Woman’s Meeting", | ||||
|                   "Woman 2 Woman Bible Study", | ||||
|                   datetime(year, month, days[4], 10, 00, 00), | ||||
|                   datetime(year, month, days[4], 11, 00, 00), | ||||
|                  ) | ||||
| 
 | ||||
| 
 | ||||
| def add_fridays(events: list[Event], | ||||
|                 year: int, | ||||
|                 month: int, | ||||
|                 days: list[list[int]]) -> None: | ||||
|     """add Friday events to calendar""" | ||||
|     days = [day[4] for day in days if day[4]] | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "For Men Only 6:30pm", | ||||
|               "Men’s Meeting", | ||||
|               "Mens Bible Stude", | ||||
|               datetime(year, month, days[0], 18, 30, 00), | ||||
|               datetime(year, month, days[0], 19, 30, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "For Men Only 6:30pm", | ||||
|               "Men’s Meeting", | ||||
|               "Mens Bible Stude", | ||||
|               datetime(year, month, days[1], 18, 30, 00), | ||||
|               datetime(year, month, days[1], 19, 30, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "For Men Only 6:30pm", | ||||
|               "Men’s Meeting", | ||||
|               "Mens Bible Stude", | ||||
|               datetime(year, month, days[2], 18, 30, 00), | ||||
|               datetime(year, month, days[2], 19, 30, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "For Men Only 6:30pm", | ||||
|               "Men’s Meeting", | ||||
|               "Mens Bible Stude", | ||||
|               datetime(year, month, days[3], 18, 30, 00), | ||||
|               datetime(year, month, days[3], 19, 30, 00), | ||||
|              ) | ||||
| 
 | ||||
|     if len(days) == 5: | ||||
|         add_event(events, | ||||
|                   "Family Movie Night 7:00pm", | ||||
|                   "Movie Night", | ||||
|                   "Movie to be announced", | ||||
|                   datetime(year, month, days[4], 19, 00, 00), | ||||
|                   datetime(year, month, days[4], 21, 00, 00), | ||||
|                  ) | ||||
| 
 | ||||
| def add_saturdays(events: list[Event], | ||||
|                 year: int, | ||||
|                 month: int, | ||||
|                 weeks: list[list[int]]) -> None: | ||||
|     """add Saturday events to calendar""" | ||||
|     days = [day[5] for day in weeks if day[5]] | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Men's Breakfast 8:00am", | ||||
|               "Men's Meeting", | ||||
|               "", | ||||
|               datetime(year, month, days[1], 8, 00, 00), | ||||
|               datetime(year, month, days[1], 10, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
| def add_sundays(events: list[Event], | ||||
|                 year: int, | ||||
|                 month: int, | ||||
|                 weeks: list[list[int]]) -> None: | ||||
|     """add Sunday events to calendar""" | ||||
|     days = [day[6] for day in weeks if day[6]] | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Evening Service 6:00pm", | ||||
|               "Sunday Eventing Service", | ||||
|               "Starts at 6:00 PM.", | ||||
|               datetime(year, month, days[0], 18, 00, 00), | ||||
|               datetime(year, month, days[0], 19, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Service 10:00am", | ||||
|               "Sunday Service", | ||||
|               "Prayer Room open from 8:30 AM to 9:30 AM. Worship Service " | ||||
|               "starts at 10:00 AM. First Sunday of the month is " | ||||
|               "Missions Sunday.", | ||||
|               datetime(year, month, days[0], 10, 00, 00), | ||||
|               datetime(year, month, days[0], 12, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Evening Service 6:00pm", | ||||
|               "Sunday Eventing Service", | ||||
|               "Starts at 6:00 PM.", | ||||
|               datetime(year, month, days[1], 18, 00, 00), | ||||
|               datetime(year, month, days[1], 19, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Service 10:00am", | ||||
|               "Sunday Service", | ||||
|               "Prayer Room open from 8:30 AM to 9:30 AM. Worship Service " | ||||
|               "starts at 10:00 AM. Second Sunday of the month is " | ||||
|               "Baptism Sunday.", | ||||
|               datetime(year, month, days[1], 10, 00, 00), | ||||
|               datetime(year, month, days[1], 12, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Evening Service 6:00pm", | ||||
|               "Sunday Eventing Service", | ||||
|               "Starts at 6:00 PM.", | ||||
|               datetime(year, month, days[2], 18, 00, 00), | ||||
|               datetime(year, month, days[2], 19, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Service 10:00am", | ||||
|               "Sunday Service", | ||||
|               "Prayer Room open from 8:30 AM to 9:30 AM. Worship Service " | ||||
|               "starts at 10:00 AM. Third Sunday of the month is " | ||||
|               "Communion Sunday.", | ||||
|               datetime(year, month, days[2], 10, 00, 00), | ||||
|               datetime(year, month, days[2], 12, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Evening Service 6:00pm", | ||||
|               "Sunday Eventing Service", | ||||
|               "Starts at 6:00 PM.", | ||||
|               datetime(year, month, days[3], 18, 00, 00), | ||||
|               datetime(year, month, days[3], 19, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     add_event(events, | ||||
|               "Sunday Service 10:00am", | ||||
|               "Sunday Service", | ||||
|               "Prayer Room open from 8:30 AM to 9:30 AM. Worship Service " | ||||
|               "starts at 10:00 AM. Fourth Sunday of the month is " | ||||
|               "Coins for Kids Sunday.", | ||||
|               datetime(year, month, days[3], 10, 00, 00), | ||||
|               datetime(year, month, days[3], 12, 00, 00), | ||||
|              ) | ||||
| 
 | ||||
|     if len(days) == 5: | ||||
|         add_event(events, | ||||
|                   "Sunday Evening Service 6:00pm", | ||||
|                   "Sunday Eventing Service", | ||||
|                   "Starts at 6:00 PM.", | ||||
|                   datetime(year, month, days[4], 18, 00, 00), | ||||
|                   datetime(year, month, days[4], 19, 00, 00), | ||||
|                  ) | ||||
| 
 | ||||
|         add_event(events, | ||||
|                   "Sunday Service 10:00am", | ||||
|                   "Sunday Service", | ||||
|                   "Prayer Room open from 8:30 AM to 9:30 AM. Worship Service " | ||||
|                   "starts at 10:00 AM. Fifth Sunday of the month is " | ||||
|                   "Potluck Sunday", | ||||
|                   datetime(year, month, days[4], 10, 00, 00), | ||||
|                   datetime(year, month, days[4], 12, 00, 00), | ||||
|                  ) | ||||
| 
 | ||||
| 
 | ||||
| def write_calendar(events: list[Event]) -> None: | ||||
|     """write calendar to csv file""" | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user