Esempio n. 1
0
        public ActionResult Index(ArticleSearchViewModel vm)
        {
            Func <IQueryable <Article>, IQueryable <Article> > articleFilter = q =>
            {
                q = q.Include(a => a.Category)
                    .Include(a => a.CreatedByUser)
                    .Include(a => a.UpdatedByUser).Where(a => a.State == ArticleState.Published);

                if (vm.CategoryId.HasValue)
                {
                    q = q.Where(r => r.CategoryId == vm.CategoryId.Value);
                }

                if (!string.IsNullOrEmpty(vm.Title))
                {
                    q = q.Where(r => r.Title.Contains(vm.Title));
                }

                return(q);
            };

            vm.Articles = _articleRepository.SearchPage(articleFilter, o => o.OrderByDescending(c => c.UpdatedOn), vm.GetPageNo(), vm.PageSize);

            return(View(vm));
        }
Esempio n. 2
0
        public IActionResult ArticleSearch(int categoryId)
        {
            ArticleSearchViewModel articleSearchViewModel = new ArticleSearchViewModel {
                articles = articleContext.getArticleByCategory(categoryId)
            };

            return(View(articleSearchViewModel));
        }
Esempio n. 3
0
        public IActionResult ArticleSearch(string keywords)
        {
            ArticleSearchViewModel articleSearchViewModel = new ArticleSearchViewModel {
                articles = articleContext.searchArticle(keywords)//Search article
            };

            return(View(articleSearchViewModel));
        }
Esempio n. 4
0
        public async Task <ActionResult <ArticleSearchViewModel> > Search(string searchTerm, PagingParams pagingParams)
        {
            var articles = await Mediator.Send(new GetArticlesBySearchQuery(searchTerm, pagingParams));

            var model = new ArticleSearchViewModel {
                SearchTerm = searchTerm, ArticlePage = new FrontendPage <GetArticleModel>(articles)
            };

            return(View(model));
        }
Esempio n. 5
0
 public static ArticleSearchCriteria Map(ArticleSearchViewModel viewModel)
 {
     var model = new ArticleSearchCriteria();
     model.Title = viewModel.Title ?? String.Empty;
     model.Description = viewModel.Description ?? String.Empty;
     model.Author = viewModel.Author ?? String.Empty;
     model.Disciplines = viewModel.Disciplines != null
         ? viewModel.Disciplines.Select(x => x.Id)
         : null;
     return model;
 }
Esempio n. 6
0
        public static ArticleSearchCriteria Map(ArticleSearchViewModel viewModel)
        {
            var model = new ArticleSearchCriteria();

            model.Title       = viewModel.Title ?? String.Empty;
            model.Description = viewModel.Description ?? String.Empty;
            model.Author      = viewModel.Author ?? String.Empty;
            model.Disciplines = viewModel.Disciplines != null
                ? viewModel.Disciplines.Select(x => x.Id)
                : null;

            return(model);
        }
Esempio n. 7
0
        public PartialViewResult SubmitSearch(ArticleSearchViewModel viewModel)
        {
            var resultsViewModel = new SearchResultsViewModel();
            var results          = _searchService.SearchArticles(viewModel.SearchTerm, "");

            foreach (var result in results)
            {
                resultsViewModel.Results.Add(new SearchResultViewModel()
                {
                    Id    = result.ItemId.ToString(),
                    Title = result.Title,
                    Url   = result.Url
                });
            }
            return(PartialView("~/Views/Search/_SearchResults.cshtml", resultsViewModel));
        }
Esempio n. 8
0
        public ActionResult FindArticles(ArticleSearchViewModel viewModel)
        {
            var result = Service.FindArticles(ArticleSearchMapper.Map(viewModel));

            return(View("ArticleSearchResultView", ArticleSearchResultMapper.Map(result)));
        }
 public ArticleSearchView()
 {
     this.InitializeComponent();
     vm = this.DataContext as ArticleSearchViewModel;
 }