Ejemplo n.º 1
0
        public async Task <IActionResult> JoinGroup(string groupGuid)
        {
            var me = HttpContext.User.Identity.Name;

            try
            {
                return(new OkObjectResult(new GroupFoundDto(await _groupsRepository.AddToGroup(me, groupGuid))));
            }
            catch (ArgumentException ex)
            {
                return(new BadRequestObjectResult(ex.Message));
            }
        }
Ejemplo n.º 2
0
        //return null daca nu exista grupul cu el ca admin
        public void AddToGroup(GroupAdd groupAdd)
        {
            var groupKey    = _groupMapping.GetGroupKeyFromGroupAdd(groupAdd);
            var user_exists = _userRepository.GetUserByPhoneNumber(groupAdd.FriendPhoneNumber);

            if (user_exists == null)
            {
                throw new NullReferenceException("This user does not exist!");
            }
            var gr_exists = _groupsRepository.GetGroupKey(groupKey.PhoneNumber, groupKey.Name);

            if (gr_exists == null)
            {
                throw new NullReferenceException("You are not the admin of this group!");
            }
            var gr_members = _groupsRepository.GetGroupMembers(groupKey);

            if (gr_members.Contains(groupAdd.FriendPhoneNumber))
            {
                throw new NullReferenceException("Friend already in this group!");
            }
            if (groupAdd.PhoneNumber == groupAdd.FriendPhoneNumber)
            {
                throw new Exception("You have to type a friend's number!");
            }
            var group = _groupsRepository.AddToGroup(groupKey, groupAdd.FriendPhoneNumber);
        }