Ejemplo n.º 1
0
        public ViewResult List()
        {
            var currentUserId = GetCurrentUserId().Result;

            return(View(new ShelfListViewModel {
                Shelf = _shelfRepository.GetShelfForUser(currentUserId)
            }));
        }
        public async Task <ViewResult> List(string currentFilter, string searchString,
                                            int?pageNumber)
        {
            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;
            var currentUserId = GetCurrentUserId().Result;
            var shelf         = _shelfRepository.GetShelfForUser(currentUserId).OrderBy(g => g.Title);

            if (!string.IsNullOrEmpty(searchString))
            {
                shelf = shelf.Where(g => g.Title.Contains(searchString)).OrderBy(g => g.Title);
            }

            var mv = new ShelfListViewModel
            {
                Shelf =
                    await PaginatedList <Game> .CreateAsync(shelf, pageNumber ?? 1, Constants.PageSize)
            };

            return(View(mv));
        }