Commit Graph

14 Commits

Author SHA1 Message Date
beo3000 504daec8d7 fix ro media folder on linux:
1. IMediaStorageService (src/Koogle.Domain/Interfaces/):
  - Neue Methoden GetMediaBasePath() und GetFilePath() hinzugefügt

  2. MediaStorageService (src/Koogle.Infrastructure/Services/):
  - Erkennt Production+Linux → verwendet /home/data/club-media
  - Development → verwendet wwwroot/club-media

  3. Program.cs (src/Koogle.Web/):
  - StaticFileOptions für /club-media aus /home/data/club-media in Production

  4. DemoSeeder (src/Koogle.Infrastructure/Data/):
  - Alle Methoden nutzen jetzt IMediaStorageService statt hardkodierte Pfade

  5. ClubGifService (src/Koogle.Application/Services/):
  - Alle Path.Combine("wwwroot", ...) durch _mediaStorage.GetFilePath() ersetzt

  Das Verhalten:
  - Windows/Development: weiterhin wwwroot/club-media
  - Linux/Production (Azure): /home/data/club-media (persistent und beschreibbar)
2026-01-01 12:21:17 +01:00
beo3000 1fbf4763d9 add dayStatisticChart 2025-12-29 16:11:22 +01:00
beo3000 cafd38519f add deathbox 2025-12-28 21:25:04 +01:00
beo3000 5c088345b3 add demo-club:
Neue Dateien (5)

  | Datei                                                  | Zweck                |
  |--------------------------------------------------------|----------------------|
  | src/Koogle.Infrastructure/Data/DemoSeeder.cs           | Seeder + Reset-Logik |
  | src/Koogle.Domain/Interfaces/IDemoResetService.cs      | Interface            |
  | src/Koogle.Infrastructure/Services/DemoResetService.cs | Service              |
  | src/Koogle.Web/Store/Demo/DemoActions.cs               | Fluxor Actions       |
  | src/Koogle.Web/Store/Demo/DemoEffects.cs               | Fluxor Effects       |

  Geaenderte Dateien (6)

  | Datei                        | Aenderung                     |
  |------------------------------|-------------------------------|
  | appsettings.Development.json | Demo-Config hinzugefuegt      |
  | Program.cs                   | DemoSeeder.SeedAsync() Aufruf |
  | DependencyInjection.cs       | IDemoResetService registriert |
  | Login.razor                  | Demo-Hinweis-Box              |
  | Clubs.razor                  | Reset-Button + Confirm-Dialog |

  Demo-Daten

  - User: demo@koogle.de / demo123 (ClubAdmin, kein SuperAdmin)
  - Club: "Demo"
  - 8 Mitglieder: Hans Maier, Klaus Schmidt, Werner Braun, Dieter Fischer, Juergen Weber, Heinz Mueller, Rolf Schneider, Karl Hoffmann
  - 2 Gaeste: Stefan Gast, Thomas Besucher
  - 10 Expenses mit Trigger-Zuordnung (Gosse 0.50, Pudel 0.30, ... Abwesenheit 5.00)
  - 3 Spieltage mit Games
2025-12-28 12:10:15 +01:00
beo3000 44b04ec2de dev Trigger / Expense Masterdata, Seeder for triggers 2025-12-28 11:16:51 +01:00
beo3000 6596dc32f2 add SignalR hub for real-time game updates
- IGameHubClient: client interface for SignalR messages
- GameHub: SignalR hub with group management for games/days
- GameHubService: scoped service wrapper with auto-reconnect
- GameEffects: broadcasts game start/end/state via SignalR
- EndGameAction: extended with winner info and final scores
- Program.cs: AddSignalR + MapHub configuration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 16:37:05 +01:00
beo3000 264f91d543 Complete phase H5: Scheiss-Spiel + Trigger-Integration
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 08:16:22 +01:00
beo3000 8824162cd9 Add Training Game (Phase H4)
- TrainingGameDefinition with game type metadata
- TrainingGameModel + TrainingPlayerStats for stats tracking
- TrainingGameLogicService implementing game logic
- TrainingSetup.razor for config (ThrowMode, ThrowsPerRound, ParticipantsMode)
- TrainingBoard.razor showing player stats table with totals/averages
- Game type registration in Program.cs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 14:49:26 +01:00
beo3000 bb00aa8a11 fix AuthState 2025-12-25 17:18:00 +01:00
beo3000 d8c41ad712 add fluxor AuthState 2025-12-21 22:14:00 +01:00
beo3000 8a92555ce9 add authorizazion und authentication 2025-12-21 19:31:54 +01:00
beo3000 b8e18a52b3 seed super-admin 2025-12-21 14:58:46 +01:00
beo3000 db0a4b7c00 dev authorization 2025-12-21 14:42:26 +01:00
beo3000 6c43c85cb4 mod project structure
ef migrations
2025-12-21 09:59:40 +01:00