From: bep Date: Sun, 18 Jan 2015 14:16:48 +0000 (+0100) Subject: Make all the params to Replace an interface{} X-Git-Tag: v0.13~178 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=4f4015d751f7422e448c86ee7c57e11c546901a9;p=brevno-suite%2Fhugo Make all the params to Replace an interface{} --- diff --git a/tpl/template.go b/tpl/template.go index 1ddc04b5..8d55fc89 100644 --- a/tpl/template.go +++ b/tpl/template.go @@ -890,12 +890,20 @@ func Trim(a interface{}, b string) (string, error) { } // Replace all occurences of b with c in a -func Replace(a interface{}, b string, c string) (string, error) { +func Replace(a, b, c interface{}) (string, error) { aStr, err := cast.ToStringE(a) if err != nil { return "", err } - return strings.Replace(aStr, b, c, -1), nil + bStr, err := cast.ToStringE(b) + if err != nil { + return "", err + } + cStr, err := cast.ToStringE(c) + if err != nil { + return "", err + } + return strings.Replace(aStr, bStr, cStr, -1), nil } func SafeHtml(text string) template.HTML {