@page "/rss.xml"
@model TaxBaik.Web.Pages.RssModel
@{
    Response.ContentType = "application/rss+xml; charset=utf-8";
}@{
    var rssContent = new System.Text.StringBuilder();
    rssContent.AppendLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
    rssContent.AppendLine("<rss version=\"2.0\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\">");
    rssContent.AppendLine("  <channel>");
    rssContent.AppendLine("    <title>백원숙 세무회계 - 블로그</title>");
    rssContent.AppendLine("    <link>https://www.taxbaik.com</link>");
    rssContent.AppendLine("    <description>세무사 백원숙의 세금, 부동산, 가족자산 전문 블로그</description>");
    rssContent.AppendLine("    <language>ko-kr</language>");
    rssContent.AppendLine($"    <lastBuildDate>{Model.LastBuildDate}</lastBuildDate>");
    rssContent.AppendLine("    <ttl>60</ttl>");

    foreach (var post in Model.Posts)
    {
        rssContent.AppendLine("    <item>");
        rssContent.AppendLine($"      <title>{System.Net.WebUtility.HtmlEncode(post.Title)}</title>");
        rssContent.AppendLine($"      <link>https://www.taxbaik.com/blog/{post.Slug}</link>");
        rssContent.AppendLine($"      <guid isPermaLink=\"true\">https://www.taxbaik.com/blog/{post.Slug}</guid>");
        rssContent.AppendLine($"      <pubDate>{post.PublishedAt?.ToString("R")}</pubDate>");
        var desc = post.Content?.Substring(0, Math.Min(200, post.Content?.Length ?? 0)) ?? "";
        rssContent.AppendLine($"      <description>{System.Net.WebUtility.HtmlEncode(desc)}</description>");
        if (!string.IsNullOrEmpty(post.Content))
        {
            rssContent.AppendLine($"      <content:encoded><![CDATA[{post.Content}]]></content:encoded>");
        }
        rssContent.AppendLine("    </item>");
    }

    rssContent.AppendLine("  </channel>");
    rssContent.AppendLine("</rss>");
}@rssContent.ToString()
