Esempio n. 1
0
        public IActionResult Borrow(int id, BorrowMovieViewModel model)
        {
            var movie = this.movies.ById(id);

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

            model.Title     = movie.Title;
            model.Borrowers = this.borrowers.All();

            if (!this.ModelState.IsValid)
            {
                return(View(model));
            }

            if (this.movies.HasBeenBorrowed(id, model.Borrower))
            {
                this.ModelState.AddModelError(nameof(movie.Title), "You have already borrowed this book once!");

                return(View(model));
            }

            this.movies.Borrow(id, model.Borrower, model.StartDate, model.EndDate);

            return(Redirect("/"));
        }
Esempio n. 2
0
        public IActionResult Borrow(int id)
        {
            var model = new BorrowMovieViewModel();

            var movie = this.movies.ById(id);

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

            if (movie.Status == "Borrowed")
            {
                this.ModelState.AddModelError(nameof(movie.Title), "Book is not available!");
            }

            model.Title     = movie.Title;
            model.Borrowers = this.borrowers.All();
            return(View(model));
        }