public async Task <ActionResult <ApiResponse> > UpdateUser(string username, ApiUserAdmin request)
        {
            var user = await userService.GetUserFromUsernameAsync(username).ConfigureAwait(false);

            if (user == null)
            {
                return(NotFound());
            }

            // user.EmailConfirmed = request.Verified;
            user.Disabled = request.Disabled;

            var result = await userService.UpdateUserAsync().ConfigureAwait(false);

            if (!result.Succeeded)
            {
                return(this.FailureResponse(t["An error occurred saving the user details"]));
            }

            if (!User.IsInRole(Roles.PermissionsManager))
            {
                return(this.SuccessResponse());
            }

            var permissionsResult = await userService.UpdatePermissionsAsync(user, request.Permissions).ConfigureAwait(false);

            if (!permissionsResult)
            {
                return(this.FailureResponse(t["An error occurred saving the user details"]));
            }

            return(this.SuccessResponse());
        }
Exemple #2
0
        public static ApiUserAdmin ToApiUserAdmin(this GametekiUser user)
        {
            if (user == null)
            {
                throw new ArgumentNullException(nameof(user));
            }

            var adminUser = new ApiUserAdmin();

            PopulateApiUser(user, adminUser);

            adminUser.Disabled = user.Disabled;

            // adminUser.Verified = user.EmailConfirmed;
            return(adminUser);
        }