public IActionResult Details(int id) { var tube = this.tubeService.FindById(id); if (tube == null) { return(this.RedirectToAction("Index", "Home")); } tube.Views++; this.tubeService.Save(); var model = new TubeDetailsViewModel { Title = tube.Title, Author = tube.Author, Views = tube.Views, Description = tube.Description }; return(this.View(model)); }
public IActionResult Details(int id) { if (!this.User.IsAuthenticated) { return(this.RedirectToAction(LoggedOutHomePage)); } TubeDetailsViewModel tubeDetails; using (var db = new MeTubeDbContext()) { var tube = db.Tubes.Find(id); if (tube == null) { return(this.RedirectToAction(LoggedInHomePage)); } tube.Views++; db.SaveChanges(); tubeDetails = new TubeDetailsViewModel { Title = tube.Title, Author = tube.Author, Description = tube.Description, YoutubeId = tube.YoutubeId, Views = tube.Views }; } this.ViewData["title"] = tubeDetails.Title; this.ViewData["author"] = tubeDetails.Author; this.ViewData["description"] = tubeDetails.Description; this.ViewData["youtubeId"] = tubeDetails.YoutubeId; this.ViewData["views"] = $"{tubeDetails.Views} View{(tubeDetails.Views == 1 ? "" : "s")}"; return(this.View()); }
public ICollection <TubeDetailsViewModel> GetAllUserTubes(string username) { var userId = this.context.Users.FirstOrDefault(u => u.Username == username).Id; var tubes = this.context.Tubes.Where(t => t.UploaderId == userId).ToArray(); var tubeViewModels = new List <TubeDetailsViewModel>(); for (var i = 0; i < tubes.Length; i++) { var tubeViewModel = new TubeDetailsViewModel { Author = tubes[i].Author, Id = tubes[i].Id, Title = tubes[i].Title, Index = i + 1 }; tubeViewModels.Add(tubeViewModel); } return(tubeViewModels); }