From 8e7edba94f255422d65517d5040fded273538ea0 Mon Sep 17 00:00:00 2001 From: larssand Date: Sat, 14 Mar 2026 20:35:31 +0100 Subject: [PATCH] add modify driver --- src/app.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/app.js b/src/app.js index 27be086..5ead34d 100644 --- a/src/app.js +++ b/src/app.js @@ -397,6 +397,7 @@ const TRANSLATIONS = { "validation.invalid_date": "Datum måste vara i format YYYY-MM-DD.", "edit.class_name": "Redigera klassnamn", "edit.driver_name": "Redigera förarnamn", + "edit.driver_class": "Redigera förarklass", "edit.new_driver_name": "Namn på ny förare", "edit.driver_transponder": "Redigera personlig transponder (kan vara tom)", "edit.car_name": "Redigera bilnamn", @@ -868,6 +869,7 @@ const TRANSLATIONS = { "validation.invalid_date": "Date must be in YYYY-MM-DD format.", "edit.class_name": "Edit class name", "edit.driver_name": "Edit driver name", + "edit.driver_class": "Edit driver class", "edit.new_driver_name": "New driver name", "edit.driver_transponder": "Edit personal transponder (can be empty)", "edit.car_name": "Edit car name", @@ -2096,15 +2098,28 @@ function renderDrivers() { if (nextName === null) { return; } + const classPrompt = state.classes.map((item) => `${item.id}: ${item.name}`).join("\n"); + const nextClassId = prompt( + `${t("edit.driver_class")}\n${classPrompt}`, + d.classId || state.classes[0]?.id || "" + ); + if (nextClassId === null) { + return; + } const nextTp = prompt(t("edit.driver_transponder"), d.transponder || ""); if (nextTp === null) { return; } const cleanedName = nextName.trim(); + const cleanedClassId = nextClassId.trim(); if (!cleanedName) { return; } + if (cleanedClassId && !state.classes.some((item) => item.id === cleanedClassId)) { + return; + } d.name = cleanedName; + d.classId = cleanedClassId || d.classId; d.transponder = nextTp.trim(); saveState(); renderView();