Commit Graph

18 Commits

Author SHA1 Message Date
beo3000 0207c5fe80 Add Game Definition Framework (Phase H3)
- IGameDefinition interface in Domain
- GameProgress.cs with throw state records
- IGameLogicService interface
- GameDefinitionRegistry for polymorphic game types
- GameModelFactory for JSON serialization
- DI registration extensions

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 14:38:21 +01:00
beo3000 77150e3823 Add GameState Fluxor + game enums (Phase H1)
- GameType, GameStatus, PinStatus, ThrowMode, ParticipantsMode enums
- GameState with ThrowPanelState, ParticipantsState, GameSnapshot
- GameActions for lifecycle, throws, undo, persistence, SignalR
- GameReducers for all actions
- GameEffects placeholder for later phases

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 14:19:27 +01:00
beo3000 e8df51d67f Add Trigger-Engine (Phase H0)
- ITriggerRepository interface + TriggerRepository implementation
- ITriggerService interface + TriggerService implementation
- TriggerDto, ExpenseTriggerLinkDto, FireTriggerDto
- FireTriggerAsync creates PersonExpenses with multiplier
- DI registration for both services
- Fix test mock for IClubRepository

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 14:10:28 +01:00
beo3000 29cebcbb81 ensure unique names for club,person,expense 2025-12-26 13:39:23 +01:00
beo3000 e2fe8b723a added Game->Club Relation 2025-12-26 10:17:22 +01:00
beo3000 8e2342fd74 avoid duplicate person names 2025-12-25 19:00:42 +01:00
beo3000 32c48d2bc3 fix namespaces
add AccessDenied Page
2025-12-25 18:15:21 +01:00
beo3000 a1bad43d88 Add IEmailService interface + StubEmailService
- IEmailService in Domain/Interfaces for membership notifications
- StubEmailService in Infrastructure/Services logs instead of sending
- TODO comments for future SMTP implementation

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 17:57:16 +01:00
beo3000 68c6c30a2a Add ClubInvitation entity for invitation links
- ClubInvitation: Token, ExpiresAt, MaxUses, UsedCount
- Unique index on Token
- DbSet + EF Configuration
- Migration applied

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 17:49:50 +01:00
beo3000 b70ddcc6ef Add MembershipStatus enum + extend UserProfileClub
- MembershipStatus: Pending, Approved, Rejected
- UserProfileClub: Status, RejectionReason, ApprovedAt/ById, RejectedAt/ById
- Migration for new columns

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 17:41:26 +01:00
beo3000 b4818efc1a added club relations to datamodel
mod UserService
2025-12-23 15:05:22 +01:00
beo3000 57146a382a add comments 2025-12-22 21:42:25 +01:00
beo3000 bb1d08f32c mod Repository Interfaces 2025-12-22 21:21:46 +01:00
beo3000 b9dd2b2af0 added claude planning 2025-12-22 21:14:54 +01:00
beo3000 d8c41ad712 add fluxor AuthState 2025-12-21 22:14:00 +01:00
beo3000 db0a4b7c00 dev authorization 2025-12-21 14:42:26 +01:00
beo3000 3024ed85d2 fix db model 2025-12-21 12:03:46 +01:00
beo3000 6c43c85cb4 mod project structure
ef migrations
2025-12-21 09:59:40 +01:00