Esempio n. 1
0
        public async Task <IActionResult> Create([Bind("ID,Title,ReleaseDate,Genre,Price,Rating")] Movie movie)
        {
            if (ModelState.IsValid)
            {
                _context.Add(movie);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(movie));
        }
Esempio n. 2
0
        public async Task <IActionResult> Create(Movie movie)
        {
            if (ModelState.IsValid)
            {
                int  id   = (int)TempData["UserId"];
                User user = _context.Users.FirstOrDefault(u => u.UserId == id);
                movie.User = user;
                _context.Add(movie);
                await _context.SaveChangesAsync();

                TempData["Created"] = "Movie added successfull!";
                return(RedirectToAction(nameof(Index)));
            }
            return(View(movie));
        }
Esempio n. 3
0
        public async Task <RegisterResponse> RegisterAsync(RegisterRequest request)
        {
            if (_context.Users.Any(u => u.Username == request.Username))
            {
                throw new UsernameExistsException("The username you entered already exists.");
            }

            if (_context.Users.Any(u => u.Email == request.Email))
            {
                throw new EmailExistsException("The email you entered already exists.");
            }

            var user = _mapper.Map <User>(request);

            user.Created      = DateTime.Now;
            user.PasswordHash = BC.HashPassword(request.Password);

            await _context.Users.AddAsync(user);

            await _context.SaveChangesAsync();

            var response = _mapper.Map <RegisterResponse>(user);

            response.Message  = "Registration successful.";
            response.Password = request.Password;
            response.Success  = true;

            return(response);
        }
Esempio n. 4
0
        public async Task <IActionResult> Signup([Bind("UserId,Email,Password,ConfirmPassword")] User user)
        {
            if (ModelState.IsValid)
            {
                _context.Add(user);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Signin"));
            }
            return(View(user));
        }
Esempio n. 5
0
        private async Task <string> AddSeedMovies()
        {
            if (!_context.Movie.Any())
            {
                List <Movie> movies = new List <Movie>();
                using (StreamReader r = new StreamReader("temp/MovieData.json"))
                {
                    string json = r.ReadToEnd();
                    movies = JsonConvert.DeserializeObject <List <Movie> >(json);
                }
                foreach (Movie movie in movies)
                {
                    await _context.Movie.AddAsync(movie);
                }
                await _context.SaveChangesAsync();

                return("Successfully Seeded Movies");
            }
            return("Movies already exist in DB");
        }
Esempio n. 6
0
        public async Task <CreateMovieListResponse> CreateMovieListAsync(int userId, CreateMovieListRequest request)
        {
            if (_context.MovieLists.Where(x => x.UserId == userId).Any(x => x.Name == request.Name))
            {
                throw new NameExistsException("The name you entered is not available.");
            }

            var movieList = _mapper.Map <MovieList>(request);

            movieList.UserId  = userId;
            movieList.Created = DateTime.Now;

            await _context.MovieLists.AddAsync(movieList);

            await _context.SaveChangesAsync();

            var response = _mapper.Map <CreateMovieListResponse>(movieList);

            response.Success = true;
            response.Message = "Successfully created a new list.";

            return(response);
        }
Esempio n. 7
0
        public static void InitDatabaseContext(MovieAppContext context)
        {
            //Actors
            context.Actors.Add(new Actor {
                Id = 1, Name = "Jackie Chan"
            });
            context.Actors.Add(new Actor {
                Id = 2, Name = "Chris Tucker"
            });
            context.Actors.Add(new Actor {
                Id = 3, Name = "Keanu Reeves"
            });
            context.Actors.Add(new Actor {
                Id = 4, Name = "Carrie Anne-Moss"
            });

            //Genres
            context.Genres.Add(new Genre {
                Id = 1, Name = "Action"
            });
            context.Genres.Add(new Genre {
                Id = 2, Name = "Sci-Fi"
            });

            //Movies
            context.Movies.Add(new Movie {
                Id = 1, Name = "Rush Hour", GenreId = 1, Description = "Rush Hour description", ImageUri = "rush_hour.jpg"
            });
            context.Movies.Add(new Movie {
                Id = 2, Name = "The Matrix", GenreId = 2, Description = "The Matrix description", ImageUri = "the_matrix.jpg"
            });

            //Actors and Movies link entity
            context.ActorMovies.Add(new ActorMovies {
                Id = 1, ActorId = 1, MovieId = 1
            });
            context.ActorMovies.Add(new ActorMovies {
                Id = 2, ActorId = 2, MovieId = 1
            });
            context.ActorMovies.Add(new ActorMovies {
                Id = 3, ActorId = 3, MovieId = 2
            });
            context.ActorMovies.Add(new ActorMovies {
                Id = 4, ActorId = 4, MovieId = 2
            });

            //Showtimes
            context.ShowTimes.Add(new ShowTime {
                Id = 1, Date = "2019-10-25", Time = "10:00", MovieId = 1
            });
            context.ShowTimes.Add(new ShowTime {
                Id = 2, Date = "2019-10-25", Time = "13:00", MovieId = 2
            });
            context.ShowTimes.Add(new ShowTime {
                Id = 3, Date = "2019-10-25", Time = "15:00", MovieId = 1
            });
            context.ShowTimes.Add(new ShowTime {
                Id = 4, Date = "2019-10-26", Time = "10:30", MovieId = 2
            });
            context.ShowTimes.Add(new ShowTime {
                Id = 5, Date = "2019-10-26", Time = "15:00", MovieId = 2
            });
            context.ShowTimes.Add(new ShowTime {
                Id = 6, Date = "2019-10-26", Time = "18:30", MovieId = 1
            });

            context.SaveChangesAsync();
        }