mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-14 23:10:15 +02:00
Trigger ts group update on AuthTS changes
This commit is contained in:
parent
428f044f7f
commit
f615f9354a
@ -1,4 +1,6 @@
|
||||
from django.db.models.signals import m2m_changed
|
||||
from django.db.models.signals import post_save
|
||||
from django.db.models.signals import post_delete
|
||||
from django.dispatch import receiver
|
||||
from django.contrib.auth.models import User
|
||||
import logging
|
||||
@ -9,6 +11,7 @@ from .tasks import update_ipboard_groups
|
||||
from .tasks import update_discord_groups
|
||||
from .tasks import update_teamspeak3_groups
|
||||
from authentication.models import AuthServicesInfo
|
||||
from services.models import AuthTS
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@ -30,3 +33,23 @@ def m2m_changed_user_groups(sender, instance, action, *args, **kwargs):
|
||||
update_discord_groups.delay(instance.pk)
|
||||
if auth.mumble_username:
|
||||
update_mumble_groups.delay(instance.pk)
|
||||
|
||||
def trigger_all_ts_update():
|
||||
for auth in AuthServicesInfo.objects.filter(teamspeak3_uid__isnull=False):
|
||||
update_teamspeak3_groups.delay(auth.user)
|
||||
|
||||
@receiver(m2m_changed, sender=AuthTS.ts_group.through)
|
||||
def m2m_changed_authts_group(sender, instance, action, *args, **kwargs):
|
||||
logger.debug("Received m2m_changed from %s ts_group with action %s" % (instance, action))
|
||||
if action=="post_add" or action=="post_remove":
|
||||
trigger_all_ts_update()
|
||||
|
||||
@receiver(post_save, sender=AuthTS)
|
||||
def post_save_authts(sender, instance, *args, **kwargs):
|
||||
logger.debug("Received post_save from %s" % instance)
|
||||
trigger_all_ts_update()
|
||||
|
||||
@receiver(post_delete, sender=AuthTS)
|
||||
def post_delete_authts(sender, instance, *args, **kwargs):
|
||||
logger.debug("Received post_delete signal from %s" % instance)
|
||||
trigger_all_ts_update()
|
||||
|
Loading…
x
Reference in New Issue
Block a user