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); }
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)); }
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")); }
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")); } }
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)); }