public ActionResult ChangePassword(UserPasswordChange userModel)
        {
            int idCook = Convert.ToInt32(Request.Cookies["UserID"].Value);

            using (DHDomoticaDBEntities DHDomoticadbModel = new DHDomoticaDBEntities())
            {
                var x       = DHDomoticadbModel.Users.FirstOrDefault(u => u.ID == idCook);
                var oldPw   = Crypto.Hash(userModel.OldPassword);
                var chPw    = userModel.ChangePassword;
                var chPwVer = userModel.ChangeConfirmPassword;
                if (x.Password == oldPw && chPw == chPwVer)
                {
                    chPw       = Crypto.Hash(chPw);
                    x.Password = chPw;

                    HttpCookie PwCookie = new HttpCookie("UserPw", x.Password);
                    PwCookie.Expires = DateTime.UtcNow.AddDays(2);
                    HttpContext.Response.SetCookie(PwCookie);

                    DHDomoticadbModel.SaveChanges();
                    return(RedirectToAction("PersonalInformation", "UserProfile"));
                }
                else
                {
                    ViewBag.WrongPasswordMessage = "Uw oude wachtwoord is niet goed ingevuld";
                    ShowUserSidebar();
                    return(View("ChangePassword", userModel));
                }
            }
        }
Beispiel #2
0
        private string GetContent(UserPasswordChange instance)
        {
            string content = "YKK Portal kullanıcı değişikliğini aşağıdaki adresten yapabilirsiniz. Bilginize;<br><br>";
            var    url     = appConfiguration.GetWebURL();
            var    token   = Cryptology.Encrypt(instance.Id.ToString());

            content = content + string.Format("{0}", url + "ChangePassword?passwordtoken=" + token);
            return(content);
        }
        public ActionResult UserPasswordChange(UserPasswordChange userPasswordChange)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    User user = (User)Session["User"];

                    UserRequest userRequest = new UserRequest {
                        NewPasswordHash = userPasswordChange.NewPassword,
                        Users           = new List <User> {
                            new User {
                                UserName     = user.UserName,
                                PasswordHash = userPasswordChange.OldPassword
                            }
                        }
                    };

                    UserResponse userResponse = RestPostUserRequest("UpdatePassword", userRequest);
                    if (userResponse.Result == Result.OK)
                    {
                        userResponse.ResultMessages.Add(Resources.Global.MessagePasswordChanged);
                    }

                    ViewBag.Result             = userResponse.Result;
                    ViewBag.ResultMessages     = userResponse.ResultMessages;
                    ViewBag.ReturnToAction     = "Index";
                    ViewBag.ReturnToController = "Home";
                    ViewBag.Title = Resources.Global.PasswordChange;

                    return(View(NippsSiteHelper.ResultMessageView));
                }
                catch (Exception ex)
                {
                    Logger.Error(ex);
                    if (CommonHelper.CheckNoDataFoundException(ex))
                    {
                        return(RedirectToAction("UserLogOff", "UserManagement"));
                    }
                    if (CommonHelper.CheckInvalidPasswordException(ex))
                    {
                        ModelState.AddModelError("", Resources.Global.MessageInvalidPasswordEntered);
                    }
                    else
                    {
                        ModelState.AddModelError("", Resources.Global.MessageUnknownError);
                    }
                }
            }
            else
            {
                ModelState.AddModelError("", Resources.Global.MessageInvalidValues);
            }

            return(View("UserPasswordChangeConfirm"));
        }
Beispiel #4
0
        public void AddByUser(User user)
        {
            var instance = new UserPasswordChange
            {
                Date        = DateTime.Now,
                UserId      = user.Id,
                Status      = false,
                OldPassword = user.Password
            };

            Add(instance, user.Email);
        }
Beispiel #5
0
        public void Add(UserPasswordChange instance, string email)
        {
            _changeDal.Add(instance);
            List <EmailAddress> toAddress = new List <EmailAddress>()
            {
                new EmailAddress {
                    Address = email
                },
            };

            _emailProvider.Subject   = "YKK Portal Şifre Değişikliği Hk";
            _emailProvider.toAddress = toAddress;
            _emailProvider.Content   = GetContent(instance);
            _emailProvider.SendMail();
        }
Beispiel #6
0
        public async Task <IHttpActionResult> ChangePassword(UserPasswordChange change)
        {
            try
            {
                await _usersController.ChangePassword(change.Username, change.CurrentPassword, change.NewPassword, change.ForceReset);

                return(Ok());
            }
            catch (NotFoundException)
            {
                return(NotFound());
            }
            catch (InvalidOperationException ex)
            {
                return(BadRequest(ex.Message));
            }
            catch (Exception ex)
            {
                _log.Error(ex, "An unexpected exception occurred while trying to change a user's password.");
                throw;
            }
        }
Beispiel #7
0
 public void Update(UserPasswordChange instance)
 {
     _changeDal.Update(instance);
 }