Exemplo n.º 1
0
        public IActionResult Cancel([FromRoute] int RequestId)
        {
            RequestToJoin Request = Context.Requests.Where(req => req.Id == RequestId).Single();

            Context.Requests.Remove(Request);
            Context.SaveChanges();
            return(Ok());
        }
Exemplo n.º 2
0
        public IActionResult Deny([FromRoute] int RequestId)
        {
            RequestToJoin Request = Context.Requests.Where(req => req.Id == RequestId).Include(req => req.Clan).Single();
            Notification  NewNote = new Notification()
            {
                Text   = $"Your request to join {Request.Clan.Name} has been denied",
                Type   = NotificationType.GENERAL,
                Unread = true,
                UserId = Request.UserId
            };

            Context.Notifications.Add(NewNote);
            Context.Requests.Remove(Request);
            Context.SaveChanges();

            return(Ok());
        }
Exemplo n.º 3
0
        public IActionResult Join([FromRoute] int ClanId, [FromBody] RequestToJoin Form)
        {
            int  UserId = (int)HttpContext.Session.GetInt32("UserId");
            User User   = Context.Users.Where(u => u.Id == UserId).Single();

            Form.CreatedAt = DateTime.Now;
            Context.Requests.Add(Form);
            Context.SaveChanges();
            List <RequestToJoin> CurrentRequests = Context.Requests.Where(req => req.UserId == UserId && req.Id != Form.Id).ToList();

            CurrentRequests.ForEach(Request =>
            {
                Context.Requests.Remove(Request);
            });
            Context.SaveChanges();
            Form.User = User;
            return(Ok(Form));
        }
Exemplo n.º 4
0
        public IActionResult Accept([FromRoute] int RequestId)
        {
            RequestToJoin Request           = Context.Requests.Where(req => req.Id == RequestId).Include(r => r.Clan).Single();
            User          UserBeingAccepted = Context.Users.Where(user => user.Id == Request.UserId).Single();
            Notification  NewNote           = new Notification()
            {
                Text   = $"You have been Accepted into {Request.Clan.Name}!",
                Type   = NotificationType.GENERAL,
                Unread = true,
                UserId = Request.UserId
            };

            UserBeingAccepted.ClanId = Request.ClanId;
            UserBeingAccepted.Role   = Clan.Roles.Member;
            Context.Notifications.Add(NewNote);
            Context.SaveChanges();
            Context.Users.Update(UserBeingAccepted);
            Context.SaveChanges();
            Context.Requests.Remove(Request);
            Context.SaveChanges();

            return(Ok());
        }
Exemplo n.º 5
0
 /// <summary>
 /// Add request to join
 /// </summary>
 /// <param name="model"></param>
 public void Add(RequestToJoin model)
 {
     this.context.RequestsToJoin.Add(model);
     this.context.SaveChanges();
 }