Example #1
0
        /// <inheritdoc/>
        public Task UpdatePasswordAsync(string previousPassword, string newPassword)
        {
            var update = new UserPasswordUpdate()
            {
                NewPassword      = newPassword,
                PreviousPassword = previousPassword,
            };

            return(this.requestService.PostRequest <object>("users/me/password", update));
        }
        [HttpPost("PasswordUpdate")]  // api/Accounts/PasswordUpdate
        public async Task <IActionResult> UpdatePassengerPassword(UserPasswordUpdate userModel)
        {
            var user = await _userManager.FindByEmailAsync(userModel.Email);

            //var user = db.Users.Where(x => x.BusNo == userModel.BusNo).FirstOrDefault();

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

            user.PasswordHash = _userManager.PasswordHasher.HashPassword(user, userModel.NewPassword);


            var result = await _userManager.UpdateAsync(user);

            if (!result.Succeeded)
            {
                return(Ok(result.Errors));
            }

            return(StatusCode(201));
        }
        public IActionResult UpdatePassword([FromBody] UserPasswordUpdate requestModel)
        {
            try
            {
                var authId        = User.Claims.FirstOrDefault(x => x.Type == "UserAuthId");
                var websiteUserId = User.Claims.FirstOrDefault(x => x.Type == "WebsiteUserId");
                var websiteId     = User.Claims.FirstOrDefault(x => x.Type == "CustomerId");

                requestModel.DeveloperId   = authId.Value;
                requestModel.WebsiteId     = websiteId.Value;
                requestModel.WebsiteUserId = websiteUserId.Value;

                var request = (HttpWebRequest)WebRequest.Create(new Uri(String.Format(Constants.CustomerEndpoints.UpdateCustomerPasswordEndpoint, Constants.KitsuneServerUrl, websiteId.Value, websiteUserId.Value)));
                request.Method      = "POST";
                request.ContentType = "application/json";
                request.Headers.Add(HttpRequestHeader.Authorization, authId.Value);

                using (var streamWriter = new StreamWriter(request.GetRequestStream()))
                {
                    string jsonData = JsonConvert.SerializeObject(requestModel);
                    streamWriter.Write(jsonData);
                }

                var httpResponse = (HttpWebResponse)request.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    return(new JsonResult(streamReader.ReadToEnd()));
                }
            }
            catch (WebException ex)
            {
                try
                {
                    using (WebResponse response = ex.Response)
                    {
                        HttpWebResponse httpResponse = (HttpWebResponse)response;
                        using (Stream data = response.GetResponseStream())
                            using (var reader = new StreamReader(data))
                            {
                                var error = JsonConvert.DeserializeObject <UserPasswordUpdateErrorResponse>(reader.ReadToEnd());
                                if (error != null && error.Errors.Count > 0)
                                {
                                    return(BadRequest(new UserPasswordUpdateResponse()
                                    {
                                        IsUpdationError = true,
                                        ErrorMessage = error.Errors[0].ErrorMessage
                                    }));
                                }
                                else
                                {
                                    return(BadRequest(new UserPasswordUpdateResponse()
                                    {
                                        IsUpdationError = false,
                                        ErrorMessage = "error occured"
                                    }));
                                }
                            }
                    }
                }
                catch (Exception e)
                {
                    return(BadRequest(new UserPasswordUpdateResponse()
                    {
                        IsUpdationError = false,
                        ErrorMessage = ex.Message
                    }));
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(new UserPasswordUpdateResponse()
                {
                    IsUpdationError = false,
                    ErrorMessage = ex.Message
                }));
            }
        }