3 files changed,
27 insertions(+),
8 deletions(-)
Author:
Oleksandr Smirnov
olexsmir@gmail.com
Committed at:
2026-02-14 15:19:34 +0200
Authored at:
2026-02-14 15:03:15 +0200
Change ID:
xvvqmromlyuukontltuktnrnmyxyylwl
Parent:
d5b24c1
M
internal/handlers/feed.go
路路路 2 2 3 3 import ( 4 4 "net/http" 5 + "net/url" 5 6 6 7 "github.com/gorilla/feeds" 7 8 ) 路路路 20 21 } 21 22 22 23 repoName := repo.Name() 24 + 25 + feedLink, err := url.JoinPath("http://", h.c.Meta.Host, repoName) 26 + if err != nil { 27 + h.write500(w, err) 28 + return 29 + } 30 + 23 31 feed := &feeds.Feed{ 24 32 Title: repoName, 25 - Link: &feeds.Link{Href: h.c.Meta.Host + "/" + repoName}, 33 + Link: &feeds.Link{Href: feedLink}, 26 34 Description: desc, 27 35 } 28 36 路路路 34 42 } 35 43 36 44 for _, branch := range branches { 45 + href, _ := url.JoinPath("http://", h.c.Meta.Host, repoName, "tree", branch.Name) 37 46 feed.Items = append(feed.Items, &feeds.Item{ 38 47 Id: "b:" + branch.Name, 39 48 Title: "branch: " + branch.Name, 40 - Link: &feeds.Link{Href: h.c.Meta.Host + "/tree/" + branch.Name}, 49 + Link: &feeds.Link{Href: href}, 41 50 Updated: branch.LastUpdate, 42 51 }) 43 52 } 路路路 49 58 } 50 59 51 60 for _, tag := range tags { 61 + href, _ := url.JoinPath("http://", h.c.Meta.Host, repoName, "tree", tag.Name()) 52 62 feed.Items = append(feed.Items, &feeds.Item{ 53 63 Id: "t:" + tag.Name(), 54 64 Title: "tag: " + tag.Name(), 55 - Link: &feeds.Link{Href: h.c.Meta.Host + "/tree/" + tag.Name()}, 65 + Link: &feeds.Link{Href: href}, 56 66 Description: desc, 57 67 Updated: tag.When(), 58 68 Content: tag.Message(), 路路路 76 86 return 77 87 } 78 88 89 + feedLink, err := url.JoinPath("http://", h.c.Meta.Host) 90 + if err != nil { 91 + h.write500(w, err) 92 + return 93 + } 94 + 79 95 feed := &feeds.Feed{ 80 96 Title: h.c.Meta.Host, 81 - Link: &feeds.Link{Href: h.c.Meta.Host}, 97 + Link: &feeds.Link{Href: feedLink}, 82 98 Description: h.c.Meta.Description, 83 99 } 84 100 85 101 for _, repo := range repos { 102 + href, _ := url.JoinPath("http://", h.c.Meta.Host, repo.Name) 86 103 feed.Items = append(feed.Items, &feeds.Item{ 87 104 Title: repo.Name, 88 - Link: &feeds.Link{Href: h.c.Meta.Host + "/" + repo.Name}, 105 + Link: &feeds.Link{Href: href}, 89 106 Description: repo.Desc, 90 107 Id: repo.Name, 91 108 Updated: repo.LastCommit,
M
web/templates/_head.html
路路路 7 7 <meta name="go-import" content="{{ .servername}}/{{ .name }} git https://{{ .servername }}/{{ .name }}"> 8 8 {{ end }} 9 9 {{ if and .servername .name }} 10 - <link rel="alternate" type="application/rss" href="{{ .servername }}/{{ .name }}/feed"> 11 - {{ else }} 12 - <link rel="alternate" type="application/rss" href="{{ .servername }}/index.xml"> 10 + <link rel="alternate" type="application/rss" href="https://{{ .servername }}/{{ .name }}/feed"> 11 + {{ end }} 12 + {{ if .servername }} 13 + <link rel="alternate" type="application/rss" href="https://{{ .servername }}/index.xml"> 13 14 {{ end }} 14 15 {{ end }}