public IActionResult Index()
        {
            IEnumerable <Artists> artists = artistRepository.GetArtists();
            List <ArtistInfoVM>   model   = new List <ArtistInfoVM>();

            foreach (Artists a in artists)
            {
                ArtistInfoVM vm = new ArtistInfoVM();

                vm.Id       = a.Id;
                vm.Name     = a.Name;
                vm.Born     = a.Born;
                vm.Died     = a.Died;
                vm.Country  = a.Country.Name;
                vm.Styles   = artistmovementRepository.GetArtistMovementsByArtist(a.Id);
                vm.Artworks = artworkRepository.GetArtworksByArtist(a.Id);
                vm.Image    = imageRepository.GetArtistImage(a.Id);

                if (vm.Image != null)
                {
                    vm.ImageId = vm.Image.Id;
                }
                model.Add(vm);
            }

            return(View("Index", model));
        }
        public IActionResult Details(int id)
        {
            Artists a = artistRepository.GetArtistById(id);

            ArtistVM model = new ArtistVM();

            model.Artworks = new List <ArtworkVM>();
            model.Styles   = new List <string>();
            List <Artworks> artworks = artworkRepository.GetArtworksByArtist(a.Id);

            foreach (Artworks art in artworks)
            {
                ArtworkVM vm = new ArtworkVM();
                vm.Id     = art.Id;
                vm.Name   = art.Name;
                vm.Artist = a.Name;
                vm.Image  = imageRepository.GetArtworkImage(art.Id);
                vm.Museum = art.Museum.Name;
                if (vm.Image != null)
                {
                    vm.ImageId = vm.Image.Id;
                }
                vm.Likes = likesRepository.GetLikes(a.Id);
                if (Autentification.GetLoggedUser(HttpContext) != null)
                {
                    Clients c = clientRepository.GetClientByUserId(Autentification.GetLoggedUser(HttpContext).Id);
                    vm.Liked = likesRepository.IsLiked(c.Id, a.Id);
                }
                else
                {
                    vm.Liked = false;
                }
                model.Artworks.Add(vm);
            }
            model.Biography = a.Biography;
            model.Born      = a.Born;
            model.Country   = a.Country.Name;
            model.Died      = a.Died;
            model.Id        = a.Id;
            model.Image     = imageRepository.GetArtistImage(a.Id);
            if (model.Image != null)
            {
                model.ImageId = model.Image.Id;
            }
            model.Images = imageRepository.GetArtistImages(a.Id);
            model.Name   = a.Name;
            IEnumerable <ArtistMovements> movements = stylesRepository.GetArtistMovementsByArtist(a.Id);

            foreach (ArtistMovements am in movements)
            {
                string style = am.Style.Name;
                model.Styles.Add(style);
            }
            return(View("Details", model));
        }
示例#3
0
        public IActionResult Details(int id)
        {
            ArtistInfoVM vm = new ArtistInfoVM();
            Artists      a  = artistRepository.GetArtistById(id);

            vm.Id       = a.Id;
            vm.Name     = a.Name;
            vm.Born     = a.Born;
            vm.Died     = a.Died;
            vm.Country  = a.Country.Name;
            vm.Styles   = artistmovementRepository.GetArtistMovementsByArtist(a.Id);
            vm.Artworks = artworkRepository.GetArtworksByArtist(a.Id);

            return(View("Details", vm));
        }