public ActionResult Index(string searchText, int page = DEFAULT_PAGE_NUMBER) { if (String.IsNullOrWhiteSpace(searchText)) { var empty = new SearchResultsModel { Items = new StaticPagedList <SearchResultItemModel>(Enumerable.Empty <SearchResultItemModel>(), page, PAGE_SIZE, 0) }; return(View(empty)); } // Validate page number (starting from 1) page = Math.Max(page, DEFAULT_PAGE_NUMBER); var searchResults = mSearchService.Search(new SearchOptions(searchText, new [] { INDEX_NAME }) { PageNumber = page, PageSize = PAGE_SIZE }); var searchResultItemModels = searchResults.Items .Select(searchResultItem => mSearchItemViewModelFactory.GetTypedSearchResultItemModel(searchResultItem)); var model = new SearchResultsModel { Items = new StaticPagedList <SearchResultItemModel>(searchResultItemModels, page, PAGE_SIZE, searchResults.TotalNumberOfResults), Query = searchText }; return(View(model)); }
public ActionResult Index(string searchText, int page = DEFAULT_PAGE_NUMBER) { if (String.IsNullOrWhiteSpace(searchText)) { var empty = new SearchResultsModel { Items = new StaticPagedList <SearchResultItemModel>(Enumerable.Empty <SearchResultItemModel>(), page, PAGE_SIZE, 0) }; return(View(empty)); } // Validate page number (starting from 1) page = Math.Max(page, DEFAULT_PAGE_NUMBER); var searchParameters = SearchParameters.PrepareForPages(searchText, new[] { INDEX_NAME }, page, PAGE_SIZE, MembershipContext.AuthenticatedUser); var searchResults = SearchHelper.Search(searchParameters); mPagesActivityLogger.LogInternalSearch(searchText); var searchResultItemModels = searchResults.Items .Select(searchResultItem => mSearchItemViewModelFactory.GetTypedSearchResultItemModel(searchResultItem)); var model = new SearchResultsModel { Items = new StaticPagedList <SearchResultItemModel>(searchResultItemModels, page, PAGE_SIZE, searchResults.TotalNumberOfResults), Query = searchText }; return(View(model)); }
public ActionResult Index(string searchText, int page = DEFAULT_PAGE_NUMBER) { if (String.IsNullOrWhiteSpace(searchText)) { var empty = new SearchResultsModel { Items = new StaticPagedList <SearchResultItemModel>(Enumerable.Empty <SearchResultItemModel>(), page, PAGE_SIZE, 0) }; return(View(empty)); } // Validate page number (starting from 1) page = Math.Max(page, DEFAULT_PAGE_NUMBER); var searchParameters = SearchParameters.PrepareForPages(searchText, new[] { INDEX_NAME }, page, PAGE_SIZE, MembershipContext.AuthenticatedUser); var searchResults = SearchHelper.Search(searchParameters); pagesActivityLogger.LogInternalSearch(searchText); var siteId = siteService.CurrentSite.SiteID; var culture = Thread.CurrentThread.CurrentCulture.Name; var uri = retriever.GetContext().Request.Url; var hostAddress = retriever.GetContext().Request.UserHostAddress; analyticsLogger.LogInternalSearchKeywords(new AnalyticsData(siteId, searchText, culture: culture, uri: uri, hostAddress: hostAddress)); var searchResultItemModels = searchResults.Items .Select(searchResultItem => searchItemViewModelFactory.GetTypedSearchResultItemModel(searchResultItem)); var model = new SearchResultsModel { Items = new StaticPagedList <SearchResultItemModel>(searchResultItemModels, page, PAGE_SIZE, searchResults.TotalNumberOfResults), Query = searchText }; return(View(model)); }