public async Task <ActionResult> JoinCommunity(UserCommunity join) { if (!ModelState.IsValid) { return(BadRequest("Join Model Request invalid")); } var user_community = _context.UserCommunities.Add(join); var success = await _context.SaveChangesAsync(); return(Ok("community join successfull")); }
public ActionResult Join(Guid?id) { var userId = User.GetPrincipal()?.User.Id; var community = db.Communities.Find(id); if (community == null) { return(HttpNotFound()); } var uc = db.UserCommunities.Where(u => u.UserId == userId).FirstOrDefault(c => c.Community.Id == id); if (uc == null) { uc = new UserCommunity { Community = community, UserId = userId }; if (!community.IsOpen) { uc.DateJoined = DateTime.Now; } else { uc.DateJoined = null; } db.UserCommunities.Add(uc); db.SaveChanges(); } return(RedirectToAction("Index", new { id = id })); }