public async Task <IActionResult> Edit(int id, [Bind("NewMovieId,Category,Title,Year,Director,Rating,Edited,LentTo,Notes")] NewMovie newMovie)
        {
            if (id != newMovie.NewMovieId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(newMovie);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!NewMovieExists(newMovie.NewMovieId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(newMovie));
        }
        public IActionResult Create([FromBody] NewMovie newMovie)  // Add New Movie
        {
            var newMovieUtils = new MovieUtils();

            try
            {
                if (newMovie.Qty > 0)
                {
                    List <MovieId> addedMovies = newMovieUtils.AddMovie(newMovie);
                    foreach (var movId in addedMovies)
                    {
                        if (movId.Id <= 0) //Create worked properly..
                        {
                            return(StatusCode(500, "Couldn't Add the Movie(s)!"));
                        }
                    }
                    return(Ok(addedMovies));
                }
                return(StatusCode(500, "You Selected 0 Copies of the movie...  I cant add 0!"));
            }
            catch (Exception e)
            {
                return(StatusCode(500, "Couldn't Add the Movie(s)!" + e));
            }
        }
예제 #3
0
        public ActionResult Save(Movie movie)
        {
            Console.WriteLine(movie);
            if (!ModelState.IsValid)
            {
                var viewModel = new NewMovie()
                {
                    Genre = _context.Genres.ToList(),
                    Movie = movie
                };

                return(View("MovieForm", viewModel));
            }
            if (movie.Id == 0)
            {
                movie.DateAdded = DateTime.Now;
                _context.Movies.Add(movie);
            }
            else
            {
                var movieInDb = _context.Movies.Single(c => c.Id == movie.Id);

                movieInDb.Name          = movie.Name;
                movieInDb.DateAdded     = movie.DateAdded;
                movieInDb.GenreId       = movie.GenreId;
                movieInDb.NumberInStock = movie.NumberInStock;
                movieInDb.ReleaseDate   = movie.ReleaseDate;
            }

            _context.SaveChanges();

            return(RedirectToAction("Index", "Movie"));
        }
예제 #4
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Title,ReleaseDate,Genre,Price,Rating,IsPublic,UserId,ImageName,ImagePath")] NewMovie newMovie)
        {
            if (id != newMovie.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(newMovie);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!NewMovieExists(newMovie.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(newMovie));
        }
        private void ReceiveNavigateMessage(object sender, NavigateMessageArgs args)
        {
            try
            {
                Page page = null;
                switch (args.PageName)
                {
                case ("FrontPage"):
                {
                    page = new FrontPage();
                    break;
                }

                case ("NewMovie"):
                {
                    page = new NewMovie();
                    break;
                }
                }
                if (page != null)
                {
                    if (args.ViewModel != null)
                    {
                        page.DataContext = args.ViewModel;
                    }
                    navigationFrame.NavigationService.Navigate(page);
                }
            }
            catch (Exception exc)
            {
                Console.WriteLine("Exception while loading page " + args.PageName + " " + exc.Message);
            }
        }
 public IActionResult Post([FromBody] NewMovie movie)
 {
     if (ModelState.IsValid)
     {
         _context.Add(movie);
         _context.SaveChanges();
         return(Ok(movie));
     }
     return(BadRequest());
 }
예제 #7
0
        public ActionResult New()
        {
            var genres    = _context.Genres.ToList();
            var viewModel = new NewMovie
            {
                Movie = new Movie(),
                Genre = genres
            };

            return(View("MovieForm", viewModel));
        }
예제 #8
0
        public IActionResult NewMovie(NewMovie newMovie)
        {
            if (ModelState.IsValid)
            {
                _context.NewMovie.Add(newMovie);
                _context.SaveChanges();
                return(View("AllMovies", _context.NewMovie));
            }

            return(View("NewMovie"));
        }
        public async Task <IActionResult> Create([Bind("NewMovieId,Category,Title,Year,Director,Rating,Edited,LentTo,Notes")] NewMovie newMovie)
        {
            if (ModelState.IsValid)
            {
                _context.Add(newMovie);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(newMovie));
        }
        public async Task <ActionResult <Result> > Create([Bind("Name", "Length")] NewMovie movie)
        {
            _context.Movies.Add(new Movie {
                Name = movie.Name, Length = movie.Length
            });
            await _context.SaveChangesAsync();

            Result res = new Result {
                Text = "Done"
            };

            return(res);
        }
예제 #11
0
 public IActionResult EnterMovies(NewMovie m)
 {
     if (!ModelState.IsValid) //prevents movies from being added if not all fields entered
     {
         return(View());
     }
     else
     {
         //database adding
         context.Movies.Add(m);
         context.SaveChanges();
         return(RedirectToAction("AllMovies"));
     }
 }
예제 #12
0
        public void PostValidMovieState()
        {
            // Arrange
            var controller = CreeatTestMoviesController();

            // Act
            var movie = new NewMovie()
            {
                Title = "Jungle Book", Year = 1967
            };
            var response = controller.Post(movie) as CreatedAtRouteNegotiatedContentResult <Movie>;

            // Assert
            Assert.IsNotNull(response, "Unexpected response");
            Assert.IsTrue(response.RouteName == "GetById", "RouteName not as expectd.");
            Assert.IsTrue(response.Content.ObjectId == (int)response.RouteValues["id"], "mismatch between route value");
        }
예제 #13
0
        public ActionResult Edit(int id)
        {
            var movie = _context.Movies.SingleOrDefault(c => c.Id == id);

            if (movie == null)
            {
                return(HttpNotFound());
            }

            var viewModel = new NewMovie()
            {
                Movie = movie,
                Genre = _context.Genres.ToList()
            };

            return(View("MovieForm", viewModel));
        }
예제 #14
0
        public List <MovieId> AddMovie(NewMovie toAdd)
        {
            List <MovieId> addedMovies = new List <MovieId>();

            for (int i = 0; i < toAdd.Qty; i++)
            {
                var addMovieStringQuery = $"INSERT INTO {DatabaseUtils.Databasename}.movieinfo(MOV_INFO_TITLE, MOV_INFO_RELEASE_YEAR, MOV_INFO_GENRE, MOV_INFO_UPC, MOV_STATUS) " +
                                          $"VALUES('{toAdd.Title}', '{toAdd.ReleaseYear}', '{toAdd.Genre}', '{toAdd.Upc}', 0)";

                var     addMovie   = DatabaseUtils.Instance();
                MovieId addedMovie = new MovieId();
                addedMovie.Id = addMovie.MakeDbQuery(addMovieStringQuery, true);
                addedMovies.Add(addedMovie);
            }

            return(addedMovies);
        }
        public IActionResult Update(NewMovie movies, int id)
        {
            var movie = _context.NewMovie.SingleOrDefault(m => m.Id == id);

            if (ModelState.IsValid)
            {
                if (movie != null)
                {
                    movie.Name  = movies.Name;
                    movie.Genre = movies.Genre;
                    _context.Update(movie);
                    _context.SaveChanges();
                    return(Ok(movie));
                }
            }
            return(BadRequest());
        }
예제 #16
0
        public IActionResult NewMovie(NewMovie model)
        {
            //ensure the inputs are validated

            if (ModelState.IsValid)
            {
                //class, method, parameters. this adds a new moviemodel instance to the list!

                ArchiveModel.AddMovie(model);

                return(View("Archive", ArchiveModel.AMovies.Where(model => model.Title != "Independence Day")));
            }
            else
            {
                return(View());
            }
        }
예제 #17
0
        public IActionResult CreateMovie(NewMovie form)
        {
            int?UserID = HttpContext.Session.GetInt32("UserID");

            if (UserID is null)
            {
                return(RedirectToAction("Index", "User"));
            }

            if (ModelState.IsValid)
            {
                Movie newMovie = new Movie(form);
                dbContext.Add(newMovie);
                dbContext.SaveChanges();
                return(RedirectToAction("GetMovies"));
            }
            return(View());
        }
예제 #18
0
        public IActionResult AddMovie([FromBody] NewMovie newMovie)
        {
            if (!service.CheckMovieExist(newMovie.MovieIMDb))
            {
                //新建电影
                var movie = new Movie {
                };
                movie.m_id         = (service.GetMovieNum() + 1).ToString();
                movie.m_name       = newMovie.MovieName;
                movie.release_time = newMovie.ReleaseTime;
                movie.m_length     = newMovie.MovieLength;
                movie.m_area       = newMovie.MovieArea;
                movie.m_summary    = newMovie.MovieSummary;
                movie.m_imdb       = newMovie.MovieIMDb;

                context.Movie.Add(movie);
                context.SaveChanges();

                //全局信息
                var totalinfo = context.TotalInfo.Find("pumpkinmovies");
                totalinfo.m_num += 1;
                context.TotalInfo.Attach(totalinfo);
                context.SaveChanges();

                return(Ok(new
                {
                    Success = true,
                    MovieID = movie.m_id,
                    msg = "Movie Added"
                }));
            }
            else
            {//电影重复
                return(Ok(new
                {
                    Success = false,
                    msg = "Same IMDb"
                }));
            }
        }
예제 #19
0
        public async Task <IActionResult> Create([Bind("Id,Title,ReleaseDate,Genre,Price,Rating,IsPublic,File")] NewMovie newMovie)
        {
            if (ModelState.IsValid)
            {
                var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
                newMovie.UserId = userId;

                //Save  the Image in blob Storage
                CloudBlockBlob blob = _blobContainer.GetBlockBlobReference(GetRandomBlobName(newMovie.File.FileName));
                using (var stream = newMovie.File.OpenReadStream())
                {
                    await blob.UploadFromStreamAsync(stream);
                }
                newMovie.ImageName = newMovie.Title + "_Img";
                newMovie.ImagePath = blob.Uri.AbsoluteUri;

                _context.Add(newMovie);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(newMovie));
        }
예제 #20
0
        public void CustomerCreateCorrectStatement() // Fix this test
        {
            Customer customer = new Customer("Bug", _statementGenerator);

            MovieBase movie1  = new ChildMovie("Angry Birds");
            Rental    rental1 = new Rental(movie1, 2);

            customer.AddRental(rental1);

            MovieBase movie2  = new NewMovie("StarWar");
            Rental    rental2 = new Rental(movie2, 10);

            customer.AddRental(rental2);

            MovieBase movie3  = new RegularMovie("Hatico");
            Rental    rental3 = new Rental(movie3, 4);

            customer.AddRental(rental3);

            string actual = customer.GetStatement();

            Assert.AreEqual("учет аренды для Bug\n\tAngry Birds\t15\n\tStarWar\t30\n\tHatico\t32\nСумма задолженности составляет 77\nВы заработали 4 очков за активность", actual);
        }
예제 #21
0
        private void NewRecord()
        {
            SelectedMovie = new Movie();
            IdEnabled     = true;
            //ListEnabled = false;
            SaveEnabled = true;

            Window nw = new NewMovie();

            nw.ShowDialog();
            //
            // Reset
            //
            LoadMovieList();

            IdEnabled   = false;
            ListEnabled = true;
            SaveEnabled = false;
            //if (AssistRoutines.AddANewMovie)
            //{
            //    SelectedMovie = AssistRoutines.NewMovie;
            //    PosterImage = AssistRoutines.NewMovieImage;
            //}
        }
예제 #22
0
 private void OnNewMovie()
 {
     NewMovie?.Invoke(this, EventArgs.Empty);
 }
예제 #23
0
 /// <summary>
 /// Create a new movie
 /// </summary>
 /// <param name="entity">NewMovie</param>
 /// <returns>int of movie created</returns>
 public int Create(NewMovie entity)
 {
     return(Repository.Create(entity.ToDal()));
 }
예제 #24
0
        public void NameFilmShouldBeCorrect()
        {
            MovieBase movie = new NewMovie("Rio2");

            Assert.AreEqual("Rio2", movie.Title);
        }
예제 #25
0
 public IActionResult Movies(NewMovie movie)
 {
     TempStorage.AddMovie(movie);
     return(View("Confirmation", movie));
 }