diff --git a/data/album.go b/data/album.go index 6940857..ba2fec6 100644 --- a/data/album.go +++ b/data/album.go @@ -17,8 +17,9 @@ type Album struct { } type Track struct { - Title string - Url string + Title string + Url string + Number int } type albumMetadata struct { @@ -65,7 +66,7 @@ func (a *Album) parseAlbumData(doc *goquery.Document) error { for _, track := range albumMetadataFromPage.AlbumAppearances { url := strings.Replace(track.Song.Url, "https://genius.com", "", -1) - a.Tracks = append(a.Tracks, Track{Title: track.Song.Title, Url: url}) + a.Tracks = append(a.Tracks, Track{Title: track.Song.Title, Url: url, Number: track.TrackNumber}) } return nil diff --git a/style/album.css b/style/album.css index 59335b3..c2041ac 100644 --- a/style/album.css +++ b/style/album.css @@ -12,3 +12,25 @@ flex-shrink: 0; flex-grow: 1; } + +#album-single-track { + display: grid; + grid-template-columns: 3rem 1fr; + gap: 1rem; + align-items: center; + justify-content: center; +} + +#album-single-track p { + color: #181d31; + font-weight: 500; +} + +#album-single-track small { + font-size: 1.5rem; + color: #333; +} + +#album-single-track:hover p { + text-decoration: underline; +} diff --git a/views/album.templ b/views/album.templ index 3cb49fe..1e6d9c6 100644 --- a/views/album.templ +++ b/views/album.templ @@ -10,12 +10,15 @@ templ AlbumPage(a data.Album) {
Album image -

{ a.Artist }

-

{ a.Name }

+
+

{ a.Artist }

+

{ a.Name }

+
for _, t := range a.Tracks { - + + { fmt.Sprintf("%d", t.Number) }

{ t.Title }

}