Make it more complete

This commit is contained in:
2026-04-28 03:21:01 -05:00
parent 74c6d1126e
commit 1052b94a54
34 changed files with 712 additions and 82 deletions
+26
View File
@@ -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));
}
}
}
+20
View File
@@ -0,0 +1,20 @@
using Tesses.WebServer;
using Scriban;
using System.Web;
using System.Text;
namespace Tesses.YouTubeDownloader2025Companion
{
public static partial class Pages {
private static ReloadingScript song_albums = new ReloadingScript("wwwroot/pages/music/songs/song-albums.sbnhtml");
public static string SongAlbums(string songName, List<AlbumLink> albums)
{
return Components.Shell($"{songName}'s Albums", song_albums.Render(new
{
Songname = songName,
Albums = albums
}), Program.DefaultLinks(2));
}
}
}