public ActionResult UnBlockUserAccount(string id)
        {
            if (id == null)
            {
                return(HttpNotFound());
            }
            ApplicationUser applicationUser = UserManager.FindById(id);

            if (applicationUser == null)
            {
                return(HttpNotFound());
            }
            UserBlockData userBlockData = new UserBlockData()
            {
                UserId         = applicationUser.Id,
                Email          = applicationUser.Email,
                LockoutEnabled = applicationUser.LockoutEnabled,
            };

            if (applicationUser.LockoutEndDateUtc == null)
            {
                userBlockData.DateTimeBlock = DateTime.UtcNow;
            }
            else
            {
                userBlockData.DateTimeBlock = (DateTime)applicationUser.LockoutEndDateUtc;
            }
            return(View(userBlockData));
        }
        public async Task <ActionResult> UnBlockUserAccount(UserBlockData userBlockData)
        {
            var mapper = new MapperConfiguration(cfg => cfg.CreateMap <UserBlockData,
                                                                       UserBlockDataDTO>()).CreateMapper();
            var userBlockDataDTO = mapper.Map <UserBlockData,
                                               UserBlockDataDTO>(userBlockData);
            await UserService.UnblockUserAccount(userBlockDataDTO);

            logger.Info("Администратор разблокировал пользователя {0}", userBlockData.UserId);

            return(RedirectToAction("DataUsers"));
        }
        public ActionResult UnBlockUserAccount(UserBlockData userBlockData)
        {
            var result = UserManager.SetLockoutEnabled(userBlockData.UserId, true);

            if (result.Succeeded)
            {
                result = UserManager.SetLockoutEndDate(userBlockData.UserId, DateTimeOffset.UtcNow);
                result = UserManager.SetLockoutEnabled(userBlockData.UserId, false);
                ApplicationUser applicationUser = UserManager.FindById(userBlockData.UserId);
                logger.Info($"Был разблокирован пользователь, у которого логин {applicationUser.UserName} и почта {applicationUser.Email}");
            }
            return(RedirectToAction("DataUsers"));
        }
 public ActionResult BlockUserAccount(UserBlockData userBlockData)
 {
     if (ModelState.IsValid)
     {
         var result = UserManager.SetLockoutEnabled(userBlockData.UserId, true);
         if (result.Succeeded)
         {
             result = UserManager.SetLockoutEndDate(userBlockData.UserId, (DateTimeOffset)userBlockData.DateTimeBlock);
             ApplicationUser applicationUser = UserManager.FindById(userBlockData.UserId);
             logger.Info($"Был заблокирован пользователь, у которого логин {applicationUser.UserName} и почта {applicationUser.Email}");
         }
         return(RedirectToAction("DataUsers"));
     }
     return(View());
 }
        public async Task <ActionResult> BlockUserAccount(UserBlockData userBlockData)
        {
            try
            {
                UserService.CheckDateBlock(userBlockData.DateTimeBlock);
            }
            catch (ValidationBusinessLogicException exception)
            {
                ModelState.AddModelError(exception.Property, exception.Message);
            }
            if (ModelState.IsValid)
            {
                var mapper = new MapperConfiguration(cfg => cfg.CreateMap <UserBlockData,
                                                                           UserBlockDataDTO>()).CreateMapper();
                var userBlockDataDTO = mapper.Map <UserBlockData,
                                                   UserBlockDataDTO>(userBlockData);
                await UserService.BlockUserAccount(userBlockDataDTO);

                logger.Info("Администратор заблокировал пользователя {0}", userBlockData.UserId);

                return(RedirectToAction("DataUsers"));
            }
            return(View(userBlockData));
        }