aboutsummaryrefslogtreecommitdiffstats
path: root/pydis_site
diff options
context:
space:
mode:
authorGravatar Gareth Coles <[email protected]>2019-10-11 19:26:13 +0100
committerGravatar Gareth Coles <[email protected]>2019-10-11 19:26:13 +0100
commitf6db7cc458e63a6c88a3142110bb4f744a4c5920 (patch)
treeaa68e39d909ca83dc08e80f1f11a460fc7fa3a3d /pydis_site
parentClarify _apply_groups kwarg (Thanks, @jchristgit) (diff)
Simplify signals.py as per @jchristgit's review
Diffstat (limited to 'pydis_site')
-rw-r--r--pydis_site/apps/home/signals.py16
1 files changed, 6 insertions, 10 deletions
diff --git a/pydis_site/apps/home/signals.py b/pydis_site/apps/home/signals.py
index f0be3db2..1d094d50 100644
--- a/pydis_site/apps/home/signals.py
+++ b/pydis_site/apps/home/signals.py
@@ -146,14 +146,10 @@ class SignalListener:
except RoleMapping.DoesNotExist:
continue # No mapping exists
- remove_groups = [
- mapping.group for mapping in mappings if mapping.group not in new_groups
- ]
+ account.user.groups.add(
+ group for group in new_groups if group not in current_groups
+ )
- add_groups = [group for group in new_groups if group not in current_groups]
-
- if remove_groups:
- account.user.groups.remove(*remove_groups)
-
- if add_groups:
- account.user.groups.add(*add_groups)
+ account.user.groups.remove(
+ mapping.group for mapping in mappings if mapping.group not in new_groups
+ )