diff options
Diffstat (limited to 'utils')
-rw-r--r-- | utils/html.go | 6 | ||||
-rw-r--r-- | utils/html_test.go | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/utils/html.go b/utils/html.go index 0de33435d..8e1a78875 100644 --- a/utils/html.go +++ b/utils/html.go @@ -11,6 +11,7 @@ import ( "io" "path/filepath" "reflect" + "strings" "sync/atomic" "github.com/fsnotify/fsnotify" @@ -119,7 +120,10 @@ func (t *HTMLTemplate) RenderToWriter(w io.Writer) error { } func TranslateAsHtml(t i18n.TranslateFunc, translationID string, args map[string]interface{}) template.HTML { - return template.HTML(t(translationID, escapeForHtml(args))) + message := t(translationID, escapeForHtml(args)) + message = strings.Replace(message, "[[", "<strong>", -1) + message = strings.Replace(message, "]]", "</strong>", -1) + return template.HTML(message) } func escapeForHtml(arg interface{}) interface{} { diff --git a/utils/html_test.go b/utils/html_test.go index ba67189b6..43363488f 100644 --- a/utils/html_test.go +++ b/utils/html_test.go @@ -28,7 +28,7 @@ func init() { htmlTestTranslationBundle = bundle.New() fooBold, _ := translation.NewTranslation(map[string]interface{}{ "id": "foo.bold", - "translation": "<b>{{ .Foo }}</b>", + "translation": "<p>[[{{ .Foo }}]]</p>", }) htmlTestTranslationBundle.AddTranslation(&language.Language{Tag: "en"}, fooBold) } @@ -103,7 +103,7 @@ func TestHTMLTemplate_RenderError(t *testing.T) { } func TestTranslateAsHtml(t *testing.T) { - assert.EqualValues(t, "<b><i>foo</i></b>", TranslateAsHtml(i18n.TranslateFunc(htmlTestTranslationBundle.MustTfunc("en")), "foo.bold", map[string]interface{}{ + assert.EqualValues(t, "<p><strong><i>foo</i></strong></p>", TranslateAsHtml(i18n.TranslateFunc(htmlTestTranslationBundle.MustTfunc("en")), "foo.bold", map[string]interface{}{ "Foo": "<i>foo</i>", })) } |