Пример #1
0
        private Result ResultForOpenSiteCommandAutoComplete(BaseSiteEntity baseSiteEntity)
        {
            if (baseSiteEntity != null)
            {
                var result = new Result
                {
                    Title    = baseSiteEntity.Name,
                    SubTitle = "Open site " + baseSiteEntity.Name,
                    IcoPath  = $"{ImagePathPrefix}open.png",
                    Score    = 99999,
                    Action   = (x) =>
                    {
                        try
                        {
                            Process.Start(baseSiteEntity.Url);
                            return(true);
                        }
                        catch
                        {
                            _context.API.ShowMsg($"Can not open url {baseSiteEntity.Url}");
                            return(false);
                        }
                    }
                };

                return(result);
            }

            return(new Result {
                Title = "No items..."
            });
        }
Пример #2
0
        private List <Result> LoadRssItems(BaseSiteEntity site)
        {
            var results = new List <Result>();

            if (!string.IsNullOrWhiteSpace(site.RssUrl))
            {
                var feed = CodeHollow.FeedReader.FeedReader.ReadAsync(site.RssUrl).Result;
                foreach (var item in feed.Items)
                {
                    var gNews = new Result
                    {
                        Title   = PluginHelper.StripHtml(item.Title),
                        IcoPath = site.IconPath,
                        Action  = x =>
                        {
                            try
                            {
                                Process.Start(item.Link);
                                return(true);
                            }
                            catch
                            {
                                _context.API.ShowMsg($"Can not open url {item.Link}");
                                return(false);
                            }
                        }
                    };

                    var date = item.PublishingDate?.ToString("dd/MM/yyyy hh:mm tt");
                    gNews.SubTitle = string.IsNullOrWhiteSpace(item.Author) ? date : $"{item.Author} - {date}";

                    results.Add(gNews);
                }
            }

            return(results);
        }