feat: use exhaustive standard sizes list in pre-registration and adjust layout
AS Talange CI/CD Pipeline / Build & Run Unit Tests (push) Successful in 3m52s
AS Talange CI/CD Pipeline / Deploy to Test Environment (push) Successful in 5m17s

This commit is contained in:
2026-07-07 21:55:01 +02:00
parent 3fc239683e
commit af31766134
2 changed files with 14 additions and 27 deletions
@@ -105,29 +105,14 @@ public class PublicInscriptionController {
model.addAttribute("preInscription", new PreInscription()); model.addAttribute("preInscription", new PreInscription());
model.addAttribute("tokenUuid", tokenUuid); model.addAttribute("tokenUuid", tokenUuid);
// Fetch tailles and pointures // Fetch tailles and pointures (Standard exhaustive list)
List<Equipement> equipements = equipementRepository.findAll(); Set<String> tailles = new java.util.LinkedHashSet<>(java.util.Arrays.asList(
Set<String> tailles = new TreeSet<>(); "5/6ANS (Taille 116cm)", "7/8ANS (Taille 128cm)", "9/10ANS (Taille 140cm)",
Set<String> pointures = new TreeSet<>(); "11/12ANS (Taille 152cm)", "13/14ANS (Taille 164cm)", "XS", "S", "M", "L", "XL", "XXL"
for (Equipement eq : equipements) { ));
if (activeSaison.equals(eq.getSaison()) && eq.getTaillesDisponibles() != null && !eq.getTaillesDisponibles().trim().isEmpty()) { Set<String> pointures = new java.util.LinkedHashSet<>();
String[] parts = eq.getTaillesDisponibles().split(","); for (int i = 25; i <= 50; i++) {
for (String p : parts) { pointures.add(String.valueOf(i));
String val = p.trim();
if (!val.isEmpty()) {
try {
int num = Integer.parseInt(val);
if (num >= 25 && num <= 50) {
pointures.add(val);
} else {
tailles.add(val);
}
} catch (NumberFormatException e) {
tailles.add(val);
}
}
}
}
} }
model.addAttribute("taillesDisponibles", tailles); model.addAttribute("taillesDisponibles", tailles);
model.addAttribute("pointuresDisponibles", pointures); model.addAttribute("pointuresDisponibles", pointures);
@@ -91,6 +91,11 @@
<li>Pour les adhérents nés à l'étranger : Passeport + justificatif de domicile (du représentant légal en cas de mineur)</li> <li>Pour les adhérents nés à l'étranger : Passeport + justificatif de domicile (du représentant légal en cas de mineur)</li>
</ul> </ul>
</div> </div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Comment avez-vous connu l'AS Talange ?</label>
<input type="text" th:field="*{commentConnuClub}" class="w-full border border-gray-300 rounded-lg px-4 py-2 text-sm focus:ring-2 focus:ring-blue-500 outline-none" placeholder="Ex: Réseaux sociaux, amis, forum des associations...">
</div>
</div> </div>
<div class="grid grid-cols-2 gap-4"> <div class="grid grid-cols-2 gap-4">
@@ -174,10 +179,7 @@
</div> </div>
</div> </div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Comment avez-vous connu l'AS Talange ?</label>
<input type="text" th:field="*{commentConnuClub}" class="w-full border border-gray-300 rounded-lg px-4 py-2 text-sm focus:ring-2 focus:ring-blue-500 outline-none" placeholder="Ex: Réseaux sociaux, amis, forum des associations...">
</div>
<div class="flex items-start pt-2"> <div class="flex items-start pt-2">
<div class="flex items-center h-5"> <div class="flex items-center h-5">