diff options
author | Martin Fischer <martin@push-f.com> | 2021-03-04 07:17:43 +0100 |
---|---|---|
committer | Martin Fischer <martin@push-f.com> | 2021-03-04 07:17:43 +0100 |
commit | b0c30d5b3cc05c27270c9c6fdfb7576397bfccb0 (patch) | |
tree | 5185e5224cbfa0bea5e1d14ca22e3084ceb9cf91 | |
parent | 4e6fc7b48472a920ccb273126429ae16d3e12f8a (diff) |
only attempt to load /laws.json if it exists
-rw-r--r-- | assets/script.js | 7 | ||||
-rw-r--r-- | lexsurf.go | 5 | ||||
-rw-r--r-- | views/search.html | 2 |
3 files changed, 11 insertions, 3 deletions
diff --git a/assets/script.js b/assets/script.js index 34c386e..6d9e476 100644 --- a/assets/script.js +++ b/assets/script.js @@ -1,7 +1,7 @@ const searchInput = document.getElementById('search'); const suggestionsDiv = document.getElementById('suggestions'); -(async function(){ +async function enableAutocomplete() { const res = await fetch('/laws.json'); const laws = await res.json(); searchInput.addEventListener('input', (e) => { @@ -48,4 +48,7 @@ const suggestionsDiv = document.getElementById('suggestions'); suggestionsDiv.replaceChildren(...suggestions); }); -})(); +} + +if ('json' in searchInput.dataset) + enableAutocomplete();
\ No newline at end of file @@ -26,6 +26,11 @@ func (c country) HasPlaceholder() bool { return strings.Contains(c.SearchURL, "%s") } +func (c SearchContext) HasJSONLaws() bool { + _, ok := lawsByCC[c.TLD] + return ok +} + var countries = map[string]country{} var lawsByCC = map[string]map[string]law{} diff --git a/views/search.html b/views/search.html index 44d496c..5cf0483 100644 --- a/views/search.html +++ b/views/search.html @@ -10,7 +10,7 @@ <h1>National Law of {{.Country.Name}}</h1> {{if .Country.HasPlaceholder}} <form autocomplete="off"> - <input id=search name=q autofocus> + <input id=search name=q autofocus {{if .HasJSONLaws}}data-json{{end}}> <ul id=suggestions></ul> </form> {{else}} |