public ActionResult ShowMovie(AddProjectionVM model) { model.Projection.Movie = principal.Movies.Where(x => x.MovieID == model.MovieID).First(); model.IsCurrent = principal.Movies.Where(x => x.MovieID == model.Projection.Movie.MovieID).Select(x => x.IsCurrent).ToString(); model.IsCurrent = (model.IsCurrent == "0") ? "NO" : "YES"; return(PartialView("ShowMovie", model)); }
public ActionResult GetProjections(string layout = null) { AddProjectionVM model = new AddProjectionVM(); model.Projections = principal.Projections.ToList(); return(View("GetProjections", layout, model)); }
public ActionResult AddProjection(string descript = null) { AddProjectionVM model = new AddProjectionVM(); model.SuccessDescription = descript; return(View("AddProjection", model)); }
public ActionResult SubmitProjection(AddProjectionVM model, string btnType) { //if (!ModelState.IsValid) // return DefinedDateTime ddt = new DefinedDateTime(); if (principal.DefinedDateTimes.Where(x => x.DateTimeStart == model.Projection.DateTimeStart).FirstOrDefault() == null) { ddt.DateTimeStart = model.Projection.DateTimeStart; ddt.IsDeleted = false; principal.DefinedDateTimes.Add(ddt); principal.SaveChanges(); } else { ddt = principal.DefinedDateTimes.Where(x => x.DateTimeStart == model.Projection.DateTimeStart).First(); } Projection p = new Projection(); p.CinemaHallID = model.CinemaHallID; p.CinemaHall = principal.CinemaHalls.Where(x => x.CinemaHallID == model.CinemaHallID).First(); p.DateTimeEnd = model.Projection.DateTimeEnd; p.DateTimeStart = ddt.DateTimeStart; p.MovieID = model.Projection.Movie.MovieID; p.Movie = principal.Movies.Where(x => x.MovieID == model.Projection.Movie.MovieID).First(); p.TechnologyTypeID = model.TechTypeID; p.TechnologyType = principal.TechnologyTypes.Where(x => x.TechnologyTypeID == model.TechTypeID).First(); p.TicketPrice = model.Projection.TicketPrice; p.IsDeleted = false; principal.Projections.Add(p); principal.SaveChanges(); foreach (Seat s in principal.Seats.Where(x => x.CinemaHallID == p.CinemaHallID && !x.IsDeleted).ToList()) { ProjectionSeat ps = new ProjectionSeat(); ps.IsDeleted = false; ps.IsReserved = false; ps.Seat = s; ps.SeatID = s.SeatID; ps.ProjectionID = p.ProjectionID; ps.Projection = p; principal.ProjectionSeats.Add(ps); principal.SaveChanges(); } return(RedirectToAction("AddProjection", new { descript = "New projection successfuly added !" })); }
public ActionResult GetCinemaHallsForProjection(string dateStart, string dateEnd, string ProjectionMovieID, string MovieID) { AddProjectionVM model1 = new AddProjectionVM(); int ID = int.Parse(MovieID); model1.Projection.Movie = principal.Movies.Where(x => x.MovieID == ID).First(); model1.Projection.DateTimeStart = DateTime.Parse(dateStart); model1.Projection.DateTimeEnd = DateTime.Parse(dateEnd); List <Projection> p = principal.Projections.ToList(); model1.CinemaHalls = principal.CinemaHalls.Select(x => new SelectListItem { Text = x.Name, Value = x.CinemaHallID.ToString() }).ToList(); //filtriraj dvorane koje su vec zauzete foreach (Projection pro in p) { if ((model1.Projection.DateTimeStart > pro.DateTimeStart && model1.Projection.DateTimeStart < pro.DateTimeEnd) || (model1.Projection.DateTimeEnd > pro.DateTimeStart && model1.Projection.DateTimeEnd < pro.DateTimeEnd) || ((model1.Projection.DateTimeStart > pro.DateTimeStart && model1.Projection.DateTimeStart < pro.DateTimeEnd) && (model1.Projection.DateTimeEnd > pro.DateTimeStart && model1.Projection.DateTimeEnd < pro.DateTimeEnd))) { model1.CinemaHalls.Remove(model1.CinemaHalls.Where(x => x.Value == pro.CinemaHall.CinemaHallID.ToString()).Single()); } } model1.TechTypes = principal.TechnologyTypes.Select(x => new SelectListItem { Text = x.Name, Value = x.TechnologyTypeID.ToString() }).ToList(); return(PartialView("GetCinemaHallsForProjection", model1)); }
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)); }