From 6456257ebc95ba606565da87e294b4e2e364a2a2 Mon Sep 17 00:00:00 2001 From: Laurent Date: Wed, 12 Jun 2024 09:59:22 +0200 Subject: [PATCH] Adds signal for user creation --- tournaments/models/custom_user.py | 2 +- tournaments/signals.py | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/tournaments/models/custom_user.py b/tournaments/models/custom_user.py index b0be0a0..1c082a9 100644 --- a/tournaments/models/custom_user.py +++ b/tournaments/models/custom_user.py @@ -42,4 +42,4 @@ class CustomUser(AbstractUser): 'group_stage_match_format_preference', 'loser_bracket_match_format_preference'] def __str__(self): - return self.username + return f"{self.username} : {self.first_name} {self.last_name} | {self.email} | {self.phone}" diff --git a/tournaments/signals.py b/tournaments/signals.py index f9c3029..712d711 100644 --- a/tournaments/signals.py +++ b/tournaments/signals.py @@ -4,7 +4,7 @@ from django.db.models.signals import post_save from django.dispatch import receiver from django.conf import settings -from .models import Club, FailedApiCall +from .models import Club, FailedApiCall, CustomUser import requests def generate_unique_code(): @@ -24,15 +24,19 @@ DISCORD_WEBHOOK_URL = 'https://discord.com/api/webhooks/1248191778134163486/sSoT @receiver(post_save, sender=FailedApiCall) def notify_discord_on_create(sender, instance, created, **kwargs): - if created: + notify_object_creation_on_discord(created, instance) + +@receiver(post_save, sender=CustomUser) +def notify_user_creation_on_discord(sender, instance, created, **kwargs): + notify_object_creation_on_discord(created, instance) +def notify_object_creation_on_discord(created, instance): + if created: default_db_engine = settings.DATABASES['default']['ENGINE'] - print(default_db_engine) if default_db_engine != 'django.db.backends.sqlite3': - message = f'New FailedApiCall created: {instance}' + message = f'New {instance.__class__.__name__} created: {instance}' send_discord_message(DISCORD_WEBHOOK_URL, message) - def send_discord_message(webhook_url, content): data = { "content": content