arns-lt-gemini/dict.go
Arnas Udovic d9211fa0d5
All checks were successful
continuous-integration/drone/push Build is passing
gemini mentions
2025-03-24 21:05:50 +02:00

67 lines
1.5 KiB
Go

package main
import (
reflect "reflect"
)
type dict struct {
hostname string
languageEn string
searchStr string
newSentence string
mentions string
newMention string
thanksForMention string
backToPage string
}
var EN = dict{
hostname: "en.arns.lt",
languageEn: "English",
searchStr: "Input searching tag, created date or word in description",
newSentence: "New sentence",
mentions: "Mentions",
newMention: "New gemini mention",
thanksForMention: "Thanks for the mention",
backToPage: "Back to page",
}
var SGS = dict{
hostname: "en.arns.lt",
languageEn: "Samogitian",
searchStr: "Ivesk ėiškuoma žīma, sokūrėma data arba žuodi ėš aprašīma",
newSentence: "Naujė ėšmintės",
mentions: "Pamėnavuojėmā",
newMention: "Naus gemini mėnavuojėms",
thanksForMention: "Diekou ož pamėnavuojėma",
backToPage: "Atgal i poslapi",
}
func Dict() dict {
dictMap := map[string]dict{
"en": EN,
"sgs": SGS,
}
return dictMap[defaultLang]
}
func T(key string) string {
dict := map[string]string{}
d := Dict()
r := reflect.ValueOf(&d).Elem()
rt := r.Type()
for i := 0; i < rt.NumField(); i++ {
field := rt.Field(i)
rv := reflect.ValueOf(&d)
value := reflect.Indirect(rv).FieldByName(field.Name)
dict[field.Name] = value.String()
}
if value, ok := dict[key]; ok {
return value
} else {
return ""
}
}