public ActionResult Edit(UserViewModel user)
        {
            var changedUser = userManager.FindById(user.Id);

            if (!string.IsNullOrEmpty(user.Password))
            {
                var changePasswordOperationSuccess = userManager.UpdatePassword(changedUser.Id, user.Password);
                if (!changePasswordOperationSuccess)
                {
                    ModelState.AddModelError("password", "Misslyckades med att uppdatera lösenordet för" + user.Name);
                    return(Edit(user.Id));
                }
            }

            changedUser.ReceiveEmail = user.ReceiveEmail;
            changedUser.ReceiveSms   = user.ReceiveSms;
            changedUser.Phone        = user.Phone;
            changedUser.IsLockedOut  = user.IsLockedOut;
            userManager.Update(changedUser);

            return(RedirectToAction("List", new { clientId = changedUser.ClientId }));
        }
Exemplo n.º 2
0
        public ActionResult UpdateSettings(bool receiveEmail, bool receiveSms, string phone)
        {
            var userId = User.Identity.GetUserId();
            var user   = userManager.FindById(userId);

            var updateMessage = new SettingUpdateMessage();

            if (user != null)
            {
                user.ReceiveEmail = receiveEmail;
                user.ReceiveSms   = receiveSms;
                user.Phone        = phone;
                userManager.Update(user);
                updateMessage.Type        = "Success";
                updateMessage.MessageText = "Uppdaterade inställningar";
                return(Json(updateMessage, JsonRequestBehavior.AllowGet));
            }

            updateMessage.Type        = "Error";
            updateMessage.MessageText = "Oväntat fel";
            return(Json(updateMessage, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Edit(AccountManagerViewModel admin)
        {
            if (!ModelState.IsValid)
            {
                return(View(admin));
            }
            var changedAccountManager = userManager.FindById(admin.Id);

            changedAccountManager.Phone    = admin.Phone;
            changedAccountManager.Email    = admin.Email;
            changedAccountManager.ImageUrl = admin.ImageUrl;
            changedAccountManager.Name     = admin.Name;

            if (!string.IsNullOrEmpty(admin.Password))
            {
                if (!string.IsNullOrEmpty(changedAccountManager.Id))
                {
                    try
                    {
                        var changePasswordIdentityResult = userManager.UpdatePassword(changedAccountManager.Id, admin.Password);
                        if (!changePasswordIdentityResult)
                        {
                            ModelState.AddModelError("password",
                                                     "Misslyckades med att uppdatera lösenordet för" + admin.Name);
                            return(View(admin));
                        }

                        /*var addPasswordIdentityResult= userManager.AddPassword(changedAccountManager.Id, admin.Password);
                         * if (!addPasswordIdentityResult.Succeeded)
                         * {
                         *  ModelState.AddModelError("password",
                         *  "Misslyckades med att uppdatera lösenordet för" + admin.Name);
                         *  return View(admin);
                         * }*/
                    }
                    catch (MembershipPasswordException e)
                    {
                        ModelState.AddModelError("password",
                                                 "Misslyckades med att uppdatera lösenordet för" + admin.Name);
                        return(View(admin));
                    }
                }
                else
                {
                    try
                    {
                        changedAccountManager.UserName = admin.Email;
                        var newUserCreateSuccess = userManager.Create(changedAccountManager, admin.Password);
                        if (newUserCreateSuccess)
                        {
                            userManager.AddToRole(changedAccountManager.Id, "sales");
                            return(RedirectToAction("Index"));
                        }
                        else
                        {
                            ModelState.AddModelError("password",
                                                     "Misslyckades med att uppdatera lösenordet för" + admin.Name);
                            return(View(admin));
                        }
                    }
                    catch (MembershipPasswordException e)
                    {
                        ModelState.AddModelError("password",
                                                 "Misslyckades med att uppdatera lösenordet för" + admin.Name);
                        return(View(admin));
                    }
                }
            }


            changedAccountManager.Name = admin.Name;
            userManager.Update(changedAccountManager);

            /*adminRepository.SetState(changedAccountManager, EntityState.Modified);
             * adminRepository.SaveChanges();*/
            return(RedirectToAction("Index"));
        }