public HttpResponseMessage UpdatePassword(UserUpdatePasswordViewModel user)
        {
            var  resp = new HttpResponseMessage();
            bool isOldPasswordMatching = false;

            if (user != null)
            {
                try
                {
                    isOldPasswordMatching = this.usersService.UpdateUserPassword(user.Email, user.OldPassword, user.NewPassword);
                }
                catch
                {
                    resp.Content = new StringContent(JsonConvert.SerializeObject(new { Status = "0", ComplexObject = isOldPasswordMatching }));
                    resp.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");

                    return(resp);
                }

                resp.Content = new StringContent(JsonConvert.SerializeObject(new { Status = "1", ComplexObject = isOldPasswordMatching }));
                resp.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                return(resp);
            }

            isOldPasswordMatching            = true;
            resp.Content                     = new StringContent(JsonConvert.SerializeObject(new { Status = "0", ComplexObject = isOldPasswordMatching }));
            resp.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            return(resp);
        }
Пример #2
0
        public async Task <IActionResult> _ChangePasswordForm(long id)
        {
            try
            {
                var model      = new UserInsertViewModel();
                var modelInfor = new UserUpdatePasswordViewModel();
                if (id > 0)
                {
                    model = await _apiFactory.GetAsync <UserInsertViewModel>("Authentication/ReadById/" + id, HostConstants.ApiAuthentication, _userSession.BearerToken);

                    modelInfor.Id             = id;
                    modelInfor.FullName       = model.FullName;
                    modelInfor.Email          = model.Email;
                    modelInfor.Username       = model.UserName;
                    modelInfor.OldPassword    = "";
                    modelInfor.NewPassword    = "";
                    modelInfor.RepeatPassword = "";
                }
                return(PartialView(modelInfor));
            }
            catch (Exception)
            {
                throw new Exception("Không thể lấy biểu mẫu thành viên!!!");
            }
        }
Пример #3
0
        public async Task <UserViewModel> UpdatePasswordAsync(UserUpdatePasswordViewModel viewModel)
        {
            var user = await _repository.GetAsync(viewModel.Id);

            if (user != null)
            {
                if (!user.IsVerified || user.PasswordChangeToken != null)
                {
                    user.SetPassword(Utils.Utils.EncryptPassword(viewModel.Password));
                    user.SetPasswordChangeToken(null);
                    await Commit();

                    return(_mapper.Map <UserViewModel>(user));
                }
                else
                {
                    await _bus.RaiseEvent(new Notification("defaultError", "Sua conta já esta ativa, faça o login."));

                    return(null);
                }
            }
            else
            {
                await _bus.RaiseEvent(new Notification("defaultError", "Usuário não encontrato."));

                return(null);
            }
        }
        public async Task <IActionResult> UpdatePasswordAsync(UserUpdatePasswordViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(viewModel));
            }

            var token   = Request.Headers[TokenName];
            var session = await _db.UserSessions
                          .Include(x => x.User)
                          .FirstOrDefaultAsync(x => x.Token == token);

            if (session == null)
            {
                return(BadRequest());
            }

            if (session.User.Password != viewModel.CurrentPassword)
            {
                ModelState.AddModelError("error", "Your current password is invalid");
                return(BadRequest(ModelState));
            }

            // Set password

            session.User.Password = viewModel.NewPassword;
            _db.Update(session.User);
            await _db.SaveChangesAsync();

            return(Ok());
        }
Пример #5
0
        public async Task <UserDetailsViewModel> UpdatePassword(UserUpdatePasswordViewModel userViewModel)
        {
            var updateUser = _mapper.Map <Users>(userViewModel);

            updateUser.Password = _cryptoService.ComputeHash(updateUser.Password);

            return(_mapper.Map <UserDetailsViewModel>(await _usersRepository.UpdatePassword(updateUser)));
        }
Пример #6
0
        public async Task <IActionResult> UpdatePassword([FromBody] UserUpdatePasswordViewModel item)
        {
            var command = Mapper.Map <UserUpdatePasswordCommand>(item);

            command.UserId = Convert.ToInt32(User.Claims.First(c => c.Type == "Id").Value);

            await _accountCommandFunctionality.UpdatePasswordAsync(command);

            return(StatusCode(StatusCodes.Status200OK));
        }
Пример #7
0
 public IActionResult UpdatePassword([FromBody] UserUpdatePasswordViewModel entity)
 {
     if (!ModelState.IsValid)
     {
         NotifyModelStateErrors();
         return(Response(entity));
     }
     _userAppService.UpdatePassword(entity);
     return(Response(entity));
 }
Пример #8
0
        public ClaimsIdentity GenerateClaimsIdentity(UserUpdatePasswordViewModel userViewModel)
        {
            ClaimsIdentity identity = new ClaimsIdentity(
                new GenericIdentity(userViewModel.Id.ToString(), "Login"),
                new[] {
                new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString("N")),
                new Claim(JwtRegisteredClaimNames.UniqueName, userViewModel.Id.ToString())
            }
                );

            return(identity);
        }
Пример #9
0
        public IActionResult UpdatePassword(UserUpdatePasswordViewModel model)
        {
            var user = _userService.Find(model.Id);

            model.Password = CommonData.ConvertStringtoMD5(model.Password);

            _mapper.Map(model, user);

            _userService.Update(user);
            _unitOfWork.Commit();

            TempData["Success"] = "Update Password successfully.";

            return(View(model));
        }
Пример #10
0
        public async Task <ActionResult <UserDetailsViewModel> > UpdatePassword(UserUpdatePasswordViewModel userViewModel)
        {
            try
            {
                UserDetailsViewModel user = await usersService.UpdatePassword(userViewModel);

                if (user == null)
                {
                    return(BadRequest("Error updating user password."));
                }

                return(CreatedAtAction(nameof(Details), new { id = user.Id }, user));
            }
            catch (Exception)
            {
                return(BadRequest("Error updating user password."));
            }
        }
Пример #11
0
 public object GetLoginObject(TokenConfigurations tokenConfigurations,
                              SigningConfigurations signingConfigurations,
                              UserUpdatePasswordViewModel userViewModel)
 {
     try
     {
         var dates = GetDates(tokenConfigurations);
         return(new
         {
             authenticated = true,
             created = dates.dataCriacao.ToString("yyyy-MM-dd HH:mm:ss"),
             expiration = dates.dataExpiracao.ToString("yyyy-MM-dd HH:mm:ss"),
             accessToken = GenerateSecurityToken(tokenConfigurations, signingConfigurations, userViewModel, dates),
             message = "OK"
         });
     }
     catch
     {
         return(null);
     }
 }
Пример #12
0
        public async Task <ResponseContainer> UpdatePassword(UserUpdatePasswordViewModel model)
        {
            try
            {
                ResponseContainer response = new ResponseContainer();
                var res = await _apiFactory.PutAsync <UserUpdatePasswordViewModel, int>(model, "Authentication/UpdatePassword", HostConstants.ApiAuthentication, _userSession.BearerToken);

                if (res > 0)
                {
                    response.Activity = "Đổi mật khẩu";
                    return(response);
                }
                else
                {
                    response.Activity = "Sai mật khẩu. Đổi mật khẩu không";
                    return(response);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #13
0
 public string GenerateSecurityToken(TokenConfigurations tokenConfigurations,
                                     SigningConfigurations signingConfigurations,
                                     UserUpdatePasswordViewModel userViewModel,
                                     (DateTime dataCriacao, DateTime dataExpiracao) dates)
Пример #14
0
        public void UpdatePassword(UserUpdatePasswordViewModel userViewModel)
        {
            var updateUserPasswordCommand = _mapper.Map <UpdateUserPasswordCommand>(userViewModel);

            _bus.SendCommand(updateUserPasswordCommand);
        }