mirror of
https://gitlab.com/animath/si/plateforme.git
synced 2024-12-25 07:02:22 +00:00
Update information about draw with the 2024 changes
Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
This commit is contained in:
parent
58608ea5ff
commit
3ca0148934
@ -502,8 +502,9 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||||||
msg = "Les résultats des dés sont les suivants : "
|
msg = "Les résultats des dés sont les suivants : "
|
||||||
msg += ", ".join(f"<strong>{td.participation.team.trigram}</strong> ({td.passage_dice})" for td in tds)
|
msg += ", ".join(f"<strong>{td.participation.team.trigram}</strong> ({td.passage_dice})" for td in tds)
|
||||||
msg += ". L'ordre de passage et les compositions des différentes poules sont affiché⋅es sur le côté. "
|
msg += ". L'ordre de passage et les compositions des différentes poules sont affiché⋅es sur le côté. "
|
||||||
msg += "Attention : les ordres de passage sont déterminés à partir des scores des dés, mais ne sont pas "
|
msg += "Les ordres de passage pour le premier tour sont déterminés à partir des scores des dés, "
|
||||||
msg += "directement l'ordre croissant des dés, afin d'avoir des poules mélangées."
|
msg += "dans l'ordre croissant. Pour le deuxième tour, les ordres de passage sont déterminés à partir "
|
||||||
|
msg += "des ordres de passage du premier tour."
|
||||||
self.tournament.draw.last_message = msg
|
self.tournament.draw.last_message = msg
|
||||||
await self.tournament.draw.asave()
|
await self.tournament.draw.asave()
|
||||||
|
|
||||||
@ -936,7 +937,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||||||
if already_refused:
|
if already_refused:
|
||||||
msg += "Cela n'ajoute pas de pénalité."
|
msg += "Cela n'ajoute pas de pénalité."
|
||||||
else:
|
else:
|
||||||
msg += "Cela ajoute une pénalité de 0.5 sur le coefficient de l'oral de la défense."
|
msg += "Cela ajoute une pénalité de 25 % sur le coefficient de l'oral de la défense."
|
||||||
self.tournament.draw.last_message = msg
|
self.tournament.draw.last_message = msg
|
||||||
await self.tournament.draw.asave()
|
await self.tournament.draw.asave()
|
||||||
|
|
||||||
@ -1018,7 +1019,8 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||||||
r2 = await self.tournament.draw.round_set.filter(number=2).aget()
|
r2 = await self.tournament.draw.round_set.filter(number=2).aget()
|
||||||
self.tournament.draw.current_round = r2
|
self.tournament.draw.current_round = r2
|
||||||
msg = "Le tirage au sort pour le tour 2 va commencer. " \
|
msg = "Le tirage au sort pour le tour 2 va commencer. " \
|
||||||
"L'ordre de passage est déterminé à partir du classement du premier tour."
|
"L'ordre de passage est déterminé à partir du classement du premier tour, " \
|
||||||
|
"de sorte à mélanger les équipes entre les deux jours."
|
||||||
self.tournament.draw.last_message = msg
|
self.tournament.draw.last_message = msg
|
||||||
await self.tournament.draw.asave()
|
await self.tournament.draw.asave()
|
||||||
|
|
||||||
|
@ -148,7 +148,7 @@ class Draw(models.Model):
|
|||||||
# The problem can be rejected
|
# The problem can be rejected
|
||||||
s += "Elle peut décider d'accepter ou de refuser ce problème. "
|
s += "Elle peut décider d'accepter ou de refuser ce problème. "
|
||||||
if len(td.rejected) >= len(settings.PROBLEMS) - 5:
|
if len(td.rejected) >= len(settings.PROBLEMS) - 5:
|
||||||
s += "Refuser ce problème ajoutera une nouvelle pénalité de 0.5 sur le coefficient de l'oral de la défense."
|
s += "Refuser ce problème ajoutera une nouvelle pénalité de 25 % sur le coefficient de l'oral de la défense."
|
||||||
else:
|
else:
|
||||||
s += f"Il reste {len(settings.PROBLEMS) - 5 - len(td.rejected)} refus sans pénalité."
|
s += f"Il reste {len(settings.PROBLEMS) - 5 - len(td.rejected)} refus sans pénalité."
|
||||||
case 'WAITING_FINAL':
|
case 'WAITING_FINAL':
|
||||||
@ -532,9 +532,9 @@ class TeamDraw(models.Model):
|
|||||||
@property
|
@property
|
||||||
def penalty(self):
|
def penalty(self):
|
||||||
"""
|
"""
|
||||||
The penalty multiplier on the defender oral, which is a malus of 0.5 for each penalty.
|
The penalty multiplier on the defender oral, in percentage, which is a malus of 25% for each penalty.
|
||||||
"""
|
"""
|
||||||
return 0.5 * self.penalty_int
|
return 25 * self.penalty_int
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return str(format_lazy(_("Draw of the team {trigram} for the pool {letter}{number}"),
|
return str(format_lazy(_("Draw of the team {trigram} for the pool {letter}{number}"),
|
||||||
|
@ -622,14 +622,14 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
|
|
||||||
let penaltyDiv = document.getElementById(`recap-${tid}-round-${round}-team-${team}-penalty`)
|
let penaltyDiv = document.getElementById(`recap-${tid}-round-${round}-team-${team}-penalty`)
|
||||||
if (rejected.length > problems_count - 5) {
|
if (rejected.length > problems_count - 5) {
|
||||||
// If more than P - 5 problems were rejected, add a penalty of 0.5 of the coefficient of the oral defender
|
// If more than P - 5 problems were rejected, add a penalty of 25% of the coefficient of the oral defender
|
||||||
if (penaltyDiv === null) {
|
if (penaltyDiv === null) {
|
||||||
penaltyDiv = document.createElement('div')
|
penaltyDiv = document.createElement('div')
|
||||||
penaltyDiv.id = `recap-${tid}-round-${round}-team-${team}-penalty`
|
penaltyDiv.id = `recap-${tid}-round-${round}-team-${team}-penalty`
|
||||||
penaltyDiv.classList.add('badge', 'rounded-pill', 'text-bg-info')
|
penaltyDiv.classList.add('badge', 'rounded-pill', 'text-bg-info')
|
||||||
recapDiv.parentNode.append(penaltyDiv)
|
recapDiv.parentNode.append(penaltyDiv)
|
||||||
}
|
}
|
||||||
penaltyDiv.textContent = `❌ ${0.5 * (rejected.length - (problems_count - 5))}`
|
penaltyDiv.textContent = `❌ ${25 * (rejected.length - (problems_count - 5))} %`
|
||||||
} else {
|
} else {
|
||||||
// Eventually remove this div
|
// Eventually remove this div
|
||||||
if (penaltyDiv !== null)
|
if (penaltyDiv !== null)
|
||||||
|
@ -99,7 +99,7 @@
|
|||||||
{# If needed, add the penalty of the team #}
|
{# If needed, add the penalty of the team #}
|
||||||
<div id="recap-{{ tournament.id }}-round-{{ round.number }}-team-{{ td.participation.team.trigram }}-penalty"
|
<div id="recap-{{ tournament.id }}-round-{{ round.number }}-team-{{ td.participation.team.trigram }}-penalty"
|
||||||
class="badge rounded-pill text-bg-info">
|
class="badge rounded-pill text-bg-info">
|
||||||
❌ {{ td.penalty }}
|
❌ {{ td.penalty }} %
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</li>
|
</li>
|
||||||
|
Loading…
Reference in New Issue
Block a user