public async Task <IActionResult> Edit(int id, [Bind("DirectorId,MovieId")] MovieDirection movieDirection) { if (id != movieDirection.MovieId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(movieDirection); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!MovieDirectionExists(movieDirection.MovieId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["DirectorId"] = new SelectList(_context.Directors, "DirectorId", "DirectorId", movieDirection.DirectorId); ViewData["MovieId"] = new SelectList(_context.Movies, "MovieId", "MovieId", movieDirection.MovieId); return(View(movieDirection)); }
public async Task <IActionResult> Create([Bind("DirectorId,MovieId")] MovieDirection movieDirection) { if (ModelState.IsValid) { _context.Add(movieDirection); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["DirectorId"] = new SelectList(_context.Directors, "DirectorId", "DirectorId", movieDirection.DirectorId); ViewData["MovieId"] = new SelectList(_context.Movies, "MovieId", "MovieId", movieDirection.MovieId); return(View(movieDirection)); }
public async Task <IActionResult> AddMovie(AddMovieViewModel model) { if (ModelState.IsValid) { string uniqueFileName = null; if (model.Photo != null) { string uploadsFolder = Path.Combine(hostingEnvironment.WebRootPath, "images"); uniqueFileName = Guid.NewGuid().ToString() + "_" + model.Photo.FileName; //guid = global unique identifier string filePath = Path.Combine(uploadsFolder, uniqueFileName); model.Photo.CopyTo(new FileStream(filePath, FileMode.Create)); model.Movie.MovieCoverImage = uniqueFileName; } int movieId = _context.Movies.Last().MovieId + 1; int actorId = _context.Actors.Last().ActorId + 1; int directorId = _context.Directors.Last().DirectorId + 1; _context.Add(model.Movie); _context.Add(model.Actor); _context.Add(model.Director); MovieCasting movieCasting = new MovieCasting { MovieId = movieId, ActorId = actorId, Actor = model.Actor, Movie = model.Movie, Role = "" }; MovieDirection movieDirection = new MovieDirection { MovieId = movieId, DirectorId = directorId, Director = model.Director, Movie = model.Movie }; Array _genres = Enum.GetValues(typeof(Genres)); int genreId = 0; foreach (int gen in _genres) { if (Enum.GetName(typeof(Genres), gen) == model.Genre.GenreTitle.ToString()) { break; } genreId++; } Genre g = new Genre { GenreTitle = (Genres)Enum.Parse(typeof(Genres), model.Genre.GenreTitle.ToString()) }; MovieGenre movieGenre = new MovieGenre { MovieId = movieId, GenreId = _context.Genres.Last().GenreId + 1, Movie = model.Movie, Genre = g }; _context.Add(movieCasting); _context.Add(movieDirection); _context.Add(movieGenre); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View()); }
public ActionResult ShowTrailler(AddProjectionVM model, string ButtonType) { //if (!ModelState.IsValid) // return RedirectToAction("AddProjection", model); if (ButtonType != "next") { model.Traillers = Algorithm.SuggestTrailerLinks(model.Projection.Movie.MovieName, 3); } if (ButtonType == "save") { Movie m = model.Projection.Movie; m.IsDeleted = false; m.GenreID = model.GenreID; m.Genre = principal.Genres.Where(x => x.GenreID == model.GenreID).First(); m.Trailler = model.Traillers[0]; principal.Movies.Add(m); principal.SaveChanges(); foreach (int i in model.ActorsIDs) { MovieRole mr = new MovieRole(); mr.MovieID = m.MovieID; mr.ActorID = i; mr.Actor = principal.Actors.Where(x => x.ActorID == i).First(); mr.IsDeleted = false; principal.MovieRoles.Add(mr); principal.SaveChanges(); } foreach (int i in model.DirectorsIDs) { MovieDirection md = new MovieDirection(); md.MovieID = m.MovieID; md.DirectorID = i; md.Director = principal.Directors.Where(x => x.DirectorID == i).First(); md.IsDeleted = false; principal.MovieDirections.Add(md); principal.SaveChanges(); model.Projection.Movie.MovieID = md.MovieID; } model.Movies = principal.Movies.Select(x => new SelectListItem { Text = x.OriginalName + "(" + x.MovieName + ")", Value = x.MovieID.ToString() }).ToList(); model.Movies = model.Movies.OrderByDescending(x => int.Parse(x.Value)).ToList(); model.Projection.Movie.MovieRoles = principal.MovieRoles.Where(x => x.MovieID == m.MovieID).ToList(); model.Projection.Movie.MovieDirections = principal.MovieDirections.Where(x => x.MovieID == m.MovieID).ToList(); model.IsCurrent = principal.Movies.Where(x => x.MovieID == m.MovieID).Select(x => x.IsCurrent).ToString(); model.IsCurrent = (model.IsCurrent == "0") ? "NO" : "YES"; return(PartialView("SetProjection", model)); } if (ButtonType == "next") { return(PartialView("SetProjection", model)); } //model.Projection.Movie.Genre.GenreName = genreName; //model.IsCurrent = (principal.Movies.Where(x => x.IsCurrent.ToString() == model.IsCurrent).ToString() == "0") ? "NO" : "YES"; return(View("ShowTrailler", model)); }