aboutsummaryrefslogtreecommitdiff
path: root/internal/admin/api_search.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/admin/api_search.go')
-rw-r--r--internal/admin/api_search.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/internal/admin/api_search.go b/internal/admin/api_search.go
index d47dc0e..3367a52 100644
--- a/internal/admin/api_search.go
+++ b/internal/admin/api_search.go
@@ -28,6 +28,7 @@ func (s *AdminServer) handleSearch(w http.ResponseWriter, r *http.Request) {
Items []searchResult `json:"items"`
Mobs []searchResult `json:"mobs"`
Objects []searchResult `json:"objects"`
+ Hazards []searchResult `json:"hazards"`
}
var resp searchResponse
@@ -78,5 +79,16 @@ func (s *AdminServer) handleSearch(w http.ResponseWriter, r *http.Request) {
}
}
+ hazardIDs, _ := listYAMLFiles(s.dataDir, "hazards")
+ for _, id := range hazardIDs {
+ h, err := s.world.LoadHazard(id)
+ if err != nil {
+ continue
+ }
+ if strings.Contains(strings.ToLower(h.Name), q) || strings.Contains(strings.ToLower(id), q) {
+ resp.Hazards = append(resp.Hazards, searchResult{ID: id, Name: h.Name})
+ }
+ }
+
writeJSON(w, resp)
}