]> fortfriendship.online Git - gnargle.github.io.git/blobdiff - RSSGen/Program.cs
new entry on srb2!!
[gnargle.github.io.git] / RSSGen / Program.cs
index 7204f0687155c1b7578de26341e9585683e68f30..12241921f4ea31b9147f0a4d182eed8214a0491c 100644 (file)
@@ -1,12 +1,24 @@
-using RssFeedGenerator;
+using OpenGraphNet;
+using RssFeedGenerator;
 using System;
 using System.Collections.Generic;
 using System.IO;
 using System;
 using System.Collections.Generic;
 using System.IO;
+using System.Runtime.InteropServices;
 
 // See https://aka.ms/new-console-template for more information
 Console.WriteLine("Scanning entries folder for latest files");
 
 
 // See https://aka.ms/new-console-template for more information
 Console.WriteLine("Scanning entries folder for latest files");
 
-var filePaths = Directory.EnumerateFiles(Path.Combine(Directory.GetCurrentDirectory(), "../../../../entries"));
+var folder = String.Empty;
+
+if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
+{
+    folder = Path.Combine(Directory.GetCurrentDirectory(), "../entries");
+}
+else
+{
+    folder = Path.Combine(Directory.GetCurrentDirectory(), "../../../../entries");
+}
+var filePaths = Directory.EnumerateFiles(folder);
 var fileInfos = new List<FileInfo>();
 
 if (filePaths.Any())
 var fileInfos = new List<FileInfo>();
 
 if (filePaths.Any())
@@ -22,7 +34,16 @@ if (filePaths.Any())
 
 Console.WriteLine("Scanning projects folder for latest files");
 
 
 Console.WriteLine("Scanning projects folder for latest files");
 
-filePaths = Directory.EnumerateFiles(Path.Combine(Directory.GetCurrentDirectory(), "../../../../projects"));
+if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
+{
+    folder = Path.Combine(Directory.GetCurrentDirectory(), "../projects");
+}
+else
+{
+    folder = Path.Combine(Directory.GetCurrentDirectory(), "../../../../projects");
+}
+
+filePaths = Directory.EnumerateFiles(folder);
 
 if (filePaths.Any())
 {
 
 if (filePaths.Any())
 {
@@ -49,17 +70,21 @@ myRSS.channel = new rssChannel
     link1 = new link
     {
         href = "https://athene.gay/feed.xml",
     link1 = new link
     {
         href = "https://athene.gay/feed.xml",
-        rel="self",
+        rel = "self",
         type = "application/rss+xml",
     }
 };
 
 foreach (var file in fileInfos)
 {
         type = "application/rss+xml",
     }
 };
 
 foreach (var file in fileInfos)
 {
+    var htmlString = File.ReadAllText(file.FullName);
+    OpenGraph graph = OpenGraph.ParseHtml(htmlString);
+    var publishDate = DateTime.Parse(graph.Metadata["article:published_time"].First());
     var item = new rssChannelItem()
     {
     var item = new rssChannelItem()
     {
-        title = Path.GetFileNameWithoutExtension(file.Name),
-        pubDate = file.CreationTimeUtc.ToString("r"),
+        title = graph.Title,
+        description = graph.Metadata["og:description"].First(),
+        pubDate = publishDate.ToString("r"),
     };
     if (file.FullName.Contains("entries"))
     {
     };
     if (file.FullName.Contains("entries"))
     {
@@ -79,7 +104,16 @@ foreach (var file in fileInfos)
 
 var output = Generator.SerializeRSS(myRSS);
 
 
 var output = Generator.SerializeRSS(myRSS);
 
-var rssPath = Path.Combine(Directory.GetCurrentDirectory(), "../../../../feed.xml");
+var rssPath = String.Empty;
+
+if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
+{
+    rssPath = Path.Combine(Directory.GetCurrentDirectory(), "../feed.xml");
+}
+else
+{
+    rssPath = Path.Combine(Directory.GetCurrentDirectory(), "../../../../feed.xml");
+}
 
 if (File.Exists(rssPath))
 {
 
 if (File.Exists(rssPath))
 {