Spielerpositionen, Statistiken, Fahrgemeinschaften, Spielfeld-Visualisierung

- PlayerPosition Enum (7 Handball-Positionen) mit Label/ShortLabel
- Spielerstatistik pro Spiel (Tore, Würfe, TW-Paraden, Bemerkung)
- Position-Dropdown in Spieler-Editor und Event-Stats-Formular
- Statistik-Seite: TW zuerst, Trennlinie, Feldspieler, Position-Badges
- Spielfeld-SVG mit Ampel-Performance (grün/gelb/rot)
- Anklickbare Spieler im Spielfeld öffnen Detail-Modal
- Fahrgemeinschaften (Anbieten, Zuordnen, Zurückziehen)
- Übersetzungen in allen 6 Sprachen (de, en, pl, ru, ar, tr)
- .gitignore für Laravel hinzugefügt
- Demo-Daten mit Positionen und Statistiken

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Rhino
2026-03-02 11:47:34 +01:00
parent 2e24a40d68
commit ad60e7a9f9
46 changed files with 2041 additions and 86 deletions

View File

@@ -30,6 +30,25 @@ return [
'timekeeper_short' => 'Timekeeper',
'no_timekeeper_yet' => 'No timekeeper assigned yet.',
'timekeeper_updated' => 'Timekeeper status updated.',
// Carpooling
'carpool' => 'Carpooling',
'carpool_offer' => 'Offer a ride',
'carpool_update' => 'Update ride',
'carpool_seats' => 'Available seats',
'carpool_seats_count' => ':free of :total seats available',
'carpool_seats_too_few' => 'There are already more passengers assigned than the new seat count.',
'carpool_note_placeholder' => 'e.g. meeting point, departure time...',
'carpool_withdraw' => 'Withdraw ride',
'carpool_withdraw_confirm' => 'Really withdraw ride? All passengers will be removed.',
'carpool_join' => 'Assign',
'carpool_leave' => 'Remove',
'carpool_full' => 'All seats taken',
'no_carpool_yet' => 'No carpooling offers yet.',
'carpool_my_offer' => 'My ride',
'carpool_driver' => 'Driver',
'carpool_passengers' => 'Passengers',
'comments' => 'Comments',
'comment_placeholder' => 'Write a comment...',
'no_comments' => 'No comments yet.',
@@ -56,6 +75,22 @@ return [
'score_away' => 'Away',
'vs' => 'vs.',
// Player statistics
'stats' => 'Player Statistics',
'stats_save' => 'Save statistics',
'stats_saved' => 'Statistics saved.',
'stats_goalkeeper' => 'GK',
'stats_goalkeeper_long' => 'Goalkeeper',
'stats_saves' => 'Saves',
'stats_shots_on_goal' => 'Shots on goal',
'stats_goals' => 'Goals',
'stats_shots' => 'Shots',
'stats_note' => 'Note',
'stats_hit_rate' => 'Hit rate',
'stats_save_rate' => 'Save rate',
'stats_no_data' => 'No statistics data.',
'stats_position' => 'Position',
// Staff visibility
'signed_up' => 'signed up',
'withdrawn' => 'withdrawn',