mirror of
https://github.com/casdoor/casdoor.git
synced 2025-07-03 20:50:19 +08:00
fix: fix bug in GetAcceptLanguage() (#1322)
This commit is contained in:
12
i18n/util.go
12
i18n/util.go
@ -17,7 +17,6 @@ package i18n
|
||||
import (
|
||||
"embed"
|
||||
"fmt"
|
||||
"log"
|
||||
"strings"
|
||||
|
||||
"github.com/casdoor/casdoor/util"
|
||||
@ -27,10 +26,7 @@ import (
|
||||
//go:embed languages/*.ini
|
||||
var f embed.FS
|
||||
|
||||
var (
|
||||
langMapConfig = make(map[string]*ini.File)
|
||||
isNotFirstLoad = make(map[string]bool)
|
||||
)
|
||||
var langMapConfig = make(map[string]*ini.File)
|
||||
|
||||
func getI18nFilePath(language string) string {
|
||||
return fmt.Sprintf("../web/src/locales/%s/data.json", language)
|
||||
@ -77,16 +73,14 @@ func applyData(data1 *I18nData, data2 *I18nData) {
|
||||
func Translate(lang string, error string) string {
|
||||
parts := strings.Split(error, ".")
|
||||
if !strings.Contains(error, ".") || len(parts) != 2 {
|
||||
log.Println("Invalid Error Name")
|
||||
return ""
|
||||
return "Translate Error: " + error
|
||||
}
|
||||
|
||||
if isNotFirstLoad[lang] {
|
||||
if langMapConfig[lang] != nil {
|
||||
return langMapConfig[lang].Section(parts[0]).Key(parts[1]).String()
|
||||
} else {
|
||||
file, _ := f.ReadFile("languages/locale_" + lang + ".ini")
|
||||
langMapConfig[lang], _ = ini.Load(file)
|
||||
isNotFirstLoad[lang] = true
|
||||
return langMapConfig[lang].Section(parts[0]).Key(parts[1]).String()
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user