public static string FormattedName(this SortByOption sortBy)
        {
            switch (sortBy)
            {
            case SortByOption.AtoZ:
            {
                return("Training provider (A-Z)");
            }

            case SortByOption.ZtoA:
            {
                return("Training provider (Z-A)");
            }

            case SortByOption.Distance:
            {
                return("Distance");
            }

            default:
            {
                return("");
            }
            }
        }
 public GetFirstArticlesQuery(int skip, int take, bool hasNulls, SortByOption sortByOption)
 {
     Skip         = skip;
     Take         = take;
     HasNulls     = hasNulls;
     SortByOption = sortByOption;
 }
        public async Task <IActionResult> Main(int page = 1, SortByOption sortBy = SortByOption.DateTime)
        {
            var hasNulls = false;

            var pageSize = 0;

            if (!Int32.TryParse(_configuration["Constants:PageSize"], out pageSize))
            {
                Log.Error("Constants:PageSize field is not valid");
                pageSize = 20;
            }

            var news = (await _articleService.GetFirst((page - 1) * pageSize, pageSize, hasNulls, sortBy)).ToList();

            int articlesCount = hasNulls ? await _articleService.GetArticlesCount() : await _articleService.GetRatedArticlesCount();

            var pageInfo = new PageInfo()
            {
                PageNumber   = page,
                PageSize     = pageSize,
                TotalItems   = articlesCount,
                SortByOption = sortBy
            };

            var articleInfos = _mapper.Map <IEnumerable <ArticleInfoViewModel> >(news).ToArray();

            for (int i = 0; i < articleInfos.Count(); i++)
            {
                articleInfos[i].RssName = (await _rssService.GetById(news[i].RssId)).Name;
            }

            return(View(new NewsOnPageViewModel()
            {
                ArticleInfos = articleInfos, PageInfo = pageInfo
            }));
        }
Exemple #4
0
 public async Task <IEnumerable <ArticleDto> > GetFirst(int skip, int take, bool hasNulls, SortByOption sortByOption)
 {
     return(await _mediator.Send(new GetFirstArticlesQuery(skip, take, hasNulls, sortByOption)));
 }