public ActionResult Edit(int id, ChangeUserTypeViewModel vm)
        {
            try
            {
                _userRepo.UpdateUserType(vm.User);

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                vm.Exception = ex;
                return(View(vm));
            }
        }
        public ActionResult Edit(int id)
        {
            var user = _userRepo.GetById(id);

            var vm = new ChangeUserTypeViewModel()
            {
                User = user
            };

            if (user == null)
            {
                return(RedirectToAction("Index"));
            }

            return(View(vm));
        }
        // GET: Deactivate Form
        public ActionResult Deactivate(int id)
        {
            UserProfile user = _userRepo.GetById(id);

            if (user == null)
            {
                return(RedirectToAction("Index"));
            }

            var vm = new ChangeUserTypeViewModel()
            {
                User = user
            };

            return(View(vm));
        }
        public ActionResult Deactivate(int id, ChangeUserTypeViewModel vm)
        {
            var user = _userRepo.GetById(id);

            try
            {
                _userRepo.DeactivateUser(user);

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                vm.User      = user;
                vm.Exception = ex;
                return(View(vm));
            }
        }
        public async Task <IActionResult> ChangeUserType([FromBody] ChangeUserTypeViewModel model)
        {
            // explicitly whitelist accepted types
            if (model.UserType != UserType.Banned && model.UserType != UserType.User && model.UserType != UserType.TrustedUser)
            {
                return(BadRequest());
            }

            var success = await _userService.ChangeUserTypeAsync(model.UserId, model.UserType, User.GetClaim <int>(ClaimType.Id))
            ;

            if (!success)
            {
                return(BadRequest());
            }

            return(new EmptyResult());
        }
Example #6
0
        public async Task <IActionResult> ChangeUserType([FromBody] ChangeUserTypeViewModel model)
        {
            // explicitly whitelist accepted types
            if (model.UserType != UserType.Banned && model.UserType != UserType.User && model.UserType != UserType.TrustedUser)
            {
                return(BadRequest());
            }

            var success = await _userService.ChangeUserTypeAsync(model.UserId, model.UserType, User.GetClaim <int>(ClaimType.Id));

            if (!success)
            {
                return(BadRequest());
            }

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

            var siteDomain = _configuration.GetValue <string>("STACKAPP_SITEDOMAIN");
            var currentUserCanManageUsers = (await _authorizationService.AuthorizeAsync(User, TraducirPolicy.CanManageUsers)).Succeeded;

            return(View("UserSummary", new UserSummaryViewModel(user, siteDomain, currentUserCanManageUsers)));
        }