mirror of
https://github.com/hmaxnl/SharpRSS.git
synced 2024-09-20 10:04:21 +02:00
44 lines
1.3 KiB
C#
44 lines
1.3 KiB
C#
using System.Dynamic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using CodeHollow.FeedReader;
|
|
using Serilog;
|
|
using ToolQit.Extensions;
|
|
|
|
namespace SharpRss.Models
|
|
{
|
|
public class FeedModel : IGuideItem
|
|
{
|
|
public FeedModel(string rssUrl)
|
|
{
|
|
_rssUrl = rssUrl;
|
|
Task.Run(async () => Base = await FeedCache.GetFeed(_rssUrl));
|
|
}
|
|
|
|
public Feed Base { get; private set; }
|
|
public bool IsSelected { get; set; }
|
|
public bool IsExpanded { get; set; }
|
|
public bool IsReady { get; private set; }
|
|
private readonly string _rssUrl;
|
|
/*public async void Load(bool reload = false)
|
|
{
|
|
if (Base != null && !reload || !IsReady) return;
|
|
if (_rssUrl.IsNullEmptyWhiteSpace())
|
|
{
|
|
Log.Error("RSS Url is empty!");
|
|
return;
|
|
}
|
|
IsReady = false;
|
|
string feedUrl;
|
|
var urls = await FeedReader.GetFeedUrlsFromUrlAsync(_rssUrl);
|
|
if (!urls.Any())
|
|
feedUrl = _rssUrl;
|
|
else
|
|
feedUrl = urls.First().Url;
|
|
Log.Verbose("Creating feed: {FeedUrl}", feedUrl);
|
|
Base = await FeedReader.ReadAsync(feedUrl);
|
|
IsReady = true;
|
|
}*/
|
|
}
|
|
}
|