Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <IViewComponentResult> InvokeAsync(string userGroupId, string poolId)
        {
            if (string.IsNullOrEmpty(userGroupId))
            {
                return(new ViewComponentPlaceholder());
            }

            var group = await _userGroupManager.GetUserGroupAsync(userGroupId);

            if (group == null)
            {
                return(new ViewComponentPlaceholder());
            }

            var model = new UserGroupMembershipViewModel()
            {
                UserGroupId         = userGroupId,
                AccessLevel         = AccessLevel.Audience,
                AllowEmailMessaging = false,
                AllowSmsMessaging   = false
            };

            if (group.UserGroupType == UserGroupType.NotificationGroup)
            {
                model.AllowEmailMessaging = true;
                model.AllowSmsMessaging   = true;
            }

            ViewData["ShowAllowMessagingCheckbox"] = true;  //(group.UserGroupType != UserGroupType.NotificationGroup);
            ViewData["AccessLevelSelectList"]      = _enumLocalizer.GetSelectList <AccessLevel>();
            ViewData["PoolId"] = poolId;

            return(View("UserGroupMemberCreate", model));
        }
Example #2
0
        public async Task <ActionResult> DeleteUserGroupMembership(UserGroupMembershipViewModel model)
        {
            if (string.IsNullOrEmpty(model.UserGroupId) || string.IsNullOrEmpty(model.UserId))
            {
                return(BadRequest());
            }

            await _userGroupManager.DeleteUserGroupMembershipAsync(model.UserGroupId, model.UserId);

            return(Ok(model));
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <IViewComponentResult> InvokeAsync(string userGroupId, string userId)
        {
            if (string.IsNullOrEmpty(userGroupId) || string.IsNullOrEmpty(userId))
            {
                return(new ViewComponentPlaceholder());
            }

            var model = new UserGroupMembershipViewModel()
            {
                UserGroupId = userGroupId,
                UserId      = userId
            };

            var group = await _userGroupManager.GetUserGroupAsync(model.UserGroupId);

            if (group == null)
            {
                return(new ViewComponentPlaceholder());
            }

            var member = await _userGroupManager.GetUserGroupMembershipAsync(model.UserGroupId, model.UserId);

            if (member == null)
            {
                return(new ViewComponentPlaceholder());
            }

            var user = await _userManager.GetUserAsync(model.UserId);

            if (user == null)
            {
                return(new ViewComponentPlaceholder());
            }

            model.AccessLevel         = member.AccessLevel;
            model.AllowEmailMessaging = member.AllowEmailMessaging;
            model.AllowSmsMessaging   = member.AllowSmsMessaging;
            model.UserName            = user.UserName;
            model.Email                = user.Email;
            model.EmailConfirmed       = user.EmailConfirmed;
            model.PhoneNumber          = user.PhoneNumber;
            model.PhoneNumberConfirmed = user.PhoneNumberConfirmed;

            ViewData["ShowAllowMessagingCheckbox"] = true;
            ViewData["AccessLevelSelectList"]      = _enumLocalizer.GetSelectList <AccessLevel>();

            return(View("UserGroupMemberEdit", model));
        }
Example #4
0
        public async Task <ActionResult> SaveUserGroupMembership(UserGroupMembershipViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.GetUserAsync(model.UserId);

                if (user == null)
                {
                    ModelState.AddModelError("UserId", "Invalid UserId:" + model.UserId);
                    return(BadRequest(ModelState));
                }
                var member = model.ProjectTo <Angelo.Connect.Models.UserGroupMembership>();
                await _userGroupManager.SaveUserGroupMembershipAsync(member);

                model.UserName        = user.UserName;
                model.AccessLevelName = _enumLocalizer.GetLocalName(model.AccessLevel);
                return(Ok(model));
            }
            return(BadRequest(ModelState));
        }