27 lines
1.4 KiB
C#
27 lines
1.4 KiB
C#
using Tesses.WebServer;
|
|
using Scriban;
|
|
using System.Web;
|
|
//using YouTubeMusicAPI.Models.Info;
|
|
namespace Tesses.YouTubeDownloader2025Companion
|
|
{
|
|
public class MyAlbumLink(string name, string id, string thumbnail) {
|
|
public string Albumname => HttpUtility.HtmlEncode(name);
|
|
public string Albumurl => HttpUtility.HtmlAttributeEncode($"/music/myalbum?id={HttpUtility.UrlEncode(id)}");
|
|
public string Imgurl => HttpUtility.HtmlAttributeEncode(thumbnail);
|
|
}
|
|
public static partial class Pages {
|
|
private static ReloadingScript myartist_album_listing = new ReloadingScript("wwwroot/pages/music/myartists/artist-album-list.sbnhtml");
|
|
|
|
public static string MyArtistAlbumListing(Guid id,string query, List<MyAlbumLink> albums, int page)
|
|
{
|
|
return Components.Shell("Albums", myartist_album_listing.Render(new {
|
|
Searchurl = $"/music/myartist?id={id.ToString()}",
|
|
Q = HttpUtility.HtmlAttributeEncode(query),
|
|
Albums = albums,
|
|
Prev = HttpUtility.HtmlAttributeEncode($"/music/myartist?q={HttpUtility.UrlEncode(query)}&id={HttpUtility.UrlEncode(id.ToString())}&page={(page == 1 ? 1 : page - 1)}"),
|
|
Current = page,
|
|
Next = HttpUtility.HtmlAttributeEncode($"/music/myartist?q={HttpUtility.UrlEncode(query)}&id={HttpUtility.UrlEncode(id.ToString())}&page={page + 1}")
|
|
}),Program.DefaultLinks());
|
|
}
|
|
}
|
|
} |