diff --git a/main.go b/main.go index c5f27e9..02f6195 100644 --- a/main.go +++ b/main.go @@ -20,6 +20,61 @@ type SearchResult struct { Description string } +type LanguageOption struct { + Code string + Name string +} + +var languageOptions = []LanguageOption{ + {Code: "", Name: "Any Language"}, + {Code: "lang_en", Name: "English"}, + {Code: "lang_af", Name: "Afrikaans"}, + {Code: "lang_ar", Name: "العربية (Arabic)"}, + {Code: "lang_hy", Name: "Հայերեն (Armenian)"}, + {Code: "lang_be", Name: "Беларуская (Belarusian)"}, + {Code: "lang_bg", Name: "български (Bulgarian)"}, + {Code: "lang_ca", Name: "Català (Catalan)"}, + {Code: "lang_zh-CN", Name: "中文 (简体) (Chinese Simplified)"}, + {Code: "lang_zh-TW", Name: "中文 (繁體) (Chinese Traditional)"}, + {Code: "lang_hr", Name: "Hrvatski (Croatian)"}, + {Code: "lang_cs", Name: "Čeština (Czech)"}, + {Code: "lang_da", Name: "Dansk (Danish)"}, + {Code: "lang_nl", Name: "Nederlands (Dutch)"}, + {Code: "lang_eo", Name: "Esperanto"}, + {Code: "lang_et", Name: "Eesti (Estonian)"}, + {Code: "lang_tl", Name: "Filipino (Tagalog)"}, + {Code: "lang_fi", Name: "Suomi (Finnish)"}, + {Code: "lang_fr", Name: "Français (French)"}, + {Code: "lang_de", Name: "Deutsch (German)"}, + {Code: "lang_el", Name: "Ελληνικά (Greek)"}, + {Code: "lang_iw", Name: "עברית (Hebrew)"}, + {Code: "lang_hi", Name: "हिन्दी (Hindi)"}, + {Code: "lang_hu", Name: "magyar (Hungarian)"}, + {Code: "lang_is", Name: "íslenska (Icelandic)"}, + {Code: "lang_id", Name: "Bahasa Indonesia (Indonesian)"}, + {Code: "lang_it", Name: "italiano (Italian)"}, + {Code: "lang_ja", Name: "日本語 (Japanese)"}, + {Code: "lang_ko", Name: "한국어 (Korean)"}, + {Code: "lang_lv", Name: "latviešu (Latvian)"}, + {Code: "lang_lt", Name: "lietuvių (Lithuanian)"}, + {Code: "lang_no", Name: "norsk (Norwegian)"}, + {Code: "lang_fa", Name: "فارسی (Persian)"}, + {Code: "lang_pl", Name: "polski (Polish)"}, + {Code: "lang_pt", Name: "português (Portuguese)"}, + {Code: "lang_ro", Name: "română (Romanian)"}, + {Code: "lang_ru", Name: "русский (Russian)"}, + {Code: "lang_sr", Name: "српски (Serbian)"}, + {Code: "lang_sk", Name: "slovenčina (Slovak)"}, + {Code: "lang_sl", Name: "slovenščina (Slovenian)"}, + {Code: "lang_es", Name: "español (Spanish)"}, + {Code: "lang_sw", Name: "Kiswahili (Swahili)"}, + {Code: "lang_sv", Name: "svenska (Swedish)"}, + {Code: "lang_th", Name: "ไทย (Thai)"}, + {Code: "lang_tr", Name: "Türkçe (Turkish)"}, + {Code: "lang_uk", Name: "українська (Ukrainian)"}, + {Code: "lang_vi", Name: "Tiếng Việt (Vietnamese)"}, +} + var funcs = template.FuncMap{ "title": func(s string) string { return strings.Title(s) @@ -148,11 +203,15 @@ func handleSearch(w http.ResponseWriter, r *http.Request) { Query string Fetched string ElapsedTime string + LanguageOptions []LanguageOption + CurrentLang string }{ Results: results, Query: query, Fetched: fmt.Sprintf("Fetched the results in %.2f seconds", elapsed.Seconds()), ElapsedTime: strconv.FormatFloat(elapsed.Seconds(), 'f', 2, 64), + LanguageOptions: languageOptions, + CurrentLang: lang, } // Render template diff --git a/templates/results.html b/templates/results.html index 548997b..329a982 100644 --- a/templates/results.html +++ b/templates/results.html @@ -19,13 +19,14 @@
+ {{range .LanguageOptions}} + + {{end}} +