diff options
Diffstat (limited to 'internal/admin/api_rooms.go')
| -rw-r--r-- | internal/admin/api_rooms.go | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/internal/admin/api_rooms.go b/internal/admin/api_rooms.go index 84c3348..2c251bb 100644 --- a/internal/admin/api_rooms.go +++ b/internal/admin/api_rooms.go @@ -45,6 +45,11 @@ func (s *AdminServer) handleRooms(w http.ResponseWriter, r *http.Request) { m = map[string]any{} } + if err := validateRoomCasinoMap(m); err != nil { + writeJSONError(w, "invalid casino configuration: "+err.Error(), http.StatusBadRequest) + return + } + var linkFrom *int var linkDir *string var linkOneWay bool @@ -272,6 +277,10 @@ func (s *AdminServer) handleRoomByID(w http.ResponseWriter, r *http.Request) { m = map[string]any{} } m["id"] = id + if err := validateRoomCasinoMap(m); err != nil { + writeJSONError(w, "invalid casino configuration: "+err.Error(), http.StatusBadRequest) + return + } newContent, writeErr := writeMapAsYAML(path, m) if writeErr != nil { |
