示例#1
0
        public async Task <ActionResult> CreateGroup(GroupCreateDto group)
        {
            var authUser = await BasicUserFacade.GetUserByNickNameAsync(User.Identity.Name);

            var group_Id = await GroupGenericFacade.CreateGroup(group, authUser.Id);

            return(RedirectToAction("Index", "GroupsManager", new { groupId = group_Id }));
        }
示例#2
0
        // DELETE: api/Groups/5
        public async Task <string> Delete(int id)
        {
            var success = await GroupGenericFacade.DeleteAsync(id);

            if (!success)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
            return($"Deleted Group with id: {id}");
        }
示例#3
0
        // GET: api/Groups/2
        public async Task <GroupDto> Get(int id)
        {
            var group = await GroupGenericFacade.GetAsync(id);

            if (group == null)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
            return(group);
        }
示例#4
0
        public async Task <IEnumerable <GroupDto> > GetBySubname(string subname)
        {
            if (string.IsNullOrWhiteSpace(subname))
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }
            var groups = await GroupGenericFacade.GetGroupsContainingSubNameAsync(subname);

            return(groups);
        }
示例#5
0
        // PUT: api/Groups/5
        public async Task <string> Put(int id, GroupDto entity)
        {
            if (!ModelState.IsValid)
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }

            await GroupGenericFacade.UpdateAsync(entity);

            return($"Updated Group with id: {id}");
        }
示例#6
0
        public async Task <IEnumerable <GroupProfileUserDto> > GetGroupUsers(int groupId)
        {
            var group = await GroupGenericFacade.GetAsync(groupId);

            if (group == null)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }

            var users = await GroupUserGenericFacade.GetUsersByGroupIdAsync(groupId);

            return(users);
        }
示例#7
0
        public async Task <ActionResult> BecomeMember(int groupId)
        {
            var authUser = await BasicUserFacade.GetUserByNickNameAsync(User.Identity.Name);

            var addUserToGroupDto = new AddUserToGroupDto
            {
                UserId     = authUser.Id,
                GroupId    = groupId,
                IsAccepted = true
            };

            await GroupGenericFacade.AddUserAsync(addUserToGroupDto);

            return(RedirectToAction("Index"));
        }
示例#8
0
        // POST: api/Groups
        public async Task <string> Post(GroupDto entity)
        {
            if (!ModelState.IsValid)
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }
            var groupId = await GroupGenericFacade.CreateAsync(entity);

            if (groupId.Equals(0))
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }

            return($"Created Group with id: {groupId}");
        }
示例#9
0
        // GET: GroupManager
        public async Task <ActionResult> Index([FromUri] string subname)
        {
            var filter = new GroupFilterDto {
                SubName = subname
            };

            var user = await BasicUserFacade.GetUserByNickNameAsync(User.Identity.Name);

            var groups = await GroupGenericFacade.GetGroupsContainingSubNameAsync(subname);

            var basicUserWithGroups = await BasicUserFacade.GetBasicUserWithGroups(user.Id);

            return(View("GroupManagementView", new FindGroupsModel
            {
                Filter = filter,
                Groups = groups,
                User = basicUserWithGroups
            }));
        }
示例#10
0
        public async Task <ActionResult> AcceptInvitation(int groupId, int userId)
        {
            await GroupGenericFacade.AcceptInvitation(userId, groupId);

            return(RedirectToAction("Index"));
        }