Skip to content

Commit

Permalink
Merge pull request #452 from qor5/fix-i18n
Browse files Browse the repository at this point in the history
fix container name i18n
  • Loading branch information
zhangshanwen authored Aug 8, 2024
2 parents 7643fdc + 0039f11 commit 3b79657
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 5 deletions.
6 changes: 6 additions & 0 deletions example/admin/messages.go
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,8 @@ type Messages_ModelsI18nModuleKey struct {
WebHeader string
WebHeadersColor string
Header string
Navigation string
Content string

WebFooter string
WebFootersEnglishUrl string
Expand Down Expand Up @@ -327,6 +329,8 @@ var Messages_zh_CN_ModelsI18nModuleKey = &Messages_ModelsI18nModuleKey{
WebHeader: "WebHeader",
WebHeadersColor: "WebHeadersColor",
Header: "Header",
Navigation: "Navigation",
Content: "Content",

WebFooter: "WebFooter",
WebFootersEnglishUrl: "WebFootersEnglishUrl",
Expand Down Expand Up @@ -481,6 +485,8 @@ var Messages_ja_JP_ModelsI18nModuleKey = &Messages_ModelsI18nModuleKey{
WebHeader: "ウェブヘッダー",
WebHeadersColor: "カラー",
Header: "ヘッダー",
Navigation: "Navigation",
Content: "Content",

WebFooter: "ウェブ用フッター",
WebFootersEnglishUrl: "英語用URL",
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ require (
github.com/pquerna/otp v1.4.0
github.com/qor/oss v0.0.0-20240729105053-88484a799a79
github.com/qor5/web/v3 v3.0.6-0.20240808073627-bd2003d12e2c
github.com/qor5/x/v3 v3.0.7-0.20240808085055-02376b65a3f9
github.com/qor5/x/v3 v3.0.7-0.20240808103450-13664afa0ba5
github.com/samber/lo v1.46.0
github.com/shurcooL/sanitized_anchor_name v1.0.0
github.com/spf13/cast v1.6.0
Expand Down
2 changes: 2 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -323,6 +323,8 @@ github.com/qor5/x/v3 v3.0.7-0.20240808022508-35f1ab5b53fe h1:kZSRwsseo3Jwlk3Z/27
github.com/qor5/x/v3 v3.0.7-0.20240808022508-35f1ab5b53fe/go.mod h1:p8LBZGmJ9pozop2jMACV5tN/1gkpAskteOhlwcfFxpw=
github.com/qor5/x/v3 v3.0.7-0.20240808085055-02376b65a3f9 h1:fuCaJ519NO5SL2LryGKNcYmgbrbiPxLMkun976s95d0=
github.com/qor5/x/v3 v3.0.7-0.20240808085055-02376b65a3f9/go.mod h1:p8LBZGmJ9pozop2jMACV5tN/1gkpAskteOhlwcfFxpw=
github.com/qor5/x/v3 v3.0.7-0.20240808103450-13664afa0ba5 h1:GIIq/qk4VzVYHQMDJ++lHwa6L6y1O2yCWzXUX/p6CQw=
github.com/qor5/x/v3 v3.0.7-0.20240808103450-13664afa0ba5/go.mod h1:p8LBZGmJ9pozop2jMACV5tN/1gkpAskteOhlwcfFxpw=
github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro=
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
Expand Down
9 changes: 9 additions & 0 deletions pagebuilder/builder.go
Original file line number Diff line number Diff line change
Expand Up @@ -1077,6 +1077,15 @@ func (b *Builder) configDemoContainer(pb *presets.Builder) (pm *presets.ModelBui
pm = pb.Model(&DemoContainer{}).URIName("demo_containers").Label("Demo Containers")

listing := pm.Listing("ModelName").SearchColumns("model_name")
listing.Field("ModelName").ComponentFunc(func(obj interface{}, field *presets.FieldContext, ctx *web.EventContext) h.HTMLComponent {
p := obj.(*DemoContainer)
modelName := p.ModelName
if b.ps.GetI18n() != nil {
modelName = i18n.T(ctx.R, presets.ModelsI18nModuleKey, modelName)
}

return h.Td(h.Text(modelName))
})
pm.LabelName(func(evCtx *web.EventContext, singular bool) string {
msgr := i18n.MustGetModuleMessages(evCtx.R, I18nPageBuilderKey, Messages_en_US).(*Messages)
if singular {
Expand Down
17 changes: 13 additions & 4 deletions pagebuilder/model.go
Original file line number Diff line number Diff line change
Expand Up @@ -461,6 +461,10 @@ func (b *ModelBuilder) renderContainersList(ctx *web.EventContext) (component h.
break
}
groupName := group[0].group

if b.builder.ps.GetI18n() != nil && groupName != "" {
groupName = i18n.T(ctx.R, presets.ModelsI18nModuleKey, groupName)
}
if groupName == "" {
groupName = msgr.Others
}
Expand All @@ -469,7 +473,10 @@ func (b *ModelBuilder) renderContainersList(ctx *web.EventContext) (component h.
}
var listItems []h.HTMLComponent
for _, builder := range group {
containerName := i18n.T(ctx.R, presets.ModelsI18nModuleKey, builder.name)
containerName := builder.name
if b.builder.ps.GetI18n() != nil {
containerName = i18n.T(ctx.R, presets.ModelsI18nModuleKey, builder.name)
}
addContainerEvent := web.Plaid().EventFunc(AddContainerEvent).
MergeQuery(true).
Query(paramModelName, builder.name).
Expand Down Expand Up @@ -519,14 +526,16 @@ func (b *ModelBuilder) renderContainersList(ctx *web.EventContext) (component h.
break
}
groupName := msgr.Shared

if b.builder.expendContainers {
groupsNames = append(groupsNames, groupName)
}
var listItems []h.HTMLComponent
for _, builder := range group {
c := b.builder.ContainerByName(builder.ModelName)
containerName := i18n.T(ctx.R, presets.ModelsI18nModuleKey, c.name)
containerName := c.name
if b.builder.ps.GetI18n() != nil {
containerName = i18n.T(ctx.R, presets.ModelsI18nModuleKey, c.name)
}
listItems = append(listItems,
VListItem(
VListItemTitle(h.Text(containerName)).Attr("@click", web.Plaid().
Expand Down Expand Up @@ -716,7 +725,7 @@ func (b *ModelBuilder) addContainerToPage(ctx *web.EventContext, pageID int, con
}
modelID = reflectutils.MustGet(model, "ID").(uint)
displayName := modelName
if b.builder.l10n != nil {
if b.builder.ps.GetI18n() != nil {
displayName = i18n.T(ctx.R, presets.ModelsI18nModuleKey, modelName)
}
container := Container{
Expand Down

0 comments on commit 3b79657

Please sign in to comment.