public async Task <IActionResult> Unfollow([FromBody] ThreadIDModel t) { var user = await _userManager.GetUserAsync(HttpContext.User); var thread = _context.Threads.Find(t.ThreadID); if (thread != null) { var followedThreadRows = Util.GetFollowedThreadMatches(user, thread, _context, Request); if (followedThreadRows.Any()) { foreach (FollowedThread row in followedThreadRows) { _context.Remove(row); } } ; await _context.SaveChangesAsync(); return(new OkObjectResult(t.ThreadID)); } else { return(new BadRequestObjectResult(thread)); } }
public async Task <IActionResult> ToggleHidden([FromBody] ThreadIDModel t) { var user = await _userManager.GetUserAsync(HttpContext.User); var thread = _context.Threads.Find(t.ThreadID); if (thread != null) { var hiddenThreadRows = Util.GetHiddenThreadMatches(user, thread, _context, Request); if (!hiddenThreadRows.Any()) { var hiddenThread = new HiddenThread { Thread = thread, User = user, IP = user == null ? Util.GetCurrentIPString(Request) : null }; await _context.AddAsync(hiddenThread); } else { foreach (HiddenThread row in hiddenThreadRows) { _context.Remove(row); } } await _context.SaveChangesAsync(); return(new OkObjectResult(t.ThreadID)); } else { return(new BadRequestObjectResult(thread)); } }