diff --git a/spike/review/reinvent/ezmded/server/server.go b/spike/review/reinvent/ezmded/server/server.go index 9a79a8e..33e13ad 100644 --- a/spike/review/reinvent/ezmded/server/server.go +++ b/spike/review/reinvent/ezmded/server/server.go @@ -325,7 +325,6 @@ func (server *Server) apiV0FilesIDPutHandler(w http.ResponseWriter, r *http.Requ } func (server *Server) apiV0SearchHandler(w http.ResponseWriter, r *http.Request) error { - // TODO case insensitive query := r.URL.Query().Get("q") queries := strings.Split(query, " ") if len(queries) == 0 { @@ -337,7 +336,7 @@ func (server *Server) apiV0SearchHandler(w http.ResponseWriter, r *http.Request) for _, query := range queries { if len(query) > 0 { query = unsafepattern.ReplaceAllString(query, ".") - patterns = append(patterns, regexp.MustCompile(query)) + patterns = append(patterns, regexp.MustCompile("(?i)"+query)) } } if len(patterns) == 0 { diff --git a/spike/review/reinvent/ezmded/ui/index.html b/spike/review/reinvent/ezmded/ui/index.html index cdb0e76..fbcc563 100644 --- a/spike/review/reinvent/ezmded/ui/index.html +++ b/spike/review/reinvent/ezmded/ui/index.html @@ -37,9 +37,12 @@ drawTree() setInterval(drawTree, 100000) var queryF = getParameterByName("f") - console.log("init query f:", queryF) + var queryQ = getParameterByName("q") + console.log("init query f:", queryF, "q:", queryQ) if (queryF && queryF.length > 0) { drawFile(queryF) + } else if (queryQ && queryQ.length > 0) { + searchFilesFor(queryQ) } } function getParameterByName(name, url = window.location.href) { @@ -70,6 +73,27 @@ } }) } + + function searchFiles() { + const q = document.getElementById("searchbox").value + searchFilesFor(q) + } + + function searchFilesFor(q) { + http("GET", "/api/v0/search?q=" + q, (body, status) => { + var results = JSON.parse(body) + results.sort() + var innerHTML = "