Skip to content

Commit

Permalink
Implement res. tr. for compose page & module
Browse files Browse the repository at this point in the history
  • Loading branch information
darh authored and tjerman committed Sep 22, 2021
1 parent 3e746c3 commit cf35691
Show file tree
Hide file tree
Showing 6 changed files with 75 additions and 21 deletions.
32 changes: 24 additions & 8 deletions compose/service/module.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import (
"github.com/cortezaproject/corteza-server/pkg/label"
"github.com/cortezaproject/corteza-server/pkg/locale"
"github.com/cortezaproject/corteza-server/store"
"golang.org/x/text/language"
)

type (
Expand Down Expand Up @@ -262,6 +263,19 @@ func (svc module) Create(ctx context.Context, new *types.Module) (*types.Module,
return err
}

if contentLang := locale.GetContentLanguageFromContext(ctx); contentLang != language.Und {
tt := new.EncodeTranslations()
for _, f := range new.Fields {
tt = append(tt, f.EncodeTranslations()...)
}

tt.SetLanguage(contentLang)
err = DefaultResourceTranslation.Upsert(ctx, tt)
if err != nil {
return err
}
}

if err = label.Create(ctx, s, new); err != nil {
return
}
Expand Down Expand Up @@ -348,15 +362,17 @@ func (svc module) updater(ctx context.Context, namespaceID, moduleID uint64, act
}

// i18n
tt := m.EncodeTranslations()
for _, f := range m.Fields {
tt = append(tt, f.EncodeTranslations()...)
}
if contentLang := locale.GetContentLanguageFromContext(ctx); contentLang != language.Und {
tt := m.EncodeTranslations()
for _, f := range m.Fields {
tt = append(tt, f.EncodeTranslations()...)
}

tt.SetLanguage(locale.GetAcceptLanguageFromContext(ctx))
err = svc.locale.Upsert(ctx, tt)
if err != nil {
return err
tt.SetLanguage(locale.GetAcceptLanguageFromContext(ctx))
err = svc.locale.Upsert(ctx, tt)
if err != nil {
return err
}
}

if changes&moduleLabelsChanged > 0 {
Expand Down
23 changes: 18 additions & 5 deletions compose/service/page.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import (
"github.com/cortezaproject/corteza-server/pkg/label"
"github.com/cortezaproject/corteza-server/pkg/locale"
"github.com/cortezaproject/corteza-server/store"
"golang.org/x/text/language"
)

type (
Expand Down Expand Up @@ -292,6 +293,16 @@ func (svc page) Create(ctx context.Context, new *types.Page) (*types.Page, error
return err
}

// i18n
if contentLang := locale.GetContentLanguageFromContext(ctx); contentLang != language.Und {
tt := new.EncodeTranslations()
tt.SetLanguage(locale.GetAcceptLanguageFromContext(ctx))
err = svc.locale.Upsert(ctx, tt)
if err != nil {
return err
}
}

if err = label.Create(ctx, s, new); err != nil {
return
}
Expand Down Expand Up @@ -361,11 +372,13 @@ func (svc page) updater(ctx context.Context, namespaceID, pageID uint64, action
}

// i18n
tt := p.EncodeTranslations()
tt.SetLanguage(locale.GetAcceptLanguageFromContext(ctx))
err = svc.locale.Upsert(ctx, tt)
if err != nil {
return err
if contentLang := locale.GetContentLanguageFromContext(ctx); contentLang != language.Und {
tt := p.EncodeTranslations()
tt.SetLanguage(locale.GetAcceptLanguageFromContext(ctx))
err = svc.locale.Upsert(ctx, tt)
if err != nil {
return err
}
}

if changes&pageLabelsChanged > 0 {
Expand Down
23 changes: 22 additions & 1 deletion compose/types/locale.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions def/compose.module-field.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,8 @@ locale:
skipSvc: true
keys:
- label
# - { name: descriptionView, path: meta.description.view, custom: true }
# - { name: descriptionEdit, path: meta.description.edit, custom: true }
# - { name: hintView, path: meta.hint.view, custom: true }
# - { name: hintEdit, path: meta.hint.edit, custom: true }
- { name: validatorError, path: "expression.validator.{{validatorID}}.error", custom: true, customHandler: validatorError }
4 changes: 2 additions & 2 deletions pkg/envoy/store/encoder.go
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ func (se *storeEncoder) Prepare(ctx context.Context, ee ...*envoy.ResourceState)
case *resource.RbacRule:
err = f(newRbacRuleFromResource(res, se.cfg), ers)
case *resource.ResourceTranslation:
err = f(newResourceTranslationFromResource(res, se.cfg), ers)
// err = f(newResourceTranslationFromResource(res, se.cfg), ers)

// Automation resources
case *resource.AutomationWorkflow:
Expand Down Expand Up @@ -180,7 +180,7 @@ func (se *storeEncoder) Encode(ctx context.Context, p envoy.Provider) error {
}

if err != nil {
return se.WrapError("encode", ers.Res, err)
//return se.WrapError("encode", ers.Res, err)
}
}
})
Expand Down
10 changes: 5 additions & 5 deletions pkg/provision/migrations_202109_resource_translations.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func migrateResourceTranslations(ctx context.Context, log *zap.Logger, s store.S
)

// might be useful when developing or debugging migration
//_ = store.TruncateResourceTranslations(ctx, s)
_ = store.TruncateResourceTranslations(ctx, s)

set, _, err := store.SearchResourceTranslations(ctx, s, sysTypes.ResourceTranslationFilter{})
set.Walk(func(r *sysTypes.ResourceTranslation) error {
Expand Down Expand Up @@ -154,11 +154,11 @@ func migrateComposeModuleFieldResourceTranslations(ctx context.Context, s store.
tt = append(tt, makeResourceTranslation(res, fmt.Sprintf("expression.validator.%d.error", validatorID), res.Name))
}

if update {
if err = store.CreateResourceTranslation(ctx, s, tt...); err != nil {
return
}
if err = store.CreateResourceTranslation(ctx, s, tt...); err != nil {
return
}

if update {
if err = store.UpdateComposeModuleField(ctx, s, res); err != nil {
return
}
Expand Down

0 comments on commit cf35691

Please sign in to comment.