diff --git a/bin/evening_detective_server b/bin/evening_detective_server index ab0b936..120c14b 100755 Binary files a/bin/evening_detective_server and b/bin/evening_detective_server differ diff --git a/internal/app/server.go b/internal/app/server.go index b0b2e89..badefec 100644 --- a/internal/app/server.go +++ b/internal/app/server.go @@ -431,7 +431,7 @@ func (s *server) DeleteScenarioPlace(ctx context.Context, req *proto.DeleteScena func (s *server) AddGame(ctx context.Context, req *proto.AddGameReq) (*proto.AddGameRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -459,7 +459,7 @@ func (s *server) AddGame(ctx context.Context, req *proto.AddGameReq) (*proto.Add func (s *server) DeleteGame(ctx context.Context, req *proto.DeleteGameReq) (*proto.DeleteGameRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -478,7 +478,7 @@ func (s *server) DeleteGame(ctx context.Context, req *proto.DeleteGameReq) (*pro func (s *server) GetGame(ctx context.Context, req *proto.GetGameReq) (*proto.GetGameRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -496,7 +496,7 @@ func (s *server) GetGame(ctx context.Context, req *proto.GetGameReq) (*proto.Get func (s *server) GetGames(ctx context.Context, req *proto.GetGamesReq) (*proto.GetGamesRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -514,7 +514,7 @@ func (s *server) GetGames(ctx context.Context, req *proto.GetGamesReq) (*proto.G func (s *server) UpdateGame(ctx context.Context, req *proto.UpdateGameReq) (*proto.UpdateGameRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -541,7 +541,7 @@ func (s *server) UpdateGame(ctx context.Context, req *proto.UpdateGameReq) (*pro func (s *server) AddTeam(ctx context.Context, req *proto.AddTeamReq) (*proto.AddTeamRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -562,7 +562,7 @@ func (s *server) AddTeam(ctx context.Context, req *proto.AddTeamReq) (*proto.Add func (s *server) UpdateTeam(ctx context.Context, req *proto.UpdateTeamReq) (*proto.UpdateTeamRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -582,7 +582,7 @@ func (s *server) UpdateTeam(ctx context.Context, req *proto.UpdateTeamReq) (*pro func (s *server) DeleteTeam(ctx context.Context, req *proto.DeleteTeamReq) (*proto.DeleteTeamRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") } @@ -601,7 +601,7 @@ func (s *server) DeleteTeam(ctx context.Context, req *proto.DeleteTeamReq) (*pro func (s *server) GiveTeamApplications(ctx context.Context, req *proto.GiveTeamApplicationsReq) (*proto.GiveTeamApplicationsRsp, error) { claims := ctx.Value("claims").(*processor_jwt.JWTClaims) - if !roles.HasRole(claims, roles.Organizer) { + if !roles.HasRole(claims, roles.Organizer) && !roles.HasRole(claims, roles.Author) { return nil, status.Errorf(codes.PermissionDenied, "permission denied") }