fix lägga till förare
This commit is contained in:
17
src/app.js
17
src/app.js
@@ -220,6 +220,7 @@ const TRANSLATIONS = {
|
||||
"events.team_steps": "1. Skriv lagnamn. 2. Kryssa förare och/eller bilar här under. 3. Klicka Lägg till lag. 4. Använd Redigera lag för ändringar efteråt.",
|
||||
"events.team_form_drivers": "Markera lagförare innan du sparar laget.",
|
||||
"events.team_form_cars": "Markera lagbilar innan du sparar laget.",
|
||||
"events.team_driver_fallback": "Inga förare matchade race-klassen eller deltagarlistan. Visar alla förare som fallback.",
|
||||
"events.no_teams": "Inga lag skapade ännu.",
|
||||
"events.team_standings": "Lagställning",
|
||||
"events.no_team_results": "Inga teamresultat ännu.",
|
||||
@@ -736,6 +737,7 @@ const TRANSLATIONS = {
|
||||
"events.team_steps": "1. Enter the team name. 2. Tick drivers and/or cars below. 3. Click Add team. 4. Use Edit team for later changes.",
|
||||
"events.team_form_drivers": "Select team drivers before saving the team.",
|
||||
"events.team_form_cars": "Select team cars before saving the team.",
|
||||
"events.team_driver_fallback": "No drivers matched the race class or participant list. Showing all drivers as fallback.",
|
||||
"events.no_teams": "No teams created yet.",
|
||||
"events.team_standings": "Team standings",
|
||||
"events.no_team_results": "No team results yet.",
|
||||
@@ -2776,7 +2778,8 @@ function renderEventManager(eventId) {
|
||||
const driverOptions = state.drivers
|
||||
.map((d) => `<option value="${d.id}">${escapeHtml(d.name)}</option>`)
|
||||
.join("");
|
||||
const raceDrivers = event.mode === "race" ? state.drivers.filter((driver) => !event.classId || driver.classId === event.classId) : [];
|
||||
const teamDriverPool = event.mode === "race" ? getTeamDriverPool(event) : { drivers: [], fallback: false };
|
||||
const raceDrivers = event.mode === "race" ? teamDriverPool.drivers : [];
|
||||
const raceTeams = event.mode === "race" ? getEventTeams(event) : [];
|
||||
if (selectedTeamEditId && !raceTeams.some((team) => team.id === selectedTeamEditId)) {
|
||||
selectedTeamEditId = null;
|
||||
@@ -2976,6 +2979,7 @@ function renderEventManager(eventId) {
|
||||
<section class="panel">
|
||||
<div class="panel-header"><h3>${t("events.team_drivers")}</h3></div>
|
||||
<div class="panel-body"><p class="hint">${t("events.team_form_drivers")}</p></div>
|
||||
${teamDriverPool.fallback ? `<div class="panel-body"><p class="hint">${t("events.team_driver_fallback")}</p></div>` : ""}
|
||||
<div class="panel-body check-grid">
|
||||
${raceDrivers
|
||||
.map(
|
||||
@@ -5965,6 +5969,17 @@ function getEventTeams(event) {
|
||||
return Array.isArray(event?.raceConfig?.teams) ? event.raceConfig.teams.map((team) => normalizeRaceTeam(team)).filter((team) => team.name) : [];
|
||||
}
|
||||
|
||||
function getTeamDriverPool(event) {
|
||||
const scopedDrivers = getEventDrivers(event);
|
||||
if (scopedDrivers.length) {
|
||||
return { drivers: scopedDrivers, fallback: false };
|
||||
}
|
||||
return {
|
||||
drivers: [...state.drivers],
|
||||
fallback: state.drivers.length > 0,
|
||||
};
|
||||
}
|
||||
|
||||
function findEventTeamForPassing(event, driverId, carId) {
|
||||
return getEventTeams(event).find((team) => {
|
||||
const driverMatch = driverId && Array.isArray(team.driverIds) && team.driverIds.includes(driverId);
|
||||
|
||||
Reference in New Issue
Block a user