public async Task <IActionResult> Series(int?id) { PagedAnimeSeriesViewModel viewModel = new PagedAnimeSeriesViewModel(); if (id.HasValue && id > 0) { await this.LoadViewModelProperties(viewModel, id.Value); } else { await this.LoadViewModelProperties(viewModel, 1); } return(this.View(viewModel)); }
private async Task LoadViewModelProperties(PagedAnimeSeriesViewModel viewModel, int page) { int pagesToLoad = (int)Math.Ceiling((double)await this.animeService.GetAllAnimesSeriesCountAsync() / NumericConstants.Number_Of_Animes_Per_Page); if (page > pagesToLoad) { page = pagesToLoad; } viewModel.Animes = await this.animeService.GetAnimesSeriesForPage(page); viewModel.Pagination.Pages = this.animeService.LoadPages(page, pagesToLoad); viewModel.Pagination.PageUrl = UrlConstants.New_Releases_Pagination; viewModel.Pagination.CurrentPage = page; }
private async Task LoadViewModelProperties(PagedAnimeSeriesViewModel viewModel, int page, User user) { int pagesToLoad = (int)Math.Ceiling((double)await this.animeService.GetAllAnimesSeriesCountAsync(user.Id) / NumericConstants.Number_Of_Animes_Per_Page); if (page > pagesToLoad) { page = pagesToLoad; } this.Username = user.UserName; viewModel.Animes = await this.animeService.GetAnimesSeriesForPage(page, user.Id); viewModel.Pagination.Pages = this.animeService.LoadPages(page, pagesToLoad); viewModel.Pagination.PageUrl = UrlConstants.Favourites_Pagination + $"{user.UserName}/"; viewModel.Pagination.CurrentPage = page; }