mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-13 22:40:16 +02:00
Capture permission changes from proxy model on admin
This commit is contained in:
parent
3ed0f873f3
commit
08cf8ae1d6
@ -9,6 +9,7 @@ from django.dispatch import receiver
|
||||
from .hooks import ServicesHook
|
||||
from .tasks import disable_user
|
||||
from allianceauth.authentication.admin import User as AdminUser
|
||||
from allianceauth.groupmanagement.admin import Group as AdminGroup
|
||||
|
||||
from allianceauth.authentication.models import State, UserProfile
|
||||
from allianceauth.authentication.signals import state_changed
|
||||
@ -56,7 +57,6 @@ def m2m_changed_user_permissions(sender, instance, action, *args, **kwargs):
|
||||
transaction.on_commit(lambda: validate_all_services())
|
||||
|
||||
|
||||
@receiver(m2m_changed, sender=Group.permissions.through)
|
||||
def m2m_changed_group_permissions(sender, instance, action, pk_set, *args, **kwargs):
|
||||
logger.debug("Received m2m_changed from group %s permissions with action %s" % (instance, action))
|
||||
if instance.pk and (action == "post_remove" or action == "post_clear"):
|
||||
@ -89,6 +89,10 @@ def m2m_changed_group_permissions(sender, instance, action, pk_set, *args, **kwa
|
||||
logger.debug("Permission change for group {} was not service permission, ignoring".format(instance))
|
||||
|
||||
|
||||
m2m_changed.connect(m2m_changed_group_permissions, sender=Group.permissions.through)
|
||||
m2m_changed.connect(m2m_changed_group_permissions, sender=AdminGroup.permissions.through)
|
||||
|
||||
|
||||
@receiver(m2m_changed, sender=State.permissions.through)
|
||||
def m2m_changed_state_permissions(sender, instance, action, pk_set, *args, **kwargs):
|
||||
logger.debug("Received m2m_changed from state %s permissions with action %s" % (instance, action))
|
||||
|
Loading…
x
Reference in New Issue
Block a user