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 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(2)); } } }