mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-01 05:36:19 +01:00
Fix the missing i18n key for update checker (#18646)
This commit is contained in:
parent
f393bc82cb
commit
c2a3e38194
3 changed files with 20 additions and 0 deletions
|
@ -39,6 +39,18 @@ func AllLangs() []LangType {
|
|||
return allLangs
|
||||
}
|
||||
|
||||
// TryTr tries to do the translation, if no translation, it returns (format, false)
|
||||
func TryTr(lang, format string, args ...interface{}) (string, bool) {
|
||||
s := i18n.Tr(lang, format, args...)
|
||||
// now the i18n library is not good enough and we can only use this hacky method to detect whether the transaction exists
|
||||
idx := strings.IndexByte(format, '.')
|
||||
defaultText := format
|
||||
if idx > 0 {
|
||||
defaultText = format[idx+1:]
|
||||
}
|
||||
return s, s != defaultText
|
||||
}
|
||||
|
||||
// InitLocales loads the locales
|
||||
func InitLocales() {
|
||||
i18n.Reset()
|
||||
|
|
|
@ -2436,6 +2436,7 @@ dashboard.last_gc_pause = Last GC Pause
|
|||
dashboard.gc_times = GC Times
|
||||
dashboard.delete_old_actions = Delete all old actions from database
|
||||
dashboard.delete_old_actions.started = Delete all old actions from database started.
|
||||
dashboard.update_checker = Update checker
|
||||
|
||||
users.user_manage_panel = User Account Management
|
||||
users.new_account = Create User Account
|
||||
|
|
|
@ -17,6 +17,7 @@ import (
|
|||
"code.gitea.io/gitea/modules/log"
|
||||
"code.gitea.io/gitea/modules/process"
|
||||
"code.gitea.io/gitea/modules/setting"
|
||||
"code.gitea.io/gitea/modules/translation"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -121,6 +122,12 @@ func GetTask(name string) *Task {
|
|||
// RegisterTask allows a task to be registered with the cron service
|
||||
func RegisterTask(name string, config Config, fun func(context.Context, *user_model.User, Config) error) error {
|
||||
log.Debug("Registering task: %s", name)
|
||||
|
||||
i18nKey := "admin.dashboard." + name
|
||||
if _, ok := translation.TryTr("en-US", i18nKey); !ok {
|
||||
return fmt.Errorf("translation is missing for task %q, please add translation for %q", name, i18nKey)
|
||||
}
|
||||
|
||||
_, err := setting.GetCronSettings(name, config)
|
||||
if err != nil {
|
||||
log.Error("Unable to register cron task with name: %s Error: %v", name, err)
|
||||
|
|
Loading…
Reference in a new issue