public async Task <IActionResult> Edit(int id, [Bind("ShoutID,UserID,Reaction")] ShoutReactionData shoutReactionData) { if (id != shoutReactionData.ShoutID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(shoutReactionData); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ShoutReactionDataExists(shoutReactionData.ShoutID)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(shoutReactionData)); }
public async Task <IActionResult> Create([Bind("ShoutID,UserID,Reaction")] ShoutReactionData shoutReactionData) { if (ModelState.IsValid) { _context.Add(shoutReactionData); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(shoutReactionData)); }
public async Task Reject(int id) { var user = await _context.Users.FirstOrDefaultAsync(m => m.UserName == User.Identity.Name); var shoutReactions = _context.ShoutReactionData .Where(m => m.ShoutID == id) .Where(m => m.UserID == user.Id); if (shoutReactions == null) { await UpdateShoutReaction(id, 2); ShoutReactionData t = new ShoutReactionData { ShoutID = id, UserID = user.Id, Reaction = 2 }; _context.Add(t); await _context.SaveChangesAsync(); } else { foreach (var shoutReaction in shoutReactions) { if (shoutReaction.Reaction != 2 && shoutReaction.UserID == user.Id) { await UpdateShoutReaction(shoutReaction.ShoutID, 2); ShoutReactionData t = new ShoutReactionData { ShoutID = id, UserID = user.Id, Reaction = 2 }; try { _context.Update(t); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { } } } } //return RedirectToAction("Index", "Shouts"); }