Skip to content

Commit 5cadb58

Browse files
authored
Add build option flag TranslateTitle (#15)
1 parent 0da1f5a commit 5cadb58

File tree

3 files changed

+13
-1
lines changed

3 files changed

+13
-1
lines changed

app_error.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,7 @@ func (e *defaultAppError) BuildConfig(lang Language, options ...InfoBuilderOptio
175175
Language: lang,
176176
ErrorSeparator: globalConfig.MultiErrorSeparator,
177177
TranslationFunc: globalConfig.TranslationFunc,
178+
TranslateTitle: true,
178179
FallbackToErrorContentOnMissingTranslation: globalConfig.FallbackToErrorContentOnMissingTranslation,
179180
}
180181
for _, opt := range options {
@@ -253,7 +254,7 @@ func (e *defaultAppError) buildMessage(buildCfg *InfoBuilderConfig, result *Info
253254
}
254255
}
255256

256-
if title != "" {
257+
if buildCfg.TranslateTitle && title != "" {
257258
transTitle, err := buildCfg.TranslationFunc(buildCfg.Language, title, params)
258259
if err != nil {
259260
result.TransMissingKeys = append(result.TransMissingKeys, title)

error_info.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ type InfoBuilderConfig struct {
2525
Language Language
2626
ErrorSeparator string
2727
TranslationFunc TranslationFunc
28+
TranslateTitle bool
2829
FallbackToErrorContentOnMissingTranslation bool
2930
}
3031

@@ -62,6 +63,13 @@ func InfoBuilderOptionTranslationFunc(translationFunc TranslationFunc) InfoBuild
6263
}
6364
}
6465

66+
// InfoBuilderOptionTranslateTitle sets flag indicating title translation
67+
func InfoBuilderOptionTranslateTitle(translateTitle bool) InfoBuilderOption {
68+
return func(cfg *InfoBuilderConfig) {
69+
cfg.TranslateTitle = translateTitle
70+
}
71+
}
72+
6573
// InfoBuilderOptionSeparator sets custom content separator
6674
func InfoBuilderOptionSeparator(errorSeparator string) InfoBuilderOption {
6775
return func(cfg *InfoBuilderConfig) {

error_info_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ func Test_InfoBuilderOption(t *testing.T) {
2323
})(buildConfig)
2424
assert.NotNil(t, buildConfig.TranslationFunc)
2525

26+
InfoBuilderOptionTranslateTitle(true)(buildConfig)
27+
assert.True(t, buildConfig.TranslateTitle)
28+
2629
InfoBuilderOptionSeparator("abc123")(buildConfig)
2730
assert.Equal(t, "abc123", buildConfig.ErrorSeparator)
2831

0 commit comments

Comments
 (0)