Fix passing validation wiring in timing leaderboard"

This commit is contained in:
larssand
2026-03-27 16:26:00 +01:00
parent 544b5215fb
commit 14b8f777f1
2 changed files with 32 additions and 17 deletions

View File

@@ -203,7 +203,7 @@ export function renderEventManagerView(context) {
}); });
}; };
eventManageArea.querySelectorAll(".summary-warning-link, .manage-step-card-link").forEach((node) => { eventManageArea.querySelectorAll('[id^="team-edit-"], [id^="team-delete-"]').forEach((node) => {
bindManageJump(node); bindManageJump(node);
}); });
@@ -505,19 +505,24 @@ export function renderEventManagerView(context) {
rerenderEventManager(eventId); rerenderEventManager(eventId);
}); });
raceTeams.forEach((team) => { eventManageArea.querySelectorAll("[id^=\"team-edit-\"], [id^=\"team-delete-\"]").forEach((node) => {
document.getElementById(`team-edit-${team.id}`)?.addEventListener("click", () => { node.addEventListener("click", () => {
setSelectedTeamEditId(team.id); const nodeId = String(node.id || "");
rerenderEventManager(eventId); if (nodeId.startsWith("team-edit-")) {
}); const teamId = nodeId.slice("team-edit-".length);
setSelectedTeamEditId(teamId);
document.getElementById(`team-delete-${team.id}`)?.addEventListener("click", () => { rerenderEventManager(eventId);
event.raceConfig.teams = getEventTeams(event).filter((item) => item.id !== team.id); return;
if (selectedTeamEditId === team.id) { }
setSelectedTeamEditId(null); if (nodeId.startsWith("team-delete-")) {
const teamId = nodeId.slice("team-delete-".length);
event.raceConfig.teams = getEventTeams(event).filter((item) => item.id !== teamId);
if (getSelectedTeamEditId() === teamId) {
setSelectedTeamEditId(null);
}
saveState();
rerenderEventManager(eventId);
} }
saveState();
rerenderEventManager(eventId);
}); });
}); });
@@ -543,12 +548,15 @@ export function renderEventManagerView(context) {
rerenderEventManager(eventId); rerenderEventManager(eventId);
}); });
document.getElementById("teamEditForm")?.addEventListener("submit", (submitEvent) => { const commitTeamEdit = () => {
submitEvent.preventDefault();
if (!editingTeam) { if (!editingTeam) {
return; return;
} }
const form = new FormData(submitEvent.currentTarget); const formNode = document.getElementById("teamEditForm");
if (!(formNode instanceof HTMLFormElement)) {
return;
}
const form = new FormData(formNode);
const name = String(form.get("teamName") || "").trim(); const name = String(form.get("teamName") || "").trim();
const driverIds = form.getAll("teamDriverIds").map(String).filter(Boolean); const driverIds = form.getAll("teamDriverIds").map(String).filter(Boolean);
const carIds = form.getAll("teamCarIds").map(String).filter(Boolean); const carIds = form.getAll("teamCarIds").map(String).filter(Boolean);
@@ -567,8 +575,15 @@ export function renderEventManagerView(context) {
setSelectedTeamEditId(null); setSelectedTeamEditId(null);
saveState(); saveState();
rerenderEventManager(eventId); rerenderEventManager(eventId);
};
document.getElementById("teamEditForm")?.addEventListener("submit", (submitEvent) => {
submitEvent.preventDefault();
commitTeamEdit();
}); });
document.getElementById("teamEditSave")?.addEventListener("click", commitTeamEdit);
document.getElementById("raceFormatBasicToggle")?.addEventListener("click", () => { document.getElementById("raceFormatBasicToggle")?.addEventListener("click", () => {
setRaceFormatAdvanced(false); setRaceFormatAdvanced(false);
rerenderEventManager(eventId); rerenderEventManager(eventId);

View File

@@ -743,7 +743,7 @@ export function renderEventManagerMarkup(context) {
</div> </div>
</div> </div>
<div class="actions-inline"> <div class="actions-inline">
<button class="btn btn-primary" type="submit">${t("common.save")}</button> <button class="btn btn-primary" id="teamEditSave" type="button">${t("common.save")}</button>
<button class="btn" id="teamEditCancelFooter" type="button">${t("common.cancel")}</button> <button class="btn" id="teamEditCancelFooter" type="button">${t("common.cancel")}</button>
</div> </div>
</form> </form>