- Du setter opp enda en flight i samme oppsett -- dato, starthull, hullantall og spilleform er - forhåndsutfylt fra den første flighten, men kan endres. -
- )} - - {submitError && ( -- {submitError} -
- )} - - {stepN === 1 && ( -- Profilen din mangler registrert kjønn, som trengs for å beregne banehandicap riktig.{" "} - - Gå til kontoinnstillinger - - . -
-- Du setter opp enda en flight i samme oppsett -- dato, starthull, hullantall og spilleform er - forhåndsutfylt fra den første flighten, men kan endres. -
- )} - - {submitError && ( -- {submitError} -
- )} - - {stepN === 1 && ( -- Steg {currentIndex + 1} av {steps.length} - · - {steps[currentIndex].title} -
-{description}
} -{hint}
} -{helper}
} -{children}
-} - -// --- Step 1: Bane & tid ------------------------------------------------------ - -function Step1(props: { - s1Sub: S1Sub - setS1Sub: (s: S1Sub) => void - setOwnCreateOrigin: (s: S1Sub) => void - templateMode: boolean - setTemplateMode: (v: boolean) => void - selectedClub: OfficialClub | null - setSelectedClub: (c: OfficialClub | null) => void - setCourseSource: (s: "official" | "own") => void - course: Course | null - chooseCourse: (c: Course, meta: CourseMeta, source: "official" | "own") => void - ownGender: ApiGender - roundName: string - setRoundName: (v: string) => void - ownerTeeId: string - setOwnerTeeId: (v: string) => void - date: string - setDate: (v: string) => void - time: string - setTime: (v: string) => void - startHole: string - setStartHole: (v: string) => void -}) { - const { s1Sub, setS1Sub, setOwnCreateOrigin, templateMode, setTemplateMode, selectedClub, setSelectedClub, setCourseSource, course, chooseCourse, ownGender } = props - const [resolvingClub, setResolvingClub] = useState(false) - // "Bruk som mal"-broen (2026-08-04): forhåndsutfylling for own-create, - // satt fra enten TeeOff-baneutvalget eller det offentlige bane-søket. - const [templatePrefill, setTemplatePrefill] = useState<{ values: CourseTemplateValues; forkedFromId?: string } | null>(null) - - if (s1Sub === "source") { - return ( -Henter baner …
} -- Denne banen har ingen registrert rating for ditt kjønn på noe utslag -- HCP-sporing er ikke mulig for denne runden. -
- ) : ( -- {selectedFormat.label}: {selectedFormat.desc} -
-- Fordeler slagene som en differanse mellom sidene i stedet for hvert lags fulle handicap — slås av - spilles matchen med rå brutto/netto per side. -
-- 2-4 spillere på laget, alle slår ut og velger beste utslag -- deretter spiller alle egen ball inn. Legg til - medspillere etter opprettelse. -
-- Hvor stor andel av egen handicap individualspilleren spiller med. Standard 100 % (full - handicap). -
-- Kjønn er ikke kjent før spilleren er lagt til runden -- velg utslag med omhu. -
- )} -- {player.hcp ? `Hentes fra profilen (HCP ${player.hcp})` : "Hentes fra profilen når spilleren legges til."} -
-Skriv minst 2 tegn for å søke.
} - - {results.length > 0 ? ( -Fant ingen med det navnet.
- )} - - - > - ) : ( - <> -- Vi fant {knownGuest.guest_first_name} {knownGuest.guest_last_name}{" "} - fra en tidligere runde du satte opp. -
- -Ingen spillere ennå.
- ) : ( -Nøyaktig én spiller
-- Alle er forhåndsvalgt — velg heller bort det du ikke vil skal se den. Bruk "Ingen"/"Alle" - under for å starte på nytt, og finjuster deretter med enkeltkategoriene. -
-- Ingen kategori valgt ennå -- ingen venner kan se runden før du velger minst én. -
- )} -+ {error} +
+ ) : null} + + {/* Hull */} ++ {siError} +
+ ) : ( +Alle stroke-indekser 1–18 er satt.
+ )} ++ Minst én rating (herre eller dame) må være aktiv for dette utslaget. +
+ ) : null} +{hint}
: null} + {error ? ( ++ {error} +
+ ) : null} +{subtitle}
: null} ++ Nærmest deg +
++ Begynn å skrive for å søke etter en bane. +
+ ) + ) : results.length > 0 ? ( ++ Ingen anlegg matcher «{debounced}». +
+ )} ++ Klarte ikke å hente baner fra teeoff akkurat nå. Prøv igjen om litt. +
+ ) : courses === null ? ( +Laster baner…
+ ) : ( ++ Søk etter en egen bane{templateMode ? "" : ", eller opprett en ny"}. +
+ ) : results.length > 0 ? ( ++ Fant ingen egne baner som matcher «{debounced}». +
+ )} +Bekreft detaljene for runden.
+{course.name}
+{course.tees.length} utslag
+Velg statistikknivå og hvordan runden spilles.
++ {selectedDef.label}.{" "} + {selectedDef.description} +
+Andel av enkeltspillerens handicap som teller (0–100 %).
+Skins krever minst 3 spillere.
+Rotasjonen for «money ball» settes opp i neste steg.
+Nøyaktig 3 spillere.
+Du setter opp lagene i neste steg.
++ {state.players.length} {state.players.length === 1 ? "spiller" : "spillere"} i runden. +
++ Utslag: {teeName(course, player.teeId)} · HCP: {hcpText} +
+Ingen kontoer matcher søket.
+ ) + ) : null} + + ++ Vi fant {match.firstName} {match.lastName} fra en tidligere runde du satte opp. +
+ +Sett opp lagene for denne spilleformen.
+Ikke tildelt
++ Ingen spillere ennå. +
+ ) : ( +Gi hver spiller en plass i rotasjonen (0–3).
++ Legg til spillere fra listen under. +
+ ) : ( ++ Én spiller. Velg «Som motstander» på en spiller under. +
+ )} +Ikke plassert
+Bestem hvem som kan se denne runden.
++ Profilen din mangler registrert kjønn, som trengs for å beregne banehandicap riktig.{" "} + + Gå til kontoinnstillinger + + . +
++ Legger til en ny flight i samme rundegruppe -- dato, starthull, antall hull og spilleform er + forhåndsutfylt fra den første flighten, men kan endres. +
++ {state.submitError} +
+