diff options
author | ivan-meridianbanc-com <ivan@meridianbanc.com> | 2020-12-02 13:47:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-02 12:47:01 +0100 |
commit | aebfe156fb2f27057e61b2e50c7576e6b06dab58 (patch) | |
tree | b4f3cfaa0b55dbd1ef8dd7ca0f09e9993a1a2285 /helpers/url.go | |
parent | 907d9e92682ed56a57a2206ae9bd9a985b3e1870 (diff) |
Fix RelURL and AbsURL when path starts with language
Diffstat (limited to 'helpers/url.go')
-rw-r--r-- | helpers/url.go | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/helpers/url.go b/helpers/url.go index 6dbdea299..1e88def9e 100644 --- a/helpers/url.go +++ b/helpers/url.go @@ -181,10 +181,14 @@ func (p *PathSpec) AbsURL(in string, addLanguage bool) string { if prefix != "" { hasPrefix := false // avoid adding language prefix if already present + in2 := in if strings.HasPrefix(in, "/") { - hasPrefix = strings.HasPrefix(in[1:], prefix) + in2 = in[1:] + } + if in2 == prefix { + hasPrefix = true } else { - hasPrefix = strings.HasPrefix(in, prefix) + hasPrefix = strings.HasPrefix(in2, prefix+"/") } if !hasPrefix { @@ -230,10 +234,14 @@ func (p *PathSpec) RelURL(in string, addLanguage bool) string { if prefix != "" { hasPrefix := false // avoid adding language prefix if already present + in2 := in if strings.HasPrefix(in, "/") { - hasPrefix = strings.HasPrefix(in[1:], prefix) + in2 = in[1:] + } + if in2 == prefix { + hasPrefix = true } else { - hasPrefix = strings.HasPrefix(in, prefix) + hasPrefix = strings.HasPrefix(in2, prefix+"/") } if !hasPrefix { |