add a confirm if place signal on team reg

timetoconfirm
Raz 7 months ago
parent 03e2b874e8
commit b9eb6382ca
  1. 10
      tournaments/models/team_registration.py
  2. 7
      tournaments/signals.py

@ -342,6 +342,16 @@ class TeamRegistration(SideStoreModel):
player.registration_status = RegistrationStatus.CONFIRMED player.registration_status = RegistrationStatus.CONFIRMED
player.save() player.save()
def confirm_if_placed(self):
if self.needs_confirmation() is False:
return
if self.group_stage or self.round or self.confirmation_date is not None:
for player in self.players_sorted_by_rank:
if player.registration_status is not RegistrationStatus.CONFIRMED:
player.time_to_confirm = None
player.registration_status = RegistrationStatus.CONFIRMED
player.save()
# Add to TeamRegistration class in team_registration.py # Add to TeamRegistration class in team_registration.py
def get_payment_status(self): def get_payment_status(self):
""" """

@ -150,6 +150,7 @@ def warn_team_walkout_status_change(sender, instance, **kwargs):
except TeamRegistration.DoesNotExist: except TeamRegistration.DoesNotExist:
return return
previous_teams = instance.tournament.teams(True) previous_teams = instance.tournament.teams(True)
current_teams = instance.tournament.teams(True, instance) current_teams = instance.tournament.teams(True, instance)
previous_retrieved_teams = [team for team in previous_teams if team.team_registration.id == previous_instance.id] previous_retrieved_teams = [team for team in previous_teams if team.team_registration.id == previous_instance.id]
@ -188,3 +189,9 @@ def warn_team_walkout_status_change(sender, instance, **kwargs):
first_waiting_list_team.set_time_to_confirm(ttc) first_waiting_list_team.set_time_to_confirm(ttc)
notify_team(first_waiting_list_team, instance.tournament, TeamEmailType.OUT_OF_WAITING_LIST) notify_team(first_waiting_list_team, instance.tournament, TeamEmailType.OUT_OF_WAITING_LIST)
@receiver(post_save, sender=TeamRegistration)
def team_confirm_if_placed(sender, instance, **kwargs):
if instance.id is None or instance.tournament is None or instance.tournament.enable_online_registration is False:
return
instance.confirm_if_placed()

Loading…
Cancel
Save