public ArtworkViewModel GetArtworks() { return(new ArtworkViewModel { Artworks = _repo.GetArtworks() }); }
public IActionResult Index(int page = 1) { List <Artworks> list = artworkRepository.GetArtworks(); List <ArtworkVM> model = new List <ArtworkVM>(); const int PageSize = 12; var count = list.Count(); if (page == 1) { list = list.Skip(0).Take(PageSize).ToList(); } else { list = list.Skip((page - 1) * PageSize).Take(PageSize).ToList(); } if (count <= PageSize) { ViewBag.MaxPage = 1; } else { if (count % PageSize == 0) { ViewBag.MaxPage = (count / PageSize); } else { ViewBag.MaxPage = (count / PageSize) + 1; } } ViewBag.Page = page; ViewBag.NextPage = page + 1; foreach (Artworks x in list) { ArtworkVM vm = new ArtworkVM(); vm.Id = x.Id; vm.Artist = x.Artist.Name; vm.ArtworkType = x.ArtworkType.Name; vm.ArtworkTypeId = x.ArtworkTypeId; vm.CatalogueEntry = x.CatalogueEntry; vm.Country = x.Country.Name; vm.Image = imageRepository.GetArtworkImage(x.Id); if (vm.Image != null) { vm.ImageId = vm.Image.Id; } vm.Likes = likesRepository.GetLikes(x.Id); vm.Material = x.Material.Name; vm.Museum = x.Museum.Name; vm.MuseumId = x.MuseumId; vm.Name = x.Name; vm.Provenance = x.Provenance; vm.Style = x.Style.Name; if (Autentification.GetLoggedUser(HttpContext) != null) { Clients c = clientRepository.GetClientByUserId(Autentification.GetLoggedUser(HttpContext).Id); vm.Liked = likesRepository.IsLiked(c.Id, x.Id); } else { vm.Liked = false; } model.Add(vm); } return(View(model)); }