diff --git a/src/cloudscribe.Syndication.Web/Controllers/RssController.cs b/src/cloudscribe.Syndication.Web/Controllers/RssController.cs index c60abc5..2ec7fc3 100644 --- a/src/cloudscribe.Syndication.Web/Controllers/RssController.cs +++ b/src/cloudscribe.Syndication.Web/Controllers/RssController.cs @@ -11,7 +11,9 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using System.Collections.Generic; +using System.IO; using System.Threading.Tasks; +using System.Xml.Linq; namespace cloudscribe.Syndication.Web.Controllers { @@ -75,6 +77,9 @@ public virtual async Task Index() var xml = XmlFormatter.BuildXml(currentChannel); + var processingInstruction = new XProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"/rss-style.xsl\""); + xml.AddFirst(processingInstruction); + return new XmlResult(xml); } diff --git a/src/cloudscribe.Syndication.Web/buildTransitive/cloudscribe.Syndication.Web.targets b/src/cloudscribe.Syndication.Web/buildTransitive/cloudscribe.Syndication.Web.targets new file mode 100644 index 0000000..b506286 --- /dev/null +++ b/src/cloudscribe.Syndication.Web/buildTransitive/cloudscribe.Syndication.Web.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/cloudscribe.Syndication.Web/buildTransitive/rss-style.xsl b/src/cloudscribe.Syndication.Web/buildTransitive/rss-style.xsl new file mode 100644 index 0000000..51cd5e1 --- /dev/null +++ b/src/cloudscribe.Syndication.Web/buildTransitive/rss-style.xsl @@ -0,0 +1,46 @@ + + + + + + + + <xsl:value-of select="/rss/channel/title"/> + + + + + + +
+

+ +

+

+ +

+
+
+ + + +
+ + +
+
\ No newline at end of file diff --git a/src/cloudscribe.Syndication.Web/buildTransitive/rss.css b/src/cloudscribe.Syndication.Web/buildTransitive/rss.css new file mode 100644 index 0000000..145910c --- /dev/null +++ b/src/cloudscribe.Syndication.Web/buildTransitive/rss.css @@ -0,0 +1,59 @@ +* { + box-sizing: border-box; + font-family: sans-serif; + line-height: 1.4; + margin: 0; + padding: 0; +} + +html { + background: #FFFFFF; + color: #212529; +} + +body { + padding: 1.5rem; +} + +a { + color: #337ab7; +} + + a:hover { + color: #296292; + } + +main, header { + margin-block-end: 3rem; + margin-inline: auto; + max-inline-size: 80ch; +} + +article { + margin-block-end: 3rem; +} + +h1 { + font-size: 2.5rem; + line-height: 1.2; + margin-block: 1rem; +} + +h2 { + font-size: 2rem; + margin-block: 2rem; +} + +h3 { + font-size: 1.75rem; + margin-block: 1rem; +} + +p { + font-size: 1.25rem; + margin-block-end: 1rem; +} + +small { + font-size: 1rem; +} \ No newline at end of file diff --git a/src/cloudscribe.Syndication.Web/cloudscribe.Syndication.Web.csproj b/src/cloudscribe.Syndication.Web/cloudscribe.Syndication.Web.csproj index 7bca513..5382022 100644 --- a/src/cloudscribe.Syndication.Web/cloudscribe.Syndication.Web.csproj +++ b/src/cloudscribe.Syndication.Web/cloudscribe.Syndication.Web.csproj @@ -1,8 +1,8 @@ - + asp.netcore mvc controller for rss feeds - 8.4.0 + 8.5.0 net8.0 Joe Audette cloudscribe;syndication;rss;atom;feed @@ -29,6 +29,10 @@ - - + + + + + + diff --git a/src/cloudscribe.Syndication/cloudscribe.Syndication.csproj b/src/cloudscribe.Syndication/cloudscribe.Syndication.csproj index 0c34ca8..e7d1708 100644 --- a/src/cloudscribe.Syndication/cloudscribe.Syndication.csproj +++ b/src/cloudscribe.Syndication/cloudscribe.Syndication.csproj @@ -2,7 +2,7 @@ cloudscribe.Syndication Class Library - 8.4.0 + 8.5.0 net8.0 Joe Audette cloudscribe;syndication;rss;atom;feed;xml @@ -23,11 +23,7 @@ - - - - diff --git a/update_version.ps1 b/update_version.ps1 index 0ed4dd0..e38bfec 100644 --- a/update_version.ps1 +++ b/update_version.ps1 @@ -16,9 +16,9 @@ $directory = "src" # Define the old & new versions -$oldVersion = '8\.3' # slash needed ! -$newVersion = "8.4.0" -$newWildcardVersion = "8.4.*" +$oldVersion = '8\.4' # slash needed ! +$newVersion = "8.5.0" +$newWildcardVersion = "8.5.*" # Get all .csproj files in the directory and subdirectories