From cd627bb20fa14fde0aa3cdaf8745826bb99ac7ae Mon Sep 17 00:00:00 2001 From: Ryan Trinh Date: Sat, 25 Oct 2025 20:58:21 -0700 Subject: [PATCH 1/2] Fixed the GCal access level not updating --- hknweb/events/models/event.py | 39 ++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/hknweb/events/models/event.py b/hknweb/events/models/event.py index 2e4bf181..adb9a136 100644 --- a/hknweb/events/models/event.py +++ b/hknweb/events/models/event.py @@ -108,17 +108,36 @@ def save(self, *args, **kwargs): calendar_id=calendar_id, ) else: - gcal.update_event( - self.google_calendar_event_id, - summary=self.name, - location=self.location, - description=self.description, - start=self.start_time.isoformat(), - end=self.end_time.isoformat(), - calendar_id=calendar_id, + old_event = Event.objects.get(pk=self.pk) + old_calendar_id = GCalAccessLevelMapping.get_calendar_id( + old_event.access_level ) - for r in self.rsvp_set.all(): - r.save() + + if old_calendar_id != calendar_id: + gcal.delete_event( + self.google_calendar_event_id, calendar_id=old_calendar_id + ) + + self.google_calendar_event_id = gcal.create_event( + self.name, + self.location, + self.description, + self.start_time.isoformat(), + self.end_time.isoformat(), + calendar_id=calendar_id, + ) + else: + gcal.update_event( + self.google_calendar_event_id, + summary=self.name, + location=self.location, + description=self.description, + start=self.start_time.isoformat(), + end=self.end_time.isoformat(), + calendar_id=calendar_id, + ) + for r in self.rsvp_set.all(): + r.save() super().save(*args, **kwargs) From e94be6f41744b5aae2ecf747c63e19e2c7c67923 Mon Sep 17 00:00:00 2001 From: Ryan Trinh Date: Sat, 25 Oct 2025 21:01:30 -0700 Subject: [PATCH 2/2] Fixed missing RSVPs --- hknweb/events/models/event.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hknweb/events/models/event.py b/hknweb/events/models/event.py index adb9a136..1049da31 100644 --- a/hknweb/events/models/event.py +++ b/hknweb/events/models/event.py @@ -136,8 +136,8 @@ def save(self, *args, **kwargs): end=self.end_time.isoformat(), calendar_id=calendar_id, ) - for r in self.rsvp_set.all(): - r.save() + for r in self.rsvp_set.all(): + r.save() super().save(*args, **kwargs)