aboutsummaryrefslogtreecommitdiffhomepage
path: root/backend/api
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-28 15:04:21 +0900
committernsfisis <nsfisis@gmail.com>2026-02-28 15:04:47 +0900
commit2794e9de67781614edc17336b284266d3e4a740c (patch)
treea1fe37cc341f8ad5db90088f8c9bd096f8ea978c /backend/api
parentcf72673a8b09cb679d8dd80650d7f972af78d6f8 (diff)
downloadphperkaigi-2026-albatross-2794e9de67781614edc17336b284266d3e4a740c.tar.gz
phperkaigi-2026-albatross-2794e9de67781614edc17336b284266d3e4a740c.tar.zst
phperkaigi-2026-albatross-2794e9de67781614edc17336b284266d3e4a740c.zip
feat(admin): allow admin users to view and submit code before game starts
Admin users can now access the gaming UI (problem description, code editor, submit button) even when a game has not started yet. Regular users still see the waiting screen as before. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'backend/api')
-rw-r--r--backend/api/handler.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/backend/api/handler.go b/backend/api/handler.go
index 4d729f1..ad7d55a 100644
--- a/backend/api/handler.go
+++ b/backend/api/handler.go
@@ -236,7 +236,7 @@ func (h *Handler) GetGamePlaySubmissions(ctx context.Context, request GetGamePla
}
func (h *Handler) PostGamePlayCode(ctx context.Context, request PostGamePlayCodeRequestObject, user *db.User) (PostGamePlayCodeResponseObject, error) {
- err := h.gameSvc.SaveCode(ctx, request.GameID, user.UserID, request.Body.Code)
+ err := h.gameSvc.SaveCode(ctx, request.GameID, user.UserID, request.Body.Code, user.IsAdmin)
if err != nil {
if errors.Is(err, game.ErrNotFound) {
return PostGamePlayCode404JSONResponse{Message: "Game not found"}, nil
@@ -250,7 +250,7 @@ func (h *Handler) PostGamePlayCode(ctx context.Context, request PostGamePlayCode
}
func (h *Handler) PostGamePlaySubmit(ctx context.Context, request PostGamePlaySubmitRequestObject, user *db.User) (PostGamePlaySubmitResponseObject, error) {
- err := h.gameSvc.SubmitCode(ctx, request.GameID, user.UserID, request.Body.Code)
+ err := h.gameSvc.SubmitCode(ctx, request.GameID, user.UserID, request.Body.Code, user.IsAdmin)
if err != nil {
if errors.Is(err, game.ErrNotFound) {
return PostGamePlaySubmit404JSONResponse{}, nil