diff options
author | Miquel Lionel <lionelmiquel@sfr.fr> | 2021-02-11 12:19:43 +0100 |
---|---|---|
committer | Miquel Lionel <lionel@les-miquelots.net> | 2021-02-11 12:19:43 +0100 |
commit | 13f5e3696f3798d6069d27e67e91e90f6ec3e105 (patch) | |
tree | d3739ed44eb01a4497ff8056d1e4b09b5fa79524 /v0.9.5/patches/03_bloated_i18n_implementation.patch | |
parent | 10f7d14b51ab09aa8641605245e5eb576b29bb46 (diff) | |
download | honk_custom-13f5e3696f3798d6069d27e67e91e90f6ec3e105.tar.gz honk_custom-13f5e3696f3798d6069d27e67e91e90f6ec3e105.zip |
bloated and incomplete i18n implementation
- everything depends on the 'lang' cookie value
- basic check if it's a 2 character long letter code
- you use it in the views/*.html like the following :
{{ i18n.Home }} will display the translation of "home"
in the language decided by the lang cookie.
- i still need to update the account.html view lol
- if the cookie value is not recognized, defaults to english
translation.
Diffstat (limited to 'v0.9.5/patches/03_bloated_i18n_implementation.patch')
-rw-r--r-- | v0.9.5/patches/03_bloated_i18n_implementation.patch | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/v0.9.5/patches/03_bloated_i18n_implementation.patch b/v0.9.5/patches/03_bloated_i18n_implementation.patch new file mode 100644 index 0000000..dff14f3 --- /dev/null +++ b/v0.9.5/patches/03_bloated_i18n_implementation.patch @@ -0,0 +1,52 @@ +diff --git a/web.go b/web.go +index 11adf5b..8e42bae 100644 +--- a/web.go ++++ b/web.go +@@ -85,6 +85,9 @@ func getInfo(r *http.Request) map[string]interface{} { + templinfo["IconName"] = iconName + templinfo["UserInfo"] = u + templinfo["UserSep"] = userSep ++ templinfo["Lang"] = getLangCookie(r) ++ templinfo["i18n"] = setLangStr(getLangCookie(r)) ++ + if u != nil { + var combos []string + combocache.Get(u.UserID, &combos) +@@ -99,7 +102,7 @@ func homepage(w http.ResponseWriter, r *http.Request) { + var honks []*Honk + var userid int64 = -1 + +- templinfo["ServerMessage"] = serverMsg ++ templinfo["ServerMessage"] = serverMsg + if u == nil || r.URL.Path == "/front" { + switch r.URL.Path { + case "/events": +@@ -733,6 +736,8 @@ func showhonker(w http.ResponseWriter, r *http.Request) { + templinfo["PageArg"] = name + templinfo["ServerMessage"] = msg + templinfo["HonkCSRF"] = login.GetCSRF("honkhonk", r) ++ templinfo["Lang"] = getLangCookie(r) ++ + honkpage(w, u, honks, templinfo) + } + +@@ -1109,8 +1114,9 @@ func saveuser(w http.ResponseWriter, r *http.Request) { + options.MapLink = "" + } + options.Reaction = r.FormValue("reaction") +- +- sendupdate := false ++ setLangCookie(w, r) ++ ++ sendupdate := false + ava := re_avatar.FindString(whatabout) + if ava != "" { + whatabout = re_avatar.ReplaceAllString(whatabout, "") +@@ -2436,6 +2442,7 @@ func serve() { + getters.HandleFunc("/server", serveractor) + posters.HandleFunc("/server/inbox", serverinbox) + posters.HandleFunc("/inbox", serverinbox) ++ posters.HandleFunc("/langcookie", setLangCookie) + + getters.HandleFunc("/style.css", serveasset) + getters.HandleFunc("/local.css", serveasset) |