Exemplo n.º 1
0
        protected override async Task <ReaderItem> GetArticle(ReaderItem item, bool isRefresh = false)
        {
            if (item == null)
            {
                return(null);
            }

            if (!isRefresh)
            {
                var article = await CacheService.GetArticle(item);

                if (article != null)
                {
                    return(article);
                }
            }

            var text = await GetArticleText(item.Id);

            var result = new ReaderItem();

            item.CopyItem(result);
            result.Text       = text.StripHtmlTags();
            item.Text         = result.Text.ToExcerpt();
            item.IsDownloaded = !string.IsNullOrEmpty(result.Text);
            await CacheService.SaveArticle(result).ConfigureAwait(false);

            return(result);
        }
Exemplo n.º 2
0
        private async Task Save(Action navigationAction = null)
        {
            var text = _loader.GetString("Saving.Text");

            SetProgressBar(text);

            var copyItem = new ReaderItem();

            ReaderItem.CopyItem(copyItem);
            await _readerHelper.SaveEditedArticle(copyItem);

            SetProgressBar();

            navigationAction?.Invoke();
        }
Exemplo n.º 3
0
        protected override async Task<ReaderItem> GetArticle(ReaderItem item, bool isRefresh = false)
        {
            if (item == null)
            {
                return null;
            }

            if (!isRefresh)
            {
                var article = await CacheService.GetArticle(item);
                if (article != null)
                {
                    return article;
                }
            }

            var text = await GetArticleText(item.Id);
            var result = new ReaderItem();
            item.CopyItem(result);
            result.Text = text.StripHtmlTags();
            item.Text = result.Text.ToExcerpt();
            item.IsDownloaded = !string.IsNullOrEmpty(result.Text);
            await CacheService.SaveArticle(result).ConfigureAwait(false);

            return result;
        }