public ActionResult GlobalSearch(string currentFilter, string searchString, int?page) { var pageNumber = page ?? 1; if (string.IsNullOrWhiteSpace(searchString)) { searchString = null; } if (searchString != null) { page = 1; } else { searchString = currentFilter; } var objectsPerPage = 20; var startIndex = (pageNumber - 1) * objectsPerPage; SearchParamsProduct SearchParams = new SearchParamsProduct(searchString, startIndex, objectsPerPage) { IsSearchOnlyPublicProduct = true }; SearchResult <Product> searchResult; if (searchString == null) { searchResult = new SearchResult <Product>() { Objects = new List <Product>(), RequestedStartIndex = 0, Total = objectsPerPage, RequestedObjectsCount = objectsPerPage }; } else { searchResult = _productRepository.Get(SearchParams); } ViewBag.CurrentFilter = searchString; var viewModel = SearchResultViewModel <Product> .CreateFromSearchResult(searchResult, i => i, 10); List <BreadCrumbViewModel> breadcrumbs = new List <BreadCrumbViewModel>(); breadcrumbs.Add(new BreadCrumbViewModel() { Title = "Поиск" }); ViewBag.BredCrumbs = breadcrumbs; ViewBag.MetaTitle = "Поиск: " + searchString; return(View(viewModel)); }
public ActionResult AdminIndex(string currentFilter, string searchString, int?categoryId, int?page, bool priority = false, int filled = 0, bool isNotUnloading1C = false) { var pageNumber = page ?? 1; if (searchString != null) { page = 1; } else { searchString = currentFilter; } var objectsPerPage = 20; var startIndex = (pageNumber - 1) * objectsPerPage; SearchParamsProduct SearchParams = new SearchParamsProduct(searchString, categoryId, priority, filled, startIndex, objectsPerPage); SearchParams.IsNotUnloading1C = isNotUnloading1C; var searchResult = _productRepository.Get(SearchParams); ViewBag.CurrentFilter = searchString; ViewBag.CategoryId = categoryId; ViewBag.Filled = (Common.TypeFilledProduct)filled; ViewBag.Priority = priority; ViewBag.IsNotUnloading1C = isNotUnloading1C; ViewBag.CategoriesSelectListItem = _categoryRepository.GetAll().Select(item => new SelectListItem { Text = item.Title, Value = item.Id.ToString() }); var viewModel = SearchResultViewModel <Product> .CreateFromSearchResult(searchResult, i => i, 10); return(View(viewModel)); }