MCPcopy Create free account
hub / github.com/GoMudEngine/GoMud / apiV1SearchUsers

Function apiV1SearchUsers

internal/web/api_v1_users.go:183–206  ·  view source on GitHub ↗

GET /admin/api/v1/users/search Query params (mutually exclusive; name takes priority): name= - search by username or numeric user ID (existing behaviour) role= - return all users with the given role (admin, mod, user, guest)

(w http.ResponseWriter, r *http.Request)

Source from the content-addressed store, hash-verified

181// name=<string> - search by username or numeric user ID (existing behaviour)
182// role=<string> - return all users with the given role (admin, mod, user, guest)
183func apiV1SearchUsers(w http.ResponseWriter, r *http.Request) {
184 name := r.URL.Query().Get("name")
185 role := r.URL.Query().Get("role")
186
187 if name == "" && role == "" {
188 writeAPIError(w, http.StatusBadRequest, "name or role query parameter is required")
189 return
190 }
191
192 var results []users.UserSearchResult
193 if name != "" {
194 results = users.SearchUsers(name)
195 } else {
196 results = users.SearchUsersByRole(role)
197 }
198 if results == nil {
199 results = []users.UserSearchResult{}
200 }
201
202 writeJSON(w, http.StatusOK, APIResponse[[]users.UserSearchResult]{
203 Success: true,
204 Data: results,
205 })
206}

Callers

nothing calls this directly

Calls 5

SearchUsersFunction · 0.92
SearchUsersByRoleFunction · 0.92
writeAPIErrorFunction · 0.85
writeJSONFunction · 0.85
GetMethod · 0.45

Tested by

no test coverage detected