diff --git a/apps/resources/views.py b/apps/resources/views.py index f6e513e..a8c97cd 100644 --- a/apps/resources/views.py +++ b/apps/resources/views.py @@ -25,7 +25,7 @@ def get(self, request): return Response( { - category.lower(): ResourceSerializer(resources, many=True).data + category: ResourceSerializer(resources, many=True).data for category, resources in sorted_resources.items() } ) diff --git a/apps/users/models.py b/apps/users/models.py index fc913db..729dc53 100644 --- a/apps/users/models.py +++ b/apps/users/models.py @@ -194,9 +194,14 @@ def set_membership(self, short): return if short is None: + self.roles.clear() + self.status = Status.NON_MEMBER self.endorsements = None else: + self.roles.remove(*self.roles.filter(short__in=["HC", "VC"])) + self.add_role(short) + if self.status == Status.NON_MEMBER: self.status = Status.ACTIVE self.endorsements = default_endorsements() @@ -213,9 +218,6 @@ def set_membership(self, short): self.save() - self.roles.remove(*self.roles.filter(short__in=["HC", "VC"])) - self.add_role(short) - def update_loa_status(self): loa_filter = self.loas.filter(start__lt=date.today(), approved=True)