Example #1
0
        // GET: Administration/ApplicationUsers/Edit/5
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            var applicationUser = this.Data.Users.Find(id);

            if (applicationUser == null)
            {
                return(this.HttpNotFound());
            }

            var model = new ApplicationUserEditModel
            {
                Id            = applicationUser.Id,
                Email         = applicationUser.Email,
                UserName      = applicationUser.UserName,
                PasswordHash  = applicationUser.PasswordHash,
                SecurityStamp = applicationUser.SecurityStamp,
                CreatedOn     = applicationUser.CreatedOn
            };

            return(this.View(model));
        }
        public async Task <IActionResult> Edit(string id, ApplicationUserEditModel input)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.FindByIdAsync(id);

                //TryUpdateModelAsync(user);
                user.PhoneNumber = input.User.PhoneNumber;

                await _userManager.UpdateAsync(user);

                foreach (var role in input.Roles)
                {
                    if (role.IsAssigned)
                    {
                        await _userManager.AddToRoleAsync(user, role.Name);
                    }
                    else
                    {
                        await _userManager.RemoveFromRoleAsync(user, role.Name);
                    }
                }

                return(RedirectToAction("Index"));
            }
            return(View());
        }
        // GET: User/Edit/5
        public async Task <IActionResult> Edit(string id)
        {
            var user = await _userManager.FindByIdAsync(id);

            var roles = _roleManager.Roles;

            var model = new ApplicationUserEditModel
            {
                User = new ApplicationUserViewModel
                {
                    Id = user.Id,
                    ConcurrencyStamp = user.ConcurrencyStamp,
                    Name             = user.UserName,
                    Email            = user.Email,
                    PhoneNumber      = user.PhoneNumber,
                }
            };

            var userRoleNames = await _userManager.GetRolesAsync(user);

            model.Roles = roles.Select(p => new AssignedRoleViewModel
            {
                Name       = p.Name,
                IsAssigned = userRoleNames.Any(x => x == p.Name)
            }).ToArray();

            return(View(model));
        }
        public void EditApplicationUser(ApplicationUserEditModel applicationUserEditModel)
        {
            ApplicationUser user = GetUserById(applicationUserEditModel.Id);

            user.FirstName = applicationUserEditModel.FirstName.Encrypt();

            user.LastName = applicationUserEditModel.LastName.Encrypt();

            user.BirthDate = applicationUserEditModel.BirthDate;

            if (DetermineUserRole(applicationUserEditModel.Id).ToUpper() == "MEDIC")
            {
                if (applicationUserEditModel.Title != null)
                {
                    user.Title = applicationUserEditModel.Title.Encrypt();
                }
                if (applicationUserEditModel.CabinetAddress != null)
                {
                    user.CabinetAddress = applicationUserEditModel.CabinetAddress.Encrypt();
                }
            }
            user.PhoneNumber = applicationUserEditModel.PhoneNumber.Encrypt();


            // user.Email = applicationUserEditModel.Email;
            // user.UserName = applicationUserEditModel.Email;
            // user.NormalizedUserName = applicationUserEditModel.Email.ToUpper();
            // user.NormalizedEmail = applicationUserEditModel.Email.ToUpper();

            _context.Update(user);

            _context.SaveChanges();
        }
Example #5
0
        public IActionResult Edit(string id, ApplicationUserEditModel applicationUserEditModel)
        {
            if (id != applicationUserEditModel.Id)
            {
                return(RedirectToAction("Not_Found", "Home"));
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _service.EditApplicationUser(applicationUserEditModel);
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ApplicationUserExists(applicationUserEditModel.Id.ToString()))
                    {
                        return(RedirectToAction("Not_Found", "Home"));
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Users)));
            }
            return(View(applicationUserEditModel));
        }
Example #6
0
        public IActionResult Edit(string id)
        {
            if (id == null)
            {
                return(RedirectToAction("Not_Found", "Home"));
            }

            ApplicationUser applicationUser = _service.GetUserById(id.ToString());

            if (applicationUser == null)
            {
                return(RedirectToAction("Not_Found", "Home"));
            }
            ApplicationUserEditModel applicationUserEditModel = new ApplicationUserEditModel(
                applicationUser.Id,
                applicationUser.FirstName,
                applicationUser.LastName,
                applicationUser.BirthDate,
                applicationUser.Title,
                applicationUser.CabinetAddress,
                applicationUser.PhoneNumber
                );

            return(View(applicationUserEditModel));
        }
Example #7
0
        public ActionResult Edit(ApplicationUserEditModel applicationUser)
        {
            if (this.ModelState.IsValid)
            {
                var user          = this.Data.Users.Find(applicationUser.Id);
                var checkEmail    = this.Data.Users.All().Any(e => e.Email == applicationUser.Email);
                var checkUsername = this.Data.Users.All().Any(u => u.UserName == applicationUser.UserName);

                if (checkEmail && user.Email != applicationUser.Email)
                {
                    return(this.Content($"Email {applicationUser.Email} is already taken."));
                }

                if (checkUsername && user.UserName != applicationUser.UserName)
                {
                    return(this.Content($"Username {applicationUser.UserName} is already taken."));
                }

                user.Id        = applicationUser.Id;
                user.Email     = applicationUser.Email;
                user.UserName  = applicationUser.UserName;
                user.CreatedOn = applicationUser.CreatedOn;

                if (user.PasswordHash != applicationUser.PasswordHash)
                {
                    var userManager       = new UserManager <IdentityUser>(new UserStore <IdentityUser>());
                    var newHashedPassword = userManager.PasswordHasher.HashPassword(applicationUser.PasswordHash);
                    user.PasswordHash  = newHashedPassword;
                    user.SecurityStamp = Guid.NewGuid().ToString();
                }

                this.Data.Users.Update(user);
                this.Data.SaveChanges();

                return(this.RedirectToAction("Index"));
            }

            return(this.View(applicationUser));
        }
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }

            ApplicationUser applicationUser = this.Data.Users.Find(id);

            if (applicationUser == null)
            {
                return this.HttpNotFound();
            }

            ApplicationUserEditModel model = new ApplicationUserEditModel
            {
                Id = applicationUser.Id,
                Email = applicationUser.Email,
                UserName = applicationUser.UserName,
                PasswordHash = applicationUser.PasswordHash,
                SecurityStamp = applicationUser.SecurityStamp,
                CreatedOn = applicationUser.CreatedOn
            };

            return this.View(model);
        }
        public ActionResult Edit(ApplicationUserEditModel applicationUser)
        {
            if (this.ModelState.IsValid)
            {
                var user = this.Data.Users.Find(applicationUser.Id);

                var checkEmail = this.Data.Users
                    .All()
                    .Any(e => e.Email == applicationUser.Email);

                var checkUsername = this.Data.Users
                    .All()
                    .Any(u => u.UserName == applicationUser.UserName);

                if (checkEmail && user.Email != applicationUser.Email)
                {
                    return this.Content($"Email {applicationUser.Email} is already taken.");
                }

                if (checkUsername && user.UserName != applicationUser.UserName)
                {
                    return this.Content($"Username {applicationUser.UserName} is already taken.");
                }

                user.Id = applicationUser.Id;
                user.Email = applicationUser.Email;
                user.UserName = applicationUser.UserName;
                user.CreatedOn = applicationUser.CreatedOn;

                if (user.PasswordHash != applicationUser.PasswordHash)
                {
                    var userManager = new UserManager<IdentityUser>(new UserStore<IdentityUser>());
                    var newHashedPassword = userManager.PasswordHasher.HashPassword(applicationUser.PasswordHash);

                    user.PasswordHash = newHashedPassword;
                    user.SecurityStamp = Guid.NewGuid().ToString();
                }

                this.Data.Users.Update(user);
                this.Data.SaveChanges();

                return this.RedirectToAction("Index");
            }

            return this.View(applicationUser);
        }