Exemplo n.º 1
0
        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 }));
        }