Make it more complete
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
using Tesses.WebServer;
|
||||
using Scriban;
|
||||
using System.Web;
|
||||
namespace Tesses.YouTubeDownloader2025Companion
|
||||
{
|
||||
public class SongLink(string name, string id) {
|
||||
public string Name => HttpUtility.HtmlEncode(name);
|
||||
public string Url => HttpUtility.HtmlAttributeEncode($"/music/song?id={HttpUtility.UrlEncode(id)}");
|
||||
|
||||
}
|
||||
|
||||
public static partial class Pages {
|
||||
|
||||
private static ReloadingScript song_listing = new ReloadingScript("wwwroot/pages/music/songs/song-list.sbnhtml");
|
||||
public static string SongListing(string query, List<SongLink> links, int page)
|
||||
{
|
||||
return Components.Shell($"Song search {query}", song_listing.Render(new {
|
||||
Songs = links,
|
||||
Q = HttpUtility.HtmlAttributeEncode(query),
|
||||
Prev = HttpUtility.HtmlAttributeEncode($"/music/songs?q={HttpUtility.UrlEncode(query)}&page={(page == 1 ? 1 : page - 1)}"),
|
||||
Current = page,
|
||||
Next = HttpUtility.HtmlAttributeEncode($"/music/songs?q={HttpUtility.UrlEncode(query)}&page={page + 1}")
|
||||
}),Program.DefaultLinks(2));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user