Go to file
beo3000 c3839d2363 fix permissions;
Summary of all fixes

  3 files changed:

  1. src/Koogle.Application/Services/UserService.cs:140-171
    - GetByIdentityUserIdAsync now includes .Include(p => p.Clubs) and maps ClubMemberships
  2. src/Koogle.Web/Store/AuthState/AuthEffects.cs:53-73
    - Merges club-specific roles from ClubMemberships into AuthState roles
  3. src/Koogle.Infrastructure/Security/ClubRoleRequirement.cs:17-114
    - Changed ClubRoleHandler to extend AuthorizationHandler<ClubRoleRequirement> (no resource)
    - Reads current_club_id from claims to determine club context
    - Added ClubRoleResourceHandler for resource-based auth (explicit clubId)
  4. src/Koogle.Infrastructure/DependencyInjection.cs:72
    - Registered ClubRoleResourceHandler

  The [Authorize(Policy = "ClubViewer")] attribute now uses current_club_id claim set during login to check club roles.
2025-12-24 15:44:52 +01:00
.claude mod claude permissions 2025-12-24 15:00:51 +01:00
docs Complete phase D2: Person Pages 2025-12-24 15:07:02 +01:00
src fix permissions; 2025-12-24 15:44:52 +01:00
test added test-framework 2025-12-24 14:11:31 +01:00
.gitattributes initial setup 2025-11-05 11:40:00 +01:00
.gitignore initial setup 2025-11-05 11:40:00 +01:00
CLAUDE.md added test-framework 2025-12-24 14:11:31 +01:00
KoogleApp.sln added claude planning 2025-12-22 21:14:54 +01:00
todos.md add fluxor AuthState 2025-12-21 22:14:00 +01:00