diff options
author | siddharth ravikumar <s@ricketyspace.net> | 2022-06-12 19:57:22 -0400 |
---|---|---|
committer | siddharth ravikumar <s@ricketyspace.net> | 2022-06-12 19:57:22 -0400 |
commit | 276b82f0d49d52ca02a7a51f7acb27b8cbc8381b (patch) | |
tree | 42f3a06649449680fe3fe95b58958713da61c862 /search | |
parent | 2f14203efe0514cd4b64085efe9cc5980a276983 (diff) |
search: update `Search`
Add `Enabled`. Determines whether search is enabled or not.
Diffstat (limited to 'search')
-rw-r--r-- | search/search.go | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/search/search.go b/search/search.go index 1b297c3..7e0d6e0 100644 --- a/search/search.go +++ b/search/search.go @@ -19,21 +19,26 @@ type Search struct { Location string Message string MatchingCoords []photon.Coordinates + Enabled bool } -func NewSearch(r *http.Request) (*Search, error) { +func NewSearch(r *http.Request) (*Search, error, int) { s := new(Search) s.Title = "search" s.Version = version.Version + s.Enabled = photon.Enabled() + if !s.Enabled { + return s, fmt.Errorf("search disabled"), 404 + } if r.Method == "GET" { - return s, nil + return s, nil, 200 } // Get location. err := r.ParseForm() if err != nil { - return s, fmt.Errorf("form: %v", err) + return s, fmt.Errorf("form: %v", err), 500 } location := strings.TrimSpace(r.PostForm.Get("location")) s.Location = location @@ -46,11 +51,11 @@ func NewSearch(r *http.Request) (*Search, error) { if err != nil { log.Printf("search: geocode: %v", err) s.Message = "unable to lookup location" - return s, nil + return s, nil, 200 } if len(s.MatchingCoords) < 1 { s.Message = "location not found" - return s, nil + return s, nil, 200 } - return s, nil + return s, nil, 200 } |