Fix race format persistence in event manager
This commit is contained in:
@@ -229,15 +229,18 @@ export function renderEventManagerView(context) {
|
||||
document.getElementById("eventBrandingForm")?.addEventListener("submit", (e) => {
|
||||
e.preventDefault();
|
||||
const form = new FormData(e.currentTarget);
|
||||
event.branding = normalizeBrandingConfig({
|
||||
...event.branding,
|
||||
brandName: String(form.get("brandName") || "").trim(),
|
||||
brandTagline: String(form.get("brandTagline") || "").trim(),
|
||||
pdfFooter: String(form.get("pdfFooter") || "").trim(),
|
||||
pdfTheme: String(form.get("pdfTheme") || "").trim(),
|
||||
});
|
||||
updateEvent((item) => ({
|
||||
...item,
|
||||
branding: normalizeBrandingConfig({
|
||||
...item.branding,
|
||||
brandName: String(form.get("brandName") || "").trim(),
|
||||
brandTagline: String(form.get("brandTagline") || "").trim(),
|
||||
pdfFooter: String(form.get("pdfFooter") || "").trim(),
|
||||
pdfTheme: String(form.get("pdfTheme") || "").trim(),
|
||||
}),
|
||||
}));
|
||||
saveState();
|
||||
rerenderEventManager(eventId);
|
||||
refreshManager();
|
||||
});
|
||||
|
||||
document.getElementById("eventLogoUpload")?.addEventListener("change", (eventInput) => {
|
||||
@@ -248,12 +251,15 @@ export function renderEventManagerView(context) {
|
||||
}
|
||||
const reader = new FileReader();
|
||||
reader.onload = () => {
|
||||
event.branding = normalizeBrandingConfig({
|
||||
...event.branding,
|
||||
logoDataUrl: typeof reader.result === "string" ? reader.result : "",
|
||||
});
|
||||
updateEvent((item) => ({
|
||||
...item,
|
||||
branding: normalizeBrandingConfig({
|
||||
...item.branding,
|
||||
logoDataUrl: typeof reader.result === "string" ? reader.result : "",
|
||||
}),
|
||||
}));
|
||||
saveState();
|
||||
rerenderEventManager(eventId);
|
||||
refreshManager();
|
||||
};
|
||||
reader.readAsDataURL(file);
|
||||
});
|
||||
@@ -658,9 +664,16 @@ export function renderEventManagerView(context) {
|
||||
document.getElementById("raceFormatForm")?.addEventListener("submit", (e) => {
|
||||
e.preventDefault();
|
||||
const form = new FormData(e.currentTarget);
|
||||
event.raceConfig = buildRaceFormatConfigFromForm(form, event);
|
||||
const config = buildRaceFormatConfigFromForm(form, event);
|
||||
updateEvent((item) => ({
|
||||
...item,
|
||||
raceConfig: {
|
||||
...config,
|
||||
teams: getEventTeams(item),
|
||||
},
|
||||
}));
|
||||
saveState();
|
||||
rerenderEventManager(eventId);
|
||||
refreshManager();
|
||||
});
|
||||
|
||||
document.getElementById("applyRacePreset")?.addEventListener("click", () => {
|
||||
@@ -669,9 +682,13 @@ export function renderEventManagerView(context) {
|
||||
return;
|
||||
}
|
||||
const form = new FormData(formElement);
|
||||
applyRaceFormatPreset(event, String(form.get("presetId") || "custom"));
|
||||
updateEvent((item) => {
|
||||
const next = normalizeEvent(item);
|
||||
applyRaceFormatPreset(next, String(form.get("presetId") || "custom"));
|
||||
return next;
|
||||
});
|
||||
saveState();
|
||||
rerenderEventManager(eventId);
|
||||
refreshManager();
|
||||
});
|
||||
|
||||
document.getElementById("saveRacePreset")?.addEventListener("click", () => {
|
||||
@@ -717,9 +734,16 @@ export function renderEventManagerView(context) {
|
||||
});
|
||||
const otherPresets = (state.settings.racePresets || []).filter((preset) => preset.id !== presetId);
|
||||
state.settings.racePresets = [...otherPresets, storedPreset];
|
||||
event.raceConfig = { ...config, presetId };
|
||||
updateEvent((item) => ({
|
||||
...item,
|
||||
raceConfig: {
|
||||
...config,
|
||||
presetId,
|
||||
teams: getEventTeams(item),
|
||||
},
|
||||
}));
|
||||
saveState();
|
||||
rerenderEventManager(eventId);
|
||||
refreshManager();
|
||||
});
|
||||
|
||||
document.getElementById("deleteRacePreset")?.addEventListener("click", () => {
|
||||
@@ -733,9 +757,15 @@ export function renderEventManagerView(context) {
|
||||
return;
|
||||
}
|
||||
state.settings.racePresets = (state.settings.racePresets || []).filter((preset) => preset.id !== presetId);
|
||||
event.raceConfig.presetId = "custom";
|
||||
updateEvent((item) => ({
|
||||
...item,
|
||||
raceConfig: {
|
||||
...item.raceConfig,
|
||||
presetId: "custom",
|
||||
},
|
||||
}));
|
||||
saveState();
|
||||
rerenderEventManager(eventId);
|
||||
refreshManager();
|
||||
});
|
||||
|
||||
document.getElementById("generateQualifying")?.addEventListener("click", () => {
|
||||
|
||||
Reference in New Issue
Block a user