/// <summary> /// Handle navigate to events and initialize variables like ViewModel. /// </summary> /// <param name="e">NavigationTo event arguments, including target data type.</param> protected override void OnNavigatedTo(NavigationEventArgs e) { if (e.Parameter != null) { DataContext = _vm = new AlbumDetailViewModel(_id = (int)e.Parameter); } _navigationHelper.OnNavigatedTo(e); base.OnNavigatedTo(e); }
public AlbumDetailPage(AlbumDetailViewModel viewModel) { InitializeComponent(); this.viewModel = viewModel; if (viewModel != null && viewModel.Album != null) { this.viewModel.LoadAlbumPicturesCommand.Execute(viewModel.Album.Id); } BindingContext = this.viewModel; }
public ActionResult Album(Guid id) { AlbumDto dto = readModel.GetAlbums().FirstOrDefault(a => a.Id == id); if (dto.Privacy.CanSee((Guid)HttpContext.Items["userid"]) || (Guid)HttpContext.Items["userid"] == dto.Owner.Id) { AlbumDetailViewModel model = new AlbumDetailViewModel() { Album = dto }; model.Username = readModel.GetUsers().FirstOrDefault(u => u.Equals(dto.Owner)).Username; return View(model); } else return new HttpUnauthorizedResult(); }
public async Task <IActionResult> AlbumView([FromRoute] int id) { var User = await GetCurrentUserAsync(); var model = new AlbumDetailViewModel(); model.SingleAlbum = context.Album .Where(v => v.VendorUser == User) .Where(i => i.AlbumId == id).SingleOrDefault(); model.Images = await context.AlbumImages .Where(aid => aid.AlbumId == id).ToListAsync(); return(View(model)); }
public ActionResult Details() { string albumId = this.Request.QueryData["id"].ToString(); Album albumFromDb = this.albumService.GetAlbumById(albumId); AlbumDetailViewModel albumDetailViewModel = ModelMapper .ProjectTo <AlbumDetailViewModel>(albumFromDb); if (albumFromDb == null) { return(this.Redirect("/Albums/All")); } return(this.View(albumDetailViewModel)); }
public async Task <ActionResultResponse <AlbumDetailViewModel> > GetDetail(string tenantId, string albumId) { var info = await _albumRepository.GetInfo(albumId); if (info == null) { return(new ActionResultResponse <AlbumDetailViewModel>(-1, _websiteResourceService.GetString("Album does not exists."))); } if (info.TenantId != tenantId) { return(new ActionResultResponse <AlbumDetailViewModel>(-2, _sharedResourceService.GetString(ErrorMessage.NotHavePermission))); } var albumTranslations = await _albumTranslationRepository.GetsByAlbumId(albumId); var albumDetail = new AlbumDetailViewModel { Id = info.Id, IsActive = info.IsActive, ConcurrencyStamp = info.ConcurrencyStamp, Translations = albumTranslations, Type = info.Type, Thumbnail = info.Thumbnail, IsPublic = info.IsPublic, Photos = info.Type == AlbumType.Photo ? await _photoRepository.GetsByAlbumId(tenantId, albumId, true) : null, }; if (info.Type == AlbumType.Video) { var videos = await _videoRepository.GetsByAlbumId(albumId, true); if (videos.Any()) { foreach (var video in videos) { video.Translations = await _videoTranslationRepository.GetsVideoId(video.Id); } } albumDetail.Videos = videos; } return(new ActionResultResponse <AlbumDetailViewModel> { Code = 1, Data = albumDetail }); }
public AlbumDetailViewModel GetAlbumDetailViewModel(int albumId, string userId) { AlbumDetailViewModel album = Mapper.Map <AlbumDetailViewModel>(albumDomainService.GetAlbumWithTracksAndSinger(albumId)); album.LikedTrack = userDomainService.GetTracksInPlaylistBelovedByUserIdAndPlaylistName(userId, KindPlaylist.Beloved); album.AmountTracks = albumDomainService.AmountTrackInAlbumByAlbumId(albumId); foreach (var item in album.Tracks) { if (album.LikedTrack.Contains(item)) { item.Like = true; } } return(album); }
public async Task <IActionResult> AlbumDetail([FromRoute] int id) { var a = await context.Album .SingleOrDefaultAsync(i => i.AlbumId == id); var b = await context.AlbumImages .Where(aid => aid.AlbumId == id).ToListAsync(); if (a == null) { return(NotFound()); } var model = new AlbumDetailViewModel() { SingleAlbum = a, Images = b }; return(View(model)); }
public IActionResult Detail(int id) { Album albumFromDb = _context.Albums.Include(album => album.Nummers).FirstOrDefault(x => x.Id == id); AlbumDetailViewModel model = new AlbumDetailViewModel() { Id = id, Naam = albumFromDb.Naam, Foto = albumFromDb.AlbumFoto }; foreach (var item in albumFromDb.Nummers) { Nummer nummer = _context.Nummers.Include(x => x.NummerReviews).FirstOrDefault(x => x.Id == item.NummerId); model.Nummers.Add(new NummerListViewModel() { Titel = nummer.Naam, Id = nummer.Id, Score = 0 }); if (nummer.NummerReviews.Count != 0) { model.Nummers.Last().Score = nummer.NummerReviews.Select(n => n.Score).Sum() / nummer.NummerReviews.Count; } } return(View(model)); }