From 5a1f350caf95e2b361325bb0b2be2cef1f4e160d Mon Sep 17 00:00:00 2001 From: Max Holleman Date: Fri, 2 Jun 2023 11:56:48 +0200 Subject: [PATCH] Reworking db models from Argotic --- SharpRss/DbAccess.cs | 6 +++--- SharpRss/Services/RssService.cs | 15 +++++++++++---- WebSharpRSS/sharp_rss.sqlite | Bin 1216512 -> 1216512 bytes 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/SharpRss/DbAccess.cs b/SharpRss/DbAccess.cs index 2bb740f..f30516c 100644 --- a/SharpRss/DbAccess.cs +++ b/SharpRss/DbAccess.cs @@ -143,7 +143,7 @@ namespace SharpRss FeedModel? feed = null; await using SqliteConnection dbc = new SqliteConnection(ConnectionString); dbc.Open(); - await using SqliteCommand cmd = new SqliteCommand($"INSERT OR REPLACE INTO {FeedTable} (url, title, group_id, feed_type, description, language, copyright, date_added, last_updated, image_url, original_document) VALUES (@url, @title, @groupId, @feedType, @description, @language, @copyright, @dateAdded), @lastUpdated, @imageUrl, @originalDoc); SELECT * FROM {FeedTable} WHERE url=@url", dbc) + await using SqliteCommand cmd = new SqliteCommand($"INSERT OR REPLACE INTO {FeedTable} (url, title, group_id, feed_type, description, language, copyright, date_added, last_updated, image_url, original_document) VALUES (@url, @title, @groupId, @feedType, @description, @language, @copyright, @dateAdded, @lastUpdated, @imageUrl, @originalDoc); SELECT * FROM {FeedTable} WHERE url=@url", dbc) { Parameters = { @@ -154,8 +154,8 @@ namespace SharpRss new SqliteParameter("description", feedModel.Description ?? string.Empty), new SqliteParameter("language", feedModel.Language ?? string.Empty), new SqliteParameter("copyright", feedModel.Copyright ?? string.Empty), - new SqliteParameter("dateAdded", feedModel.DateAdded?.ToUnixTimeMilliseconds()), - new SqliteParameter("lastUpdated", feedModel.LastUpdated?.ToUnixTimeMilliseconds()), + new SqliteParameter("dateAdded", feedModel.DateAdded?.ToUnixTimeMilliseconds() ?? 0), + new SqliteParameter("lastUpdated", feedModel.LastUpdated?.ToUnixTimeMilliseconds() ?? 0), new SqliteParameter("imageUrl", feedModel.ImageUrl ?? string.Empty), new SqliteParameter("originalDoc", feedModel.OriginalDocument ?? string.Empty) } diff --git a/SharpRss/Services/RssService.cs b/SharpRss/Services/RssService.cs index 115fe72..72a2edc 100644 --- a/SharpRss/Services/RssService.cs +++ b/SharpRss/Services/RssService.cs @@ -49,9 +49,9 @@ namespace SharpRss.Services // Add feed FeedModel? dbFeed = await DbAccess.SetFeedAsync(fModel); // Update/fetch items - await DbAccess.FetchFeedItemsAsync(new string[] { fModel.Url }); + //await DbAccess.FetchFeedItemsAsync(new string[] { fModel.Url }); } - return false; + return true; } private static FeedModel FromResource(ISyndicationResource resource) { @@ -60,6 +60,13 @@ namespace SharpRss.Services { case SyndicationContentFormat.Rss: RssFeed rssFeed = (RssFeed)resource; + model.FeedType = rssFeed.Format.ToString(); + model.Title = rssFeed.Channel.Title; + model.Description = rssFeed.Channel.Description; + model.Copyright = rssFeed.Channel.Copyright; + model.Url = rssFeed.Channel.SelfLink.ToString(); + model.ImageUrl = rssFeed.Channel.Image?.Url.ToString(); + model.Language = rssFeed.Channel.Language?.ToString(); break; case SyndicationContentFormat.Atom: AtomFeed atomFeed = (AtomFeed)resource; @@ -158,8 +165,8 @@ namespace SharpRss.Services throw; }*/ /*var groups = await GetGroupsAsync(); - CategoryModel testGroup = groups.Single(x => x.Name == "News");*/ - await AddSubscriptionAsync("https://www.nu.nl/rss/Algemeen"); + CategoryModel testGroup = groups.Single(x => x.Name == "News"); + await AddSubscriptionAsync("https://www.nu.nl/rss/Algemeen", testGroup);*/ /*await AddFeedsAsync(new[] { "https://www.nu.nl/rss/Algemeen", diff --git a/WebSharpRSS/sharp_rss.sqlite b/WebSharpRSS/sharp_rss.sqlite index c7ccdf94a9a9711658b18a1a1297a53937ef24c0..e07870574735e4ddf0a165a109b3f200f084bd57 100644 GIT binary patch delta 287 zcmZoz;MK6eYl1YR(?l6(MyHJlOYGU$__-PQ!#8s{F!E34_Sa!lo}Az>&&tBgz^L3D z#wEAujV zs)q`Pi(7JV@bYGqloS+O>Fbx5m+R$~>gDC=7Zn%lJLaUP=BB3R`GqRzD!@3CZ|kc# z2Nf54q?Rb;Bqo*=m!vA>Wu}&v7b|1{g;GWDi|3U8S4OL+Y^deftU@5*@2h?h&h3n3y8Uam