send a learn translation key
parent
59e04799d2
commit
1f8d9abb83
|
@ -33,10 +33,11 @@ object Dasher extends LilaController {
|
|||
I18nKeys.boardTheme,
|
||||
I18nKeys.boardSize,
|
||||
I18nKeys.pieceSet
|
||||
), ctx.lang
|
||||
), lila.i18n.I18nDb.Site, ctx.lang
|
||||
) ++ lila.i18n.JsDump.keysToObject(
|
||||
// the language settings should never be in a totally foreign language
|
||||
List(I18nKeys.language),
|
||||
lila.i18n.I18nDb.Site,
|
||||
if (I18nLangPicker.allFromRequestHeaders(ctx.req).has(ctx.lang)) ctx.lang
|
||||
else I18nLangPicker.bestFromRequestHeaders(ctx.req) | enLang
|
||||
)
|
||||
|
|
|
@ -54,7 +54,7 @@ object UserAnalysis extends LilaController with TheftPrevention {
|
|||
}
|
||||
|
||||
def keyboardI18n = Open { implicit ctx =>
|
||||
JsonOk(fuccess(lila.i18n.JsDump.keysToObject(keyboardI18nKeys, lang)))
|
||||
JsonOk(fuccess(lila.i18n.JsDump.keysToObject(keyboardI18nKeys, lila.i18n.I18nDb.Site, lang)))
|
||||
}
|
||||
|
||||
private[controllers] def makePov(fen: Option[String], variant: Variant): Pov = makePov {
|
||||
|
|
|
@ -19,10 +19,13 @@ trait I18nHelper {
|
|||
Translator.html.literal(key, db, args, lang)
|
||||
|
||||
def i18nJsObject(keys: I18nKey*)(implicit lang: Lang): JsObject =
|
||||
JsDump.keysToObject(keys, lang)
|
||||
JsDump.keysToObject(keys, I18nDb.Site, lang)
|
||||
|
||||
def i18nOptionJsObject(keys: Option[I18nKey]*)(implicit lang: Lang): JsObject =
|
||||
JsDump.keysToObject(keys.flatten, lang)
|
||||
JsDump.keysToObject(keys.flatten, I18nDb.Site, lang)
|
||||
|
||||
def i18nJsDbObject(keys: Seq[I18nKey], db: I18nDb.Ref)(implicit lang: Lang): JsObject =
|
||||
JsDump.keysToObject(keys, db, lang)
|
||||
|
||||
def i18nJsQuantityFunction()(implicit lang: Lang): Html = Html(JsQuantity(lang))
|
||||
|
||||
|
|
|
@ -6,7 +6,8 @@
|
|||
$(function() {
|
||||
LichessLearn(document.getElementById('learn_app'), {
|
||||
data: @jsOrNull(data),
|
||||
sideElement: document.getElementById('learn_side')
|
||||
sideElement: document.getElementById('learn_side'),
|
||||
i18n: @Html(J.stringify(i18nJsDbObject(List(trans.learn.theRook), lila.i18n.I18nDb.Learn)))
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
|
@ -83,5 +83,5 @@ final class JsonView(
|
|||
trans.decline,
|
||||
trans.viewInFullSize,
|
||||
trans.cancel
|
||||
), lang)
|
||||
), lila.i18n.I18nDb.Site, lang)
|
||||
}
|
||||
|
|
|
@ -54,9 +54,9 @@ object JsDump {
|
|||
case I18nQuantity.Other => ""
|
||||
}
|
||||
|
||||
def keysToObject(keys: Seq[I18nKey], lang: Lang) = JsObject {
|
||||
def keysToObject(keys: Seq[I18nKey], db: I18nDb.Ref, lang: Lang) = JsObject {
|
||||
keys.flatMap { k =>
|
||||
Translator.findTranslation(k.key, I18nDb.Site, lang) match {
|
||||
Translator.findTranslation(k.key, db, lang) match {
|
||||
case Some(literal: Literal) => List(k.key -> JsString(literal.message))
|
||||
case Some(plurals: Plurals) => plurals.messages.map {
|
||||
case (quantity, msg) => k.key + quantitySuffix(quantity) -> JsString(msg)
|
||||
|
|
Loading…
Reference in New Issue