diff --git a/tournaments/services/email_service.py b/tournaments/services/email_service.py index 7f031e3..ab1ff32 100644 --- a/tournaments/services/email_service.py +++ b/tournaments/services/email_service.py @@ -4,8 +4,7 @@ from django.urls import reverse class TournamentEmailService: @staticmethod - def send_registration_confirmation(request, tournament, team_registration): - waiting_list_position = tournament.get_waiting_list_position() + def send_registration_confirmation(request, tournament, team_registration, waiting_list_position): tournament_details_str = tournament.build_tournament_details_str() name_str = tournament.build_name_details_str() @@ -122,6 +121,7 @@ class TournamentEmailService: body=email_body, to=[captain.email] ) + email.send() if other_player.email is not None: diff --git a/tournaments/services/tournament_registration.py b/tournaments/services/tournament_registration.py index c5d7168..42bbd88 100644 --- a/tournaments/services/tournament_registration.py +++ b/tournaments/services/tournament_registration.py @@ -64,6 +64,8 @@ class TournamentRegistrationService: if not self.context['team_form'].is_valid(): return + waiting_list_position = self.tournament.get_waiting_list_position() + team_registration = self.repository.create_team_registration( self.tournament, timezone.now().replace(microsecond=0) @@ -79,7 +81,8 @@ class TournamentRegistrationService: self.email_service.send_registration_confirmation( self.request, self.tournament, - team_registration + team_registration, + waiting_list_position ) self.clear_session_data() diff --git a/tournaments/signals.py b/tournaments/signals.py index 2c2eabe..4fdc747 100644 --- a/tournaments/signals.py +++ b/tournaments/signals.py @@ -62,6 +62,7 @@ def send_discord_message(webhook_url, content): def unregister_team(sender, instance, **kwargs): team_registration = instance tournament=instance.tournament + first_waiting_list_team = tournament.first_waiting_list_team() print("Unregistering team from tournament") unregistered_team = UnregisteredTeam.objects.create( tournament=tournament, @@ -82,8 +83,6 @@ def unregister_team(sender, instance, **kwargs): licence_id=player.licence_id, ) - first_waiting_list_team = tournament.first_waiting_list_team() - if first_waiting_list_team: waiting_captain = None waiting_other_player = None @@ -93,14 +92,14 @@ def unregister_team(sender, instance, **kwargs): else: waiting_other_player = player - if waiting_captain and waiting_captain.source is PlayerDataSource.ONLINE_REGISTRATION and waiting_captain.email: + if waiting_captain is not None and waiting_captain.source == PlayerDataSource.ONLINE_REGISTRATION and waiting_captain.email is not None: TournamentEmailService.send_out_of_waiting_list_confirmation( waiting_captain, tournament, waiting_other_player ) - if captain and captain.source is PlayerDataSource.ONLINE_REGISTRATION and captain.email: + if captain is not None and captain.source == PlayerDataSource.ONLINE_REGISTRATION and captain.email is not None: TournamentEmailService.send_unregistration_confirmation( captain, tournament,