i don't know how to describe this hoppity

This commit is contained in:
Laptop
2024-10-05 20:08:46 +03:00
parent 60017d42de
commit 316fc0ece1
6 changed files with 63 additions and 86 deletions

View File

@@ -59,3 +59,23 @@ templ Playlist(p sc.Playlist) {
<p>Last modified: { p.LastModified }</p>
</div>
}
templ SearchPlaylists(p *sc.Paginated[*sc.Playlist]) {
<span>Found { strconv.FormatInt(p.Total, 10) } playlists</span>
<br/>
<br/>
for _, playlist := range p.Collection {
<a class="listing" href={ templ.URL("/" + playlist.Author.Permalink + "/sets/" + playlist.Permalink) }>
if playlist.Artwork != "" {
<img src={ playlist.Artwork }/>
} else {
<img src="/placeholder.jpg"/>
}
<div class="meta">
<h3>{ playlist.Title }</h3>
<span>{ playlist.Author.Username }</span>
</div>
</a>
}
<a class="btn" href={ templ.URL("?type=playlists&pagination=" + url.QueryEscape(strings.Split(p.Next, "/playlists")[1])) } rel="noreferrer">More playlists</a>
}

View File

@@ -1,28 +0,0 @@
package templates
import (
"github.com/maid-zone/soundcloak/lib/sc"
"net/url"
"strconv"
"strings"
)
templ SearchPlaylists(p *sc.Paginated[*sc.Playlist]) {
<span>Found { strconv.FormatInt(p.Total, 10) } playlists</span>
<br/>
<br/>
for _, playlist := range p.Collection {
<a class="listing" href={ templ.URL("/" + playlist.Author.Permalink + "/sets/" + playlist.Permalink) }>
if playlist.Artwork != "" {
<img src={ playlist.Artwork }/>
} else {
<img src="/placeholder.jpg"/>
}
<div class="meta">
<h3>{ playlist.Title }</h3>
<span>{ playlist.Author.Username }</span>
</div>
</a>
}
<a class="btn" href={ templ.URL("?type=playlists&pagination=" + url.QueryEscape(strings.Split(p.Next, "/playlists")[1])) } rel="noreferrer">More playlists</a>
}

View File

@@ -1,28 +0,0 @@
package templates
import (
"github.com/maid-zone/soundcloak/lib/sc"
"net/url"
"strconv"
"strings"
)
templ SearchTracks(p *sc.Paginated[*sc.Track]) {
<span>Found { strconv.FormatInt(p.Total, 10) } tracks</span>
<br/>
<br/>
for _, track := range p.Collection {
<a class="listing" href={ templ.URL("/" + track.Author.Permalink + "/" + track.Permalink) }>
if track.Artwork != "" {
<img src={ track.Artwork } class={ViewTransition("t" + track.ID)}>
} else {
<img src="/placeholder.jpg"/>
}
<div class="meta">
<h3>{ track.Title }</h3>
<span>{ track.Author.Username }</span>
</div>
</a>
}
<a class="btn" href={ templ.URL("?type=tracks&pagination=" + url.QueryEscape(strings.Split(p.Next, "/tracks")[1])) } rel="noreferrer">More tracks</a>
}

View File

@@ -1,30 +0,0 @@
package templates
import (
"github.com/maid-zone/soundcloak/lib/sc"
"net/url"
"strconv"
"strings"
)
templ SearchUsers(p *sc.Paginated[*sc.User]) {
<span>Found { strconv.FormatInt(p.Total, 10) } users</span>
<br/>
<br/>
for _, user := range p.Collection {
<a class="listing" href={ templ.URL("/" + user.Permalink) }>
if user.Avatar != "" {
<img src={ user.Avatar }/>
} else {
<img src="/placeholder.jpg"/>
}
<div class="meta">
<h3>{ user.Username }</h3>
if user.FullName != "" {
<span>{ user.FullName }</span>
}
</div>
</a>
}
<a class="btn" href={ templ.URL("?type=users&pagination=" + url.QueryEscape(strings.Split(p.Next, "/users")[1])) } rel="noreferrer">More users</a>
}

View File

@@ -4,6 +4,7 @@ import (
"github.com/maid-zone/soundcloak/lib/sc"
"strconv"
"strings"
"net/url"
)
templ TrackHeader(t sc.Track) {
@@ -102,3 +103,23 @@ templ TrackEmbed(t sc.Track, stream string) {
</body>
</html>
}
templ SearchTracks(p *sc.Paginated[*sc.Track]) {
<span>Found { strconv.FormatInt(p.Total, 10) } tracks</span>
<br/>
<br/>
for _, track := range p.Collection {
<a class="listing" href={ templ.URL("/" + track.Author.Permalink + "/" + track.Permalink) }>
if track.Artwork != "" {
<img src={ track.Artwork } class={ViewTransition("t" + track.ID)}>
} else {
<img src="/placeholder.jpg"/>
}
<div class="meta">
<h3>{ track.Title }</h3>
<span>{ track.Author.Username }</span>
</div>
</a>
}
<a class="btn" href={ templ.URL("?type=tracks&pagination=" + url.QueryEscape(strings.Split(p.Next, "/tracks")[1])) } rel="noreferrer">More tracks</a>
}

View File

@@ -54,3 +54,25 @@ templ User(u sc.User, p *sc.Paginated[sc.Track]) {
<span>no more tracks</span>
}
}
templ SearchUsers(p *sc.Paginated[*sc.User]) {
<span>Found { strconv.FormatInt(p.Total, 10) } users</span>
<br/>
<br/>
for _, user := range p.Collection {
<a class="listing" href={ templ.URL("/" + user.Permalink) }>
if user.Avatar != "" {
<img src={ user.Avatar }/>
} else {
<img src="/placeholder.jpg"/>
}
<div class="meta">
<h3>{ user.Username }</h3>
if user.FullName != "" {
<span>{ user.FullName }</span>
}
</div>
</a>
}
<a class="btn" href={ templ.URL("?type=users&pagination=" + url.QueryEscape(strings.Split(p.Next, "/users")[1])) } rel="noreferrer">More users</a>
}