diff --git a/calendar.go b/calendar.go index 684d51b..5120ecb 100644 --- a/calendar.go +++ b/calendar.go @@ -95,7 +95,10 @@ func updateDay(calId string, date time.Time, classes []Class) error { continue } - ev := class.buildEvent(date) + ev, err := class.buildEvent(date) + if err != nil { + return err + } old := eventMap[ev.Summary] diff --git a/class.go b/class.go index 434256b..05b4fae 100644 --- a/class.go +++ b/class.go @@ -40,7 +40,7 @@ func (c Class) tagsMatch(t time.Time) bool { return true } -func (c Class) buildEvent(t time.Time) *calendar.Event { +func (c Class) buildEvent(t time.Time) (*calendar.Event, error) { dateStr := t.Format("2006-01-02") ev := &calendar.Event{ @@ -56,12 +56,11 @@ func (c Class) buildEvent(t time.Time) *calendar.Event { Attendees: []*calendar.EventAttendee{}, } - attendees := c.Students - if len(attendees) == 0 { - attendees = allStudents + if len(c.Students) == 0 { + return nil, fmt.Errorf("class with no students: %s", c.Summary) } - for _, student := range attendees { + for _, student := range c.Students { ev.Attendees = append( ev.Attendees, &calendar.EventAttendee{ @@ -74,5 +73,5 @@ func (c Class) buildEvent(t time.Time) *calendar.Event { ev.Description = fmt.Sprintf(`Zoom: %s`, c.Zoom) } - return ev + return ev, nil } diff --git a/classes-hummingbirds.go b/classes-hummingbirds.go index 03547f3..ed68ba4 100644 --- a/classes-hummingbirds.go +++ b/classes-hummingbirds.go @@ -4,12 +4,12 @@ import ( "time" ) -var allStudents = []string{ +var allHummingbirds = []string{ "adabelle.pratt@heliosns.org", "oliver.park@heliosns.org", } -var greenStudents = []string{ +var greenHummingbirds = []string{ "adabelle.pratt@heliosns.org", "oliver.park@heliosns.org", } @@ -21,6 +21,7 @@ var classesHummingbirds = []Class{ End: "09:00", Days: weekDaysButFriday, Zoom: "https://us02web.zoom.us/j/2274643506?pwd=Nm5NUXMwOVJKbEUzNE5VSkZCQzJ2UT09", + Students: allHummingbirds, }, Class{ Summary: "🏫 Community Meeting", @@ -28,6 +29,7 @@ var classesHummingbirds = []Class{ End: "09:00", Days: []time.Weekday{Friday}, Zoom: "https://zoom.us/j/96371462107", + Students: allHummingbirds, }, Class{ Summary: "🔢 Math (Claudia & Rachel)", @@ -45,6 +47,7 @@ var classesHummingbirds = []Class{ Start: "09:40", End: "10:00", Days: weekDays, + Students: allHummingbirds, }, Class{ Summary: "🐛 Theme", @@ -52,6 +55,7 @@ var classesHummingbirds = []Class{ End: "11:30", Days: weekDaysButFriday, Zoom: "https://us02web.zoom.us/j/2274643506?pwd=Nm5NUXMwOVJKbEUzNE5VSkZCQzJ2UT09", + Students: allHummingbirds, }, Class{ Summary: "❤️ SEL", @@ -59,6 +63,7 @@ var classesHummingbirds = []Class{ End: "11:15", Days: []time.Weekday{Friday}, Zoom: "https://us02web.zoom.us/j/2274643506?pwd=Nm5NUXMwOVJKbEUzNE5VSkZCQzJ2UT09", + Students: allHummingbirds, }, Class{ Summary: "📖 Literacy (Green)", @@ -66,7 +71,7 @@ var classesHummingbirds = []Class{ End: "12:00", Days: []time.Weekday{Monday, Wednesday}, Zoom: "https://us02web.zoom.us/j/2274643506?pwd=Nm5NUXMwOVJKbEUzNE5VSkZCQzJ2UT09", - Students: greenStudents, + Students: greenHummingbirds, }, Class{ Summary: "🤸 PE (Yellow/Green)", @@ -74,7 +79,7 @@ var classesHummingbirds = []Class{ End: "12:00", Days: []time.Weekday{Tuesday}, Zoom: "https://zoom.us/j/97472507748?pwd=cW5vUFhyUjNTS2toWlZGN254U1ZqZz09", - Students: greenStudents, + Students: greenHummingbirds, }, Class{ Summary: "💡 iLab (Yellow/Green)", @@ -82,7 +87,7 @@ var classesHummingbirds = []Class{ End: "12:00", Days: []time.Weekday{Thursday}, Zoom: "https://us02web.zoom.us/j/86403635026?pwd=S2t1WkN2dnNJZlFkejdEbjRsUmNNUT09", - Students: greenStudents, + Students: greenHummingbirds, }, Class{ Summary: "📚 Library", @@ -90,6 +95,7 @@ var classesHummingbirds = []Class{ End: "12:00", Days: []time.Weekday{Friday}, Zoom: "https://us02web.zoom.us/my/helioslibrary?pwd=cWd4RjNqNXZXNjRjM2dYQVhYeS9Xdz09", + Students: allHummingbirds, }, Class{ Summary: "🇲🇽 Spanish", @@ -117,7 +123,7 @@ var classesHummingbirds = []Class{ End: "13:30", Days: []time.Weekday{Friday}, Zoom: "https://zoom.us/j/96449009866?pwd=dlBHYUwxaDRReFhjVmRKZ0Vhdjdkdz09", - Students: greenStudents, + Students: greenHummingbirds, }, Class{ Summary: "🎨 Art (Blue/Green)", @@ -125,7 +131,7 @@ var classesHummingbirds = []Class{ End: "14:45", Days: []time.Weekday{Friday}, Zoom: "https://us02web.zoom.us/j/85434303018?pwd=c3EzQVNCMmk0L0o4bVF4QW85RTZHZz09", - Students: greenStudents, + Students: greenHummingbirds, }, Class{ Summary: "👋 Closing Circle", @@ -133,6 +139,7 @@ var classesHummingbirds = []Class{ End: "15:15", Days: []time.Weekday{Friday}, Zoom: "https://us02web.zoom.us/j/2274643506?pwd=Nm5NUXMwOVJKbEUzNE5VSkZCQzJ2UT09", + Students: allHummingbirds, }, Class{ Summary: "🍎 Rachel & Oliver",