aboutsummaryrefslogtreecommitdiff
path: root/internal/admin/api_rooms.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/admin/api_rooms.go')
-rw-r--r--internal/admin/api_rooms.go9
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 {