diff options
Diffstat (limited to 'pydis_site/apps/home')
| -rw-r--r-- | pydis_site/apps/home/signals.py | 10 | ||||
| -rw-r--r-- | pydis_site/apps/home/tests/test_signal_listener.py | 10 | 
2 files changed, 10 insertions, 10 deletions
| diff --git a/pydis_site/apps/home/signals.py b/pydis_site/apps/home/signals.py index 4cb4564b..8af48c15 100644 --- a/pydis_site/apps/home/signals.py +++ b/pydis_site/apps/home/signals.py @@ -150,7 +150,7 @@ class AllauthSignalListener:                  social_account = SocialAccount.objects.get(user=user, provider=DiscordProvider.id)                  discord_user = DiscordUser.objects.get(id=int(social_account.uid)) -                mappings = RoleMapping.objects.filter(role__in=discord_user.roles.all()).all() +                mappings = RoleMapping.objects.filter(role__id__in=discord_user.roles).all()                  is_staff = any(m.is_staff for m in mappings)                  if user.is_staff != is_staff: @@ -185,7 +185,7 @@ class AllauthSignalListener:              self.mapping_model_deleted(RoleMapping, instance=old_instance)          accounts = SocialAccount.objects.filter( -            uid__in=(u.id for u in instance.role.user_set.all()) +            uid__in=(u.id for u in DiscordUser.objects.filter(roles__contains=[instance.role.id]))          )          for account in accounts: @@ -198,7 +198,7 @@ class AllauthSignalListener:                  discord_user = DiscordUser.objects.get(id=int(account.uid))                  mappings = RoleMapping.objects.filter( -                    role__in=discord_user.roles.all() +                    role__id__in=discord_user.roles                  ).exclude(id=instance.id).all()                  is_staff = any(m.is_staff for m in mappings) @@ -289,9 +289,9 @@ class AllauthSignalListener:              new_groups = []              is_staff = False -            for role in user.roles.all(): +            for role in user.roles:                  try: -                    mapping = mappings.get(role=role) +                    mapping = mappings.get(role__id=role)                  except RoleMapping.DoesNotExist:                      continue  # No mapping exists diff --git a/pydis_site/apps/home/tests/test_signal_listener.py b/pydis_site/apps/home/tests/test_signal_listener.py index fb9a17db..d99d81a5 100644 --- a/pydis_site/apps/home/tests/test_signal_listener.py +++ b/pydis_site/apps/home/tests/test_signal_listener.py @@ -89,7 +89,7 @@ class SignalListenerTests(TestCase):              discriminator=0,          ) -        cls.discord_unmapped.roles.add(cls.unmapped_role) +        cls.discord_unmapped.roles.append(cls.unmapped_role.id)          cls.discord_unmapped.save()          cls.discord_not_in_guild = DiscordUser.objects.create( @@ -105,7 +105,7 @@ class SignalListenerTests(TestCase):              discriminator=0,          ) -        cls.discord_admin.roles.set([cls.admin_role]) +        cls.discord_admin.roles = [cls.admin_role.id]          cls.discord_admin.save()          cls.discord_moderator = DiscordUser.objects.create( @@ -114,7 +114,7 @@ class SignalListenerTests(TestCase):              discriminator=0,          ) -        cls.discord_moderator.roles.set([cls.moderator_role]) +        cls.discord_moderator.roles = [cls.moderator_role.id]          cls.discord_moderator.save()          cls.django_user_discordless = DjangoUser.objects.create(username="no-discord") @@ -333,7 +333,7 @@ class SignalListenerTests(TestCase):          handler._apply_groups(self.discord_admin, self.social_admin)          self.assertEqual(self.django_user_discordless.groups.all().count(), 0) -        self.discord_admin.roles.add(self.admin_role) +        self.discord_admin.roles.append(self.admin_role.id)          self.discord_admin.save()      def test_apply_groups_moderator(self): @@ -360,7 +360,7 @@ class SignalListenerTests(TestCase):          handler._apply_groups(self.discord_moderator, self.social_moderator)          self.assertEqual(self.django_user_discordless.groups.all().count(), 0) -        self.discord_moderator.roles.add(self.moderator_role) +        self.discord_moderator.roles.append(self.moderator_role.id)          self.discord_moderator.save()      def test_apply_groups_other(self): | 
