Exemplo n.º 1
0
        public async Task <IActionResult> PutInstantInvite(string id, InstantInvite instantInvite)
        {
            if (id != instantInvite.Link)
            {
                return(BadRequest());
            }

            _context.Entry(instantInvite).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!InstantInviteExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Exemplo n.º 2
0
        public async Task <ActionResult <InstantInvite> > PostInstantInvite(InstantInvite instantInvite)
        {
            _context.InstantInvite.Add(instantInvite);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetInstantInvite", new { id = instantInvite.Link }, instantInvite));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Add(Server serverFromClient)
        {
            await context.Server.AddAsync(serverFromClient);

            await context.SaveChangesAsync();

            Role roleAdmin = await CreateMainRole(serverFromClient);

            ServerUser serverUser = new ServerUser {
                ServerId = serverFromClient.ServerId,
                UserId   = serverFromClient.AdminId,
                RoleId   = roleAdmin.RoleId
            };
            await context.ServerUser.AddAsync(serverUser);

            context.SaveChanges();
            InstantInvite instantInvite = new InstantInvite {
                //TODO
                ServerId      = serverFromClient.ServerId,
                Link          = Guid.NewGuid().ToString(),
                NerverExpired = true
            };
            await context.InstantInvite.AddAsync(instantInvite);

            await context.SaveChangesAsync();

            return(Ok(serverFromClient));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> GetByServerAsync(int serverId)
        {
            InstantInvite instantInvite = await _context.InstantInvite.Where(ii => ii.ServerId == serverId).FirstOrDefaultAsync();

            if (instantInvite == null)
            {
                return(NotFound());
            }
            return(Ok(instantInvite.Link));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> GetServerByLink(int userId, string link)
        {
            InstantInvite instantInvite = await _context.InstantInvite.Where(ii => ii.Link == link).FirstOrDefaultAsync();

            if (instantInvite != null)
            {
                Server result = _context.Server.Where(s => s.ServerId == instantInvite.ServerId).First();

                //ServerUser serverUser = _context.ServerUser.Where(su => su.ServerId == result.ServerId && su.UserId == userId).FirstOrDefault();
                //if(serverUser == null) {
                //    serverUser = new ServerUser();
                //    serverUser.ServerId = result.ServerId;
                //    serverUser.UserId = userId;
                //    serverUser.RoleId = (int)result.DefaultRoleId;
                //    _context.ServerUser.Add(serverUser);
                //    _context.SaveChanges();
                //}
                return(Ok(result));
            }
            return(NotFound());
        }