diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2017-03-23 20:05:10 +0100 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2017-03-27 15:43:56 +0200 |
commit | d851d6b98fefbe7de91c8c58b883cca4da17eea9 (patch) | |
tree | 5171cf499aef5d69ef00ef3b4bcdca777363060b /hugolib/site.go | |
parent | 8bcc08e3b0ddd5762101bb2f061e0be04ecd8d57 (diff) |
Add custom protocol support in Permalink
Diffstat (limited to 'hugolib/site.go')
-rw-r--r-- | hugolib/site.go | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/hugolib/site.go b/hugolib/site.go index 1cdb285ba..e3a896148 100644 --- a/hugolib/site.go +++ b/hugolib/site.go @@ -1766,9 +1766,29 @@ func (s *SiteInfo) GetPage(typ string, path ...string) *Page { return s.getPage(typ, path...) } +func (s *Site) permalinkForOutputFormat(link string, f output.Format) (string, error) { + var ( + baseURL string + err error + ) + + if f.Protocol != "" { + baseURL, err = s.PathSpec.BaseURL.WithProtocol(f.Protocol) + if err != nil { + return "", err + } + } else { + baseURL = s.PathSpec.BaseURL.String() + } + return s.permalinkForBaseURL(link, baseURL), nil +} + func (s *Site) permalink(link string) string { - baseURL := s.PathSpec.BaseURL.String() + return s.permalinkForBaseURL(link, s.PathSpec.BaseURL.String()) + +} +func (s *Site) permalinkForBaseURL(link, baseURL string) string { link = strings.TrimPrefix(link, "/") if !strings.HasSuffix(baseURL, "/") { baseURL += "/" |