public async Task <IActionResult> Delete(int?id) { if (id == null) { return(NotFound()); } GameSegmentViewModel gameSegment = new GameSegmentViewModel(); var segments = _context.Segments .Where(s => s.GameId == id).ToList(); gameSegment.segmentsList = segments; var game = await _context.Games .FirstOrDefaultAsync(g => g.Id == id); gameSegment.Game = game; if (game == null) { return(NotFound()); } return(View(gameSegment)); }
public async Task <IActionResult> Create(GameSegmentViewModel gameSegment) { var currentUser = await GetCurrentUserAsync(); GameSegmentViewModel createSegment = new GameSegmentViewModel(); createSegment.Segment = gameSegment.Segment; createSegment.Segment.GameId = gameSegment.Game.Id; createSegment.Segment.UserId = currentUser.Id; createSegment.Segment.GameIdFromAPI = gameSegment.Game.GameIdFromAPI; //createSegment.Segment.OrginId = gameSegment.Segment.Id; if (ModelState.IsValid) { _context.Add(createSegment.Segment); await _context.SaveChangesAsync(); //return RedirectToAction(nameof(Index)); var setOrgin = _context.Segments; return(Redirect($"http://localhost:5000/MySegment/Index/{gameSegment.Game.Id}")); } //ViewData["GameId"] = new SelectList(_context.Games, "Id", "Id", segment.GameId); //ViewData["UserId"] = new SelectList(_context.ApplicationUsers, "Id", "Id", segment.UserId); return(View(createSegment.Segment)); }
// GET: MySegment public async Task <IActionResult> Index(int id) { GameSegmentViewModel gameSegment = new GameSegmentViewModel(); var segmentsByGame = _context.Segments .Where(s => s.GameId == id).ToList(); gameSegment.segmentsList = segmentsByGame; var currentGame = await _context.Games .FirstOrDefaultAsync(g => g.Id == id); if (currentGame != null) { gameSegment.Game = currentGame; } //var applicationDbContext = _context.Segments.Include(s => s.Game).Include(s => s.User); return(View(gameSegment)); }
public async Task <IActionResult> Create(string id) { var currentUser = await GetCurrentUserAsync(); var gameCheck = await _context.Games .Where(g => g.UserId == currentUser.Id) .FirstOrDefaultAsync(g => g.GameIdFromAPI == id); if (gameCheck == null) { var url = $"https://www.speedrun.com/api/v1/games/{id}"; ApiHelper.InitializeClient(); var singleGameData = await TestClass.LoadSingleData(url); Game game = new Game(); game.GameIdFromAPI = singleGameData.data.id; game.Name = singleGameData.data.names.international; game.Picture = singleGameData.data.assets.covermedium.uri; game.ReleaseDate = singleGameData.data.released; game.UserId = currentUser.Id; _context.Add(game); await _context.SaveChangesAsync(); GameSegmentViewModel gameSegment = new GameSegmentViewModel(); gameSegment.Game = game; return(View(gameSegment)); } else { ViewData["GameId"] = new SelectList(_context.Games, "Id", "Id"); ViewData["UserId"] = new SelectList(_context.ApplicationUsers, "Id", "Id"); GameSegmentViewModel gameSegment = new GameSegmentViewModel(); gameSegment.Game = gameCheck; return(View(gameSegment)); } }
public async Task <IActionResult> ShowSegments(string GameIdFromAPI) { GameSegmentViewModel gameSegment = new GameSegmentViewModel(); var getCurrentUser = await GetCurrentUserAsync(); var segmentsByGame = await _context.Segments .Include(s => s.User) .Where(s => s.UserId != getCurrentUser.Id) .Where(s => s.GameIdFromAPI == GameIdFromAPI).ToListAsync(); gameSegment.segmentsList = segmentsByGame; var gameById = await _context.Games .FirstOrDefaultAsync(g => g.GameIdFromAPI == GameIdFromAPI); gameSegment.Game = gameById; return(View(gameSegment)); }
public async Task <IActionResult> ShowSegmentsFromSearch(string id) { var getCurrentUser = await GetCurrentUserAsync(); var game = _context.Games .Where(g => g.UserId == getCurrentUser.Id) .FirstOrDefaultAsync(g => g.GameIdFromAPI == id); if (game.Result == null) { var url = $"https://www.speedrun.com/api/v1/games/{id}"; ApiHelper.InitializeClient(); var singleGameData = await TestClass.LoadSingleData(url); Game newGame = new Game(); newGame.GameIdFromAPI = singleGameData.data.id; newGame.Name = singleGameData.data.names.international; newGame.Picture = singleGameData.data.assets.covermedium.uri; newGame.ReleaseDate = singleGameData.data.released; newGame.UserId = getCurrentUser.Id; _context.Add(newGame); await _context.SaveChangesAsync(); GameSegmentViewModel gameSegment = new GameSegmentViewModel(); gameSegment.Game = newGame; var segmentsByGame = await _context.Segments .Include(s => s.User) .Where(s => s.UserId != getCurrentUser.Id) .Where(s => s.GameIdFromAPI == id).ToListAsync(); gameSegment.segmentsList = segmentsByGame; var gameById = await _context.Games .FirstOrDefaultAsync(g => g.GameIdFromAPI == id); gameSegment.Game = gameById; return(View("ShowSegments", gameSegment)); } else { GameSegmentViewModel gameSegment = new GameSegmentViewModel(); var segmentsByGame = await _context.Segments .Include(s => s.User) .Where(s => s.UserId != getCurrentUser.Id) .Where(s => s.GameIdFromAPI == id).ToListAsync(); gameSegment.segmentsList = segmentsByGame; var gameById = await _context.Games .FirstOrDefaultAsync(g => g.GameIdFromAPI == id); gameSegment.Game = gameById; return(View("ShowSegments", gameSegment)); } }