// HttpPost Edit Method public async Task <int> EditPhotoAlbumAsync(EditPhotoAlbumViewModel editInputModel) { Team homeTeam = null; Team awayTeam = null; if (editInputModel.HomeTeamName != null) { homeTeam = await this.database.Teams.FirstOrDefaultAsync(h => h.Name.ToLower() == editInputModel.HomeTeamName.ToLower()); } if (editInputModel.AwayTeamName != null) { awayTeam = await this.database.Teams.FirstOrDefaultAsync(a => a.Name.ToLower() == editInputModel.AwayTeamName.ToLower()); } var photoAlbum = new PhotoAlbum { Id = editInputModel.Id, Title = editInputModel.Title, ThumbnailPhotoUrl = editInputModel.ThumbnailPhotoUrl, FacebookAlbumUrl = editInputModel.FacebookAlbumUrl, EventDate = editInputModel.EventDate, HomeTeam = homeTeam, AwayTeam = awayTeam, }; this.database.PhotoAlbums.Update(photoAlbum); await this.database.SaveChangesAsync(); return(photoAlbum.Id); }
public async Task <IActionResult> Edit(EditPhotoAlbumViewModel editInput) { if (!this.ModelState.IsValid) { return(this.View(editInput)); } await this.photoAlbumsService.EditPhotoAlbumAsync(editInput); return(this.RedirectToAction(nameof(this.Index))); }
// HttpGet Edit Method public async Task <EditPhotoAlbumViewModel> EditPhotoAlbumViewAsync(int id) { var photoAlbumToEdit = await GetPhotoAlbumByIdAsync(id); Team homeTeam = null; Team awayTeam = null; if (photoAlbumToEdit.HomeTeamId != null) { homeTeam = await this.database.Teams.FirstOrDefaultAsync(h => h.Id == photoAlbumToEdit.HomeTeamId); } if (photoAlbumToEdit.AwayTeamId != null) { awayTeam = await this.database.Teams.FirstOrDefaultAsync(a => a.Id == photoAlbumToEdit.AwayTeamId); } EditPhotoAlbumViewModel editPhotoAlbumInput; if (homeTeam != null && awayTeam == null) { editPhotoAlbumInput = new EditPhotoAlbumViewModel { Id = photoAlbumToEdit.Id, Title = photoAlbumToEdit.Title, ThumbnailPhotoUrl = photoAlbumToEdit.ThumbnailPhotoUrl, FacebookAlbumUrl = photoAlbumToEdit.FacebookAlbumUrl, EventDate = photoAlbumToEdit.EventDate, HomeTeamName = homeTeam.Name, AwayTeamName = null, }; } else if (homeTeam == null && awayTeam != null) { editPhotoAlbumInput = new EditPhotoAlbumViewModel { Id = photoAlbumToEdit.Id, Title = photoAlbumToEdit.Title, ThumbnailPhotoUrl = photoAlbumToEdit.ThumbnailPhotoUrl, FacebookAlbumUrl = photoAlbumToEdit.FacebookAlbumUrl, EventDate = photoAlbumToEdit.EventDate, HomeTeamName = null, AwayTeamName = awayTeam.Name, }; } else if (homeTeam == null && awayTeam == null) { editPhotoAlbumInput = new EditPhotoAlbumViewModel { Id = photoAlbumToEdit.Id, Title = photoAlbumToEdit.Title, ThumbnailPhotoUrl = photoAlbumToEdit.ThumbnailPhotoUrl, FacebookAlbumUrl = photoAlbumToEdit.FacebookAlbumUrl, EventDate = photoAlbumToEdit.EventDate, HomeTeamName = null, AwayTeamName = null, }; } else { editPhotoAlbumInput = new EditPhotoAlbumViewModel { Id = photoAlbumToEdit.Id, Title = photoAlbumToEdit.Title, ThumbnailPhotoUrl = photoAlbumToEdit.ThumbnailPhotoUrl, FacebookAlbumUrl = photoAlbumToEdit.FacebookAlbumUrl, EventDate = photoAlbumToEdit.EventDate, HomeTeamName = homeTeam.Name, AwayTeamName = awayTeam.Name, }; } return(editPhotoAlbumInput); }