Пример #1
0
        public async Task <IHttpActionResult> PostRoom(PostRoomMemberClass postroom)
        {
            if (!TokenRepositor.checkToken(postroom.idUser, postroom.token))
            {
                return(NotFound());
            }
            Room room = new Room();

            room.RoomName = postroom.RoomName;
            room.Private  = postroom.Private;
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Rooms.Add(room);
            await db.SaveChangesAsync();

            RoomMember roomm = new RoomMember();

            roomm.IdRoom = room.Id;
            roomm.IdUser = postroom.idUser;
            db.RoomMembers.Add(roomm);
            await db.SaveChangesAsync();

            return(Ok("Chatroom Created"));
        }
Пример #2
0
        public async Task <IHttpActionResult> PostRoomMember(PostRoomMemberClass POSTroommember)
        {
            if (!TokenRepositor.checkToken(POSTroommember.idUser, POSTroommember.token))
            {
                return(NotFound());
            }
            User u = db.Users.Where(x => x.UserName == POSTroommember.UserName).FirstOrDefault();

            if (u == null)
            {
                return(NotFound());
            }
            if (db.Rooms.Where(x => x.Id == POSTroommember.IdRoom && x.Private == true).FirstOrDefault() != null && db.RoomMembers.Where(x => x.IdRoom == POSTroommember.IdRoom && x.IdUser == POSTroommember.idUser).FirstOrDefault() == null)
            {
                return(NotFound());
            }
            if (db.RoomMembers.Where(x => x.IdRoom == POSTroommember.IdRoom && x.IdUser == u.Id).FirstOrDefault() != null)
            {
                return(BadRequest("User already in chatroom"));
            }


            RoomMember roommember = new RoomMember();

            roommember.IdRoom = POSTroommember.IdRoom;
            roommember.IdUser = u.Id;
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.RoomMembers.Add(roommember);
            await db.SaveChangesAsync();

            return(Ok("User Added"));
        }