Add meta tags to show cover and share description in social platforms

This commit is contained in:
Deluan
2023-01-24 15:35:23 -05:00
parent cab43c89e6
commit 69b36c75a5
5 changed files with 54 additions and 19 deletions
+7 -8
View File
@@ -4,6 +4,7 @@ import (
"errors"
"net/http"
"github.com/navidrome/navidrome/consts"
"github.com/navidrome/navidrome/log"
"github.com/navidrome/navidrome/model"
"github.com/navidrome/navidrome/server"
@@ -41,17 +42,15 @@ func (p *Router) handleShares(w http.ResponseWriter, r *http.Request) {
return
}
s = p.mapShareInfo(*s)
s = p.mapShareInfo(r, *s)
server.IndexWithShare(p.ds, ui.BuildAssets(), s)(w, r)
}
func (p *Router) mapShareInfo(s model.Share) *model.Share {
mapped := &model.Share{
Description: s.Description,
Tracks: s.Tracks,
}
func (p *Router) mapShareInfo(r *http.Request, s model.Share) *model.Share {
s.URL = ShareURL(r, s.ID)
s.ImageURL = ImageURL(r, s.CoverArtID(), consts.UICoverArtSize)
for i := range s.Tracks {
mapped.Tracks[i].ID = encodeMediafileShare(s, s.Tracks[i].ID)
s.Tracks[i].ID = encodeMediafileShare(s, s.Tracks[i].ID)
}
return mapped
return &s
}
+1
View File
@@ -41,6 +41,7 @@ func (p *Router) routes() http.Handler {
if conf.Server.DevEnableShare {
r.HandleFunc("/s/{id}", p.handleStream)
r.HandleFunc("/{id}", p.handleShares)
r.HandleFunc("/", p.handleShares)
r.Handle("/*", p.assetsHandler)
}
})