Example #1
0
        public IActionResult Gezien(int id, HomeListViewModel item)
        {
            string userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

            var gezien = new UserFilmGezienStatus()
            {
                FilmId         = id,
                UserId         = userId,
                GezienStatusId = int.Parse(item.Gezien)
            };

            try
            {
                _appContext.UserFilmGeziens.Add(gezien);

                _appContext.SaveChanges();
            }
            catch (Exception)
            {
                _appContext.UserFilmGeziens.Update(gezien);

                _appContext.SaveChanges();
            }
            return(RedirectToAction("Index"));
        }
        public IActionResult FilmsList(string searchString)
        {
            List <ListFilmsViewModel> movies = new List <ListFilmsViewModel>();

            IEnumerable <Film> projectsFromDb =
                _DbContext.Films;

            if (!String.IsNullOrEmpty(searchString))
            {
                projectsFromDb            = projectsFromDb.Where(a => a.Titel.Contains(searchString)).ToList();
                ViewData["currentFilter"] = searchString;
            }
            foreach (var item in projectsFromDb)
            {
                string status = "Niet gezien";
                //STATUS 1 GEBRUIKER 1 FILM
                UserFilmGezienStatus userFilmGezienStatus = GetStatus(item.Id);
                //
                if (userFilmGezienStatus != null)
                {
                    status = userFilmGezienStatus.GezienStatus.Naam;
                }
                movies.Add(new ListFilmsViewModel()
                {
                    Titel     = item.Titel,
                    Regisseur = item.Regisseur,
                    Foto      = item.Foto,
                    Id        = item.Id,
                    Hidden    = item.Hidden,
                    Status    = status
                });
            }

            return(View(movies));
        }
        public UserFilmGezienStatus GetStatus(int id)
        {
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
            GezienFilmViewModel model = new GezienFilmViewModel();

            IEnumerable <UserFilmGezienStatus> statusestest =
                _DbContext.UserFilmGezienStatuses
                .Include(a => a.GezienStatus)
                .Where(a => a.UserId == userId).ToList();

            UserFilmGezienStatus userFilmGezienStatus = statusestest.FirstOrDefault(x => x.FilmId == id);

            return(userFilmGezienStatus);
        }
Example #4
0
        public IActionResult FilmGezien(int id)
        {
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
            GezienFilmViewModel model = new GezienFilmViewModel();

            UserFilmGezienStatus statusestest =
                _DbContext.UserFilmGezienStatuses
                .Include(a => a.GezienStatus)
                .FirstOrDefault(a => a.UserId == userId && a.FilmId == id);

            if (statusestest != null)
            {
                model.SelectedStatus = statusestest.GezienStatus.Naam;
            }


            List <GezienStatus> statusesFromDb = new List <GezienStatus>();

            foreach (var item in _DbContext.GezienStatusen)
            {
                statusesFromDb.Add(item);
            }

            List <SelectListItem> statuses = new List <SelectListItem>();

            foreach (var item in statusesFromDb)
            {
                statuses.Add(new SelectListItem()
                {
                    Text  = item.Naam,
                    Value = item.Naam
                });
            }
            model.Statuses = statuses;

            return(View(model));
        }
Example #5
0
 public IActionResult Detail(int Id, string status, int typ)
 {
     if (typ == 1)
     {
         UserFilmFavourite UFF = _context.UserFilmFavourite.FirstOrDefault(x => x.UserId == _userManager.GetUserId(User) && x.FilmId == Id);
         if (UFF == null)
         {
             _context.UserFilmFavourite.Add(new UserFilmFavourite()
             {
                 UserId = _userManager.GetUserId(User), FilmId = Id
             });
         }
         else
         {
             _context.UserFilmFavourite.Remove(UFF);
         }
     }
     else
     {
         UserFilmGezienStatus UFGS = _context.UserFilmGezienStatus.FirstOrDefault(x => x.UserId == _userManager.GetUserId(User) && x.FilmId == Id);
         if (UFGS == null)
         {
             _context.UserFilmGezienStatus.Add(new UserFilmGezienStatus()
             {
                 UserId = _userManager.GetUserId(User),
                 FilmId = Id, StatusId = Convert.ToInt32(status)
             });
         }
         else
         {
             UFGS.StatusId = Convert.ToInt32(status);
         }
     }
     _context.SaveChanges();
     return(RedirectToAction("Detail"));
 }
Example #6
0
        public IActionResult FilmGezien(int id, GezienFilmViewModel model)
        {
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
            //STATUS VEWIJDEREN
            IEnumerable <UserFilmGezienStatus> statuses =
                _DbContext.UserFilmGezienStatuses
                .Include(a => a.GezienStatus)
                .Where(a => a.UserId == userId).ToList();

            UserFilmGezienStatus userFilmGezienStatus = statuses.FirstOrDefault(x => x.FilmId == id);

            if (userFilmGezienStatus != null)
            {
                _DbContext.UserFilmGezienStatuses.Remove(userFilmGezienStatus);
                _DbContext.SaveChanges();
            }
            //
            UserFilmGezienStatus newUserFilmGezienStatus = new UserFilmGezienStatus();

            GezienStatus status = _DbContext.GezienStatusen.FirstOrDefault(a => a.Naam == model.SelectedStatus);

            newUserFilmGezienStatus.UserId         = userId;
            newUserFilmGezienStatus.FilmId         = id;
            newUserFilmGezienStatus.GezienStatusId = status.Id;

            _DbContext.UserFilmGezienStatuses.Add(newUserFilmGezienStatus);
            _DbContext.SaveChanges();
            if (User.IsInRole("Admin"))
            {
                return(RedirectToAction("FilmsList"));
            }
            else
            {
                return(RedirectToAction("FilmsList", "Gebruiker"));
            }
        }
Example #7
0
        public IActionResult Detail(int Id)
        {
            string Userid = _userManager.GetUserId(User);
            List <FilmPlaylist> filmPlaylists = _context.FilmPlaylist.Where(fp => fp.UserId == _userManager.GetUserId(User)).ToList();
            Film filmFromDb = _context.Film.Include(f => f.Favourites).Include(f => f.FilmGezienStatuses).Include(f => f.Genres)
                              .Include(f => f.Regisseurs).FirstOrDefault(x => x.Id == Id);

            //Als film niet zichtbaar is en user is geen admin redirecten naar index;
            if (!filmFromDb.Zichtbaar && !User.IsInRole("Admin"))
            {
                return(RedirectToAction("Index"));
            }
            FilmDetailViewModel myModel = new FilmDetailViewModel()
            {
                Id               = filmFromDb.Id,
                FilmArt          = filmFromDb.Foto,
                AantalFavoriet   = filmFromDb.Favourites.Count,
                Titel            = filmFromDb.Titel,
                AantalGezien     = 0,
                GezienStatusList = _statusItemList,
                Beschrijving     = filmFromDb.Beschrijving,
                UserPlaylists    = new List <SelectListItem>()
            };
            //Favoriet + user checken.
            UserFilmFavourite UFF = filmFromDb.Favourites.FirstOrDefault(x => x.UserId == Userid && x.FilmId == Id);

            if (UFF != null)
            {
                myModel.Favoriet = true;
            }
            //Gezienstatus+ user checken.
            UserFilmGezienStatus UFG = _context.UserFilmGezienStatus.FirstOrDefault(x => x.UserId == _userManager.GetUserId(User) && x.FilmId == Id);

            if (UFG != null)
            {
                myModel.GezienStatusList[UFG.StatusId - 1].Selected = true;
            }
            foreach (var item in filmFromDb.FilmGezienStatuses)
            {
                if (item.StatusId == 3)
                {
                    myModel.AantalGezien++;
                }
            }
            //Genres toevoegen
            foreach (var genre in filmFromDb.Genres)
            {
                myModel.Genres.Add(_context.FilmGenre.FirstOrDefault(fg => fg.Id == genre.GenreId).Genre);
            }
            //Regisseurs toevoegen
            foreach (var regi in filmFromDb.Regisseurs)
            {
                myModel.Regisseurs.Add(_context.FilmRegisseur.FirstOrDefault(fr => fr.Id == regi.RegisseurId).Naam);
            }
            //Playlists toevoegen
            foreach (var item in filmPlaylists)
            {
                if (!_context.UserFilmPlaylist.Any(ufp => ufp.FilmId == Id && ufp.PlaylistId == item.Id))
                {
                    myModel.UserPlaylists.Add(new SelectListItem(item.Titel, item.Id.ToString()));
                }
            }
            return(View(myModel));
        }