Example #1
0
        public IActionResult Edit(int id, UsersEditViewModel vm, string returnUrl)
        {
            var result = _usersRepository.Edit(id, vm);

            TempData.AddResult(result);
            return(Redirect(returnUrl));
        }
        public ActionResult Edit(UsersEditViewModel editModel)
        {
            if (ModelState.IsValid)
            {
                var result = _userManager.FindByNameAsync(editModel.Username).Result;
                if (result != null && result.Id != editModel.Id)
                {
                    return(RedirectToAction("Error", "Home", new { errorMessage = "Username already exists" }));
                }

                ApplicationUser user = _userManager.FindByIdAsync(editModel.Id).Result;
                user.UserName    = editModel.Username;
                user.Email       = editModel.Email;
                user.FirstName   = editModel.FirstName;
                user.LastName    = editModel.LastName;
                user.UCN         = editModel.UCN;
                user.Address     = editModel.Address;
                user.PhoneNumber = editModel.PhoneNumber;

                try
                {
                    _userManager.UpdateAsync(user).Wait();
                    _context.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                }

                return(RedirectToAction(nameof(List)));
            }

            return(View(editModel));
        }
Example #3
0
        public async Task <ActionResult> Edit(string id)
        {
            ApplicationUser user = await UserManager.FindByIdAsync(id);

            var roles = ApplicationDbContext.Create().Roles.Select(x => x.Name.ToString()).ToList();

            roles.Add("Disabled");
            UsersEditViewModel model = new UsersEditViewModel
            {
                Id                   = user.Id,
                UserName             = user.UserName,
                Email                = user.Email,
                EmailConfirmed       = user.EmailConfirmed,
                FullName             = user.FullName,
                Address              = user.Address,
                PostalCode           = user.PostalCode,
                Country              = user.Country,
                PhoneNumber          = user.PhoneNumber,
                PhoneNumberConfirmed = user.PhoneNumberConfirmed,
                TwoFactorEnabled     = user.TwoFactorEnabled,
                AccesFailedCount     = user.AccessFailedCount,
                LockedOutEnabled     = user.LockoutEnabled,
                LockedOutEndDateUtc  = user.LockoutEndDateUtc ?? DateTime.Now.AddDays(-1),
                Roles                = roles,
                CurrentRole          = GetHighestRole(UserManager.GetRoles(user.Id).ToArray())
            };

            return(View(model));
        }
Example #4
0
        // GET: ApplicationUsers/Edit/5
        public async Task <IActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            ApplicationUser user = await _userManager.FindByIdAsync(id);

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

            UsersEditViewModel model = new UsersEditViewModel
            {
                Email          = user.Email,
                FirstName      = user.FirstName,
                LastName       = user.LastName,
                OrganizationId = user.OrganizationId,
                RoleId         = _roleManager.Roles.Single(r => r.Name == _userManager.GetRolesAsync(user).Result.Single()).Id
            };

            ViewData["RoleId"] = new SelectList(_roleManager.Roles
                                                //.Where(x => x.Name != "Administrator")
                                                .Select(x => new
            {
                x.Id,
                Name = x.Name + " - " + x.Description
            }), "Id", "Name", model.RoleId);

            ViewData["OrganizationId"] = new SelectList(_context.Organizations, "OrganizationId", "OrganizationName");

            return(View(model));
        }
Example #5
0
        public async Task <IActionResult> Edit(UsersEditViewModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(input));
            }

            var user = await this.userManager.FindByIdAsync(input.Id);

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

            bool isUser = await this.userManager.IsInRoleAsync(user, GlobalConstants.UserRoleName);

            if (!isUser)
            {
                this.Forbid();
            }

            await this.usersService.EditAsync(input);

            return(this.RedirectToAction("List"));
        }
        // GET: Users/Edit/5
        public IActionResult Edit(int?id)
        {
            if (GlobalVar.LoggedOnUserRights != GlobalVar.UserRights.Admininstrator)
            {
                UsersLogInViewModel model1 = new UsersLogInViewModel();
                model1.Message = "You dont meet the required permission to do this. Please, log in into account with admin permissions";
                return(View("LogIn", model1));
            }

            if (id == null || !UserExists((int)id))
            {
                return(NotFound());
            }

            User user = _context.Users.Find(id);

            UsersEditViewModel model = new UsersEditViewModel
            {
                Id              = user.Id,
                Username        = user.Username,
                Password        = user.Password,
                FirstName       = user.FirstName,
                MiddleName      = user.MiddleName,
                LastName        = user.LastName,
                EGN             = user.EGN,
                Email           = user.Email,
                TelephoneNumber = user.TelephoneNumber,
                IsActive        = user.IsActive,
                FiredOn         = user.DateOfBeingFired
            };

            return(View(model));
        }
Example #7
0
 public IActionResult Edit(UsersEditViewModel model)
 {
     if (ModelState.IsValid)
     {
         var user = _db.UsersGenericRepository.Where(u => u.Id == model.Id).FirstOrDefault();
         user.IsActive = model.IsActive;
         user.FullName = model.FullName;
         user.UserName = model.Username;
         if (!string.IsNullOrEmpty(model.Password))
         {
             user.PasswordHash = PasswordHash.HashWithMD5(model.Password);
         }
         user.RoleId         = model.RoleId;
         user.Email          = model.Email;
         user.ActiveCode     = model.ActiveCode;
         user.LastModifyTime = DateTime.Now;
         _db.UsersGenericRepository.Update(user);
         _db.Save();
         return(Redirect("/Admin/Users/Index"));
     }
     else
     {
         ViewBag.Roles = _db.RolesGenericRepository.Where().ToList();
         return(View(model));
     }
 }
        public ActionResult Edit(UsersEditViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            UserRepository repository = new UserRepository();

            User user = repository.GetByID(model.ID);

            user.ID        = model.ID;
            user.ImgURL    = model.ImgURL;
            user.Email     = model.Email;
            user.Username  = model.Username;
            user.Password  = model.Password;
            user.FirstName = model.FirstName;
            user.LastName  = model.LastName;
            user.IsAdmin   = model.IsAdmin;
            //user.IsEmailConfirmed = model.IsEmailConfirmed;
            //user.ValidationCode = model.ValidationCode;

            repository.Save(user);

            return(RedirectToAction("Index"));
        }
Example #9
0
        //GET: Users/Edit
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            User user = await _context.Users.FindAsync(id);

            if (user == null)
            {
                return(NotFound());
            }
            UsersEditViewModel model = new UsersEditViewModel
            {
                UserName    = user.UserName,
                Password    = user.Password,
                Email       = user.Email,
                FirstName   = user.FirstName,
                LastName    = user.LastName,
                EGN         = user.EGN,
                Address     = user.Address,
                PhoneNumber = user.PhoneNumber,
                Role        = user.Role
            };

            return(View(model));
        }
        public async Task <IActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            User user = await _context.Users.FindAsync(id);

            if (user == null)
            {
                return(NotFound());
            }
            UsersEditViewModel usersEditViewModel = new UsersEditViewModel
            {
                Id              = user.Id,
                Username        = user.UserName,
                FirstName       = user.FirstName,
                SecondName      = user.SecondName,
                LastName        = user.LastName,
                UCN             = user.UCN,
                PhoneNumber     = user.PhoneNumber,
                Email           = user.Email,
                AppointmentDate = user.AppointmentDate,
                IsActive        = user.IsActive,
                DateOfDismissal = user.DateOfDismissal
            };

            return(View(usersEditViewModel));
        }
Example #11
0
        public async Task <IActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var user = await _dbContext.Users.FindAsync(id);

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

            var model = new UsersEditViewModel()
            {
                Id            = id,
                Username      = user.UserName,
                FirstName     = user.FirstName,
                LastName      = user.LastName,
                ErrorMessages = new List <string>()
            };

            return(View(model));
        }
Example #12
0
        // GET: Users/Edit/5
        public IActionResult Edit(int?id)
        {
            if (GlobalVar.LoggedOnUserRights != GlobalVar.UserRights.Admininstrator)
            {
                UsersLogInViewModel model1 = new UsersLogInViewModel();
                model1.Message = "Нямате право на това действие. Моля, влезте в акаунта си.";
                return(View("LogIn", model1));
            }
            if (id == null || !UserExists((int)id))
            {
                return(NotFound());
            }
            User user = context.Users.Find(id);
            UsersEditViewModel model = new UsersEditViewModel
            {
                Id              = user.Id,
                Username        = user.Username,
                Password        = user.Password,
                FirstName       = user.FirstName,
                MiddleName      = user.MiddleName,
                LastName        = user.LastName,
                EGN             = user.EGN,
                Email           = user.Email,
                TelephoneNumber = user.TelephoneNumber,
                IsActive        = user.IsActive,
                FiredOn         = user.DateOfBeingFired
            };

            return(View(model));
        }
Example #13
0
        public IActionResult Edit(UserUpdateSubmitModel submitModel)
        {
            _userService.Update(submitModel);

            if (_userService.IsError)
            {
                var model = new UsersEditViewModel
                {
                    Id        = submitModel.Id,
                    UserName  = submitModel.UserName,
                    Email     = submitModel.Email,
                    Firstname = submitModel.Firstname,
                    Lastname  = submitModel.Lastname,
                    IsActive  = submitModel.IsActive,

                    SaveUrl      = Url.RouteUrl("adminUsersEdit", new { id = submitModel.Id }),
                    UsersListUrl = Url.RouteUrl("adminUsers")
                };
                return(View(model));
            }
            else
            {
                return(RedirectToRoute("adminUsersEdit", new { id = submitModel.Id }));
            }
        }
Example #14
0
        public IActionResult Edit(int?id)
        {
            var user = _userService.GetById(id);

            if (user == null)
            {
                return(RedirectToRoute("adminUsers"));
            }
            else
            {
                var model = new UsersEditViewModel
                {
                    Id        = user.Id,
                    Email     = user.Email,
                    Firstname = user.Firstname,
                    Lastname  = user.Lastname,
                    UserName  = user.UserName,
                    IsActive  = user.IsActive,

                    SaveUrl      = Url.RouteUrl("adminUsersEdit"),
                    UsersListUrl = Url.RouteUrl("adminUsers")
                };
                return(View(model));
            }
        }
Example #15
0
        public IActionResult Edit(UsersProfileViewModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(model));
            }

            var fileUpload  = new FileUpload(env);
            var imageFile   = fileUpload.UploadFile(model.ProfileImage);
            var editedModel = new UsersEditViewModel
            {
                Id           = model.Id,
                UserName     = model.UserName,
                FirstName    = model.FirstName,
                MiddleName   = model.MiddleName,
                LastName     = model.LastName,
                Email        = model.Email,
                Address      = model.Address,
                PhoneNumber  = model.PhoneNumber,
                ProfileImage = imageFile
            };
            var updateModel = this.mapper.Map <UsersUpdateDto>(editedModel);

            this.usersService.UpdateUser(updateModel);
            this.usersService.Save();
            return(RedirectToAction(nameof(Profile), new { id = this.User.FindFirstValue(ClaimTypes.NameIdentifier) }));
        }
Example #16
0
        public ActionResult Edit(UsersEditViewModel model)
        {
            // Add Data Management evaluation section changes here.



            // End changes.

            // Solution:
            EntityModels.AspNetUser user = db.AspNetUsers.FirstOrDefault(x => x.Id == model.Id);

            if (model.NewPassword != string.Empty)
            {
                user.PasswordHash = AuthController.EncodePasswordMd5(model.NewPassword);
            }

            if (model.UserRole != user.AspNetRoles.Id)
            {
                user.AspNetRoles = db.AspNetRoles.FirstOrDefault(x => x.Id == model.UserRole);
            }

            db.SaveChanges();
            // End solution.

            return(RedirectToAction("Edit", new { id = user.Id }));
        }
Example #17
0
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            User user = await _context.Users.
                        Include(u => u.Role).
                        Include(u => u.Team).
                        FirstAsync(u => u.Id == id);

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

            ViewData["EditUser"] = user.UserName;
            // ViewData["BeforeRole"] = user.Role.Name;
            ViewData["BeforeTeam"] = user.Team;

            UsersEditViewModel model = new UsersEditViewModel
            {
                Id        = user.Id,
                UserName  = user.UserName,
                FirstName = user.FirstName,
                LastName  = user.LastName,
                Email     = user.Email,
                //Password = user.Password,
                //Role = user.Role.Name,
                //Team = user.Team.TeamName
            };

            return(View(model));
        }
        public ServiceResult <int> Edit(int id, UsersEditViewModel vm)
        {
            var entity = GetById(id);

            Mapper.Map(vm, entity);
            _context.SaveChanges();
            return(ServiceResult <int> .Okay(data : id, message : "عملیات با موفقیت انجام شد."));
        }
Example #19
0
        public async Task <ActionResult> Edit(UsersEditViewModel model)
        {
            await UserManager.RemoveFromRoleAsync(model.Id, "Administrator");

            await UserManager.RemoveFromRoleAsync(model.Id, "Moderator");

            await UserManager.RemoveFromRoleAsync(model.Id, "User");

            ApplicationUser user = await UserManager.FindByIdAsync(model.Id);

            switch (model.Roles[0].ToString())
            {
            case "Administrator":
                if (HttpContext.GetOwinContext().Authentication.User.IsInRole("Administrator"))
                {
                    await UserManager.AddToRoleAsync(model.Id, "User");

                    await UserManager.AddToRoleAsync(model.Id, "Moderator");

                    await UserManager.AddToRoleAsync(model.Id, "Administrator");

                    user.AccountConfirmed = true;
                    await UserManager.UpdateAsync(user);
                }
                else
                {
                    ModelState.AddModelError("", "Warning: you are unauthorized.");
                }
                break;

            case "Moderator":
                await UserManager.AddToRoleAsync(model.Id, "User");

                await UserManager.AddToRoleAsync(model.Id, "Moderator");

                user.AccountConfirmed = true;
                await UserManager.UpdateAsync(user);

                break;

            case "User":
                await UserManager.AddToRolesAsync(model.Id, "User");

                user.AccountConfirmed = true;
                await UserManager.UpdateAsync(user);

                break;

            default:
                user.AccountConfirmed = false;
                await UserManager.UpdateAsync(user);

                break;
            }
            return(RedirectToAction("List"));
        }
        public ActionResult Edit(UsersEditViewModel model)
        {
            // Add Data Management evaluation section changes here.



            // End changes.

            // Solution:


            if (model.Id != 0)
            {
                EntityModels.AspNetUser user = db.AspNetUsers.FirstOrDefault(x => x.Id == model.Id);
                // Modifying password and roles.
                if (model.NewPassword != string.Empty)
                {
                    user.PasswordHash = AuthController.EncodePasswordMd5(model.NewPassword);
                }

                if (model.UserRole != user.AspNetRoles.Id)
                {
                    user.AspNetRoles = db.AspNetRoles.FirstOrDefault(x => x.Id == model.UserRole);
                    //user.AspNetRoles.Name = model.UserRole.ToString();
                }

                db.SaveChanges();
                return(RedirectToAction("Edit", new { id = user.Id }));
            }
            else
            {
                EntityModels.AspNetUser user = new EntityModels.AspNetUser();
                user = db.AspNetUsers.FirstOrDefault(x => x.Email == User.Identity.Name);

                // Modifying password and roles.
                if (model.NewPassword != string.Empty)
                {
                    user.PasswordHash = AuthController.EncodePasswordMd5(model.NewPassword);
                }

                if (model.UserRole != user.AspNetRoles.Id)
                {
                    user.AspNetRoles = db.AspNetRoles.FirstOrDefault(x => x.Id == model.UserRole);
                    //user.AspNetRoles.Name = model.UserRole.ToString();
                }

                db.SaveChanges();
                return(RedirectToAction("Edit", new { id = user.Id }));
            }


            // End solution.
        }
        public IActionResult Edit(UsersEditViewModel editModel)
        {
            if (GlobalVar.LoggedOnUserRights != GlobalVar.UserRights.Admininstrator)
            {
                UsersLogInViewModel model1 = new UsersLogInViewModel();
                model1.Message = "You dont meet the required permission to do this. Please, log in into account with admin permissions";
                return(View("LogIn", model1));
            }

            if (ModelState.IsValid)
            {
                if (!UserExists(editModel.Id))
                {
                    return(NotFound());
                }

                try
                {
                    Validate(new Validation_User()
                    {
                        Username = editModel.Username,
                        UserId   = editModel.Id
                    });
                }
                catch (InvalidOperationException e)
                {
                    editModel.Message = e.Message;
                    return(View(editModel));
                }

                User user = _context.Users.Find(editModel.Id);

                user.Username        = editModel.Username;
                user.FirstName       = editModel.FirstName;
                user.MiddleName      = editModel.MiddleName;
                user.LastName        = editModel.LastName;
                user.EGN             = editModel.EGN;
                user.Email           = editModel.Email;
                user.TelephoneNumber = editModel.TelephoneNumber;

                if (!String.IsNullOrEmpty(editModel.Password))
                {
                    user.Password = editModel.Password;
                }

                _context.Update(user);
                _context.SaveChanges();

                return(RedirectToAction(nameof(Index)));
            }

            return(View(editModel));
        }
Example #22
0
        private UsersEditViewModel CheckEditViewModel(UsersEditViewModel model)
        {
            model.ErrorMessages = new List <string>();

            MyUser DbUserWithMatchingUsername = _dbContext.Users.Where(x => x.NormalizedUserName == model.Username.ToUpper()).FirstOrDefault();

            if (DbUserWithMatchingUsername != null && DbUserWithMatchingUsername.Id != model.Id)
            {
                model.ErrorMessages.Add("This username it taken!");
            }

            return(model);
        }
Example #23
0
        public async Task <IActionResult> Edit(UsersEditViewModel model)
        {
            if (GetCookie("LoggedIn") != "true")
            {
                return(Redirect("/"));
            }
            else
            {
                if (ModelState.IsValid)
                {
                    User user = await _context.Users.FindAsync(model.Id);

                    user.Username = model.Username;

                    if (model.Password != null)
                    {
                        user.PasswordHash = GetPasswordHash(model.Password);
                    }
                    user.FirstName       = model.FirstName;
                    user.MiddleName      = model.MiddleName;
                    user.LastName        = model.LastName;
                    user.PersonalID      = model.PersonalID;
                    user.PhoneNumber     = model.PhoneNumber;
                    user.Email           = model.Email;
                    user.DateAppointment = model.DateAppointment;
                    user.Active          = model.Active;
                    user.DateDismissal   = model.DateDismissal;

                    try
                    {
                        _context.Update(user);
                        await _context.SaveChangesAsync();
                    }
                    catch (DbUpdateConcurrencyException)
                    {
                        if (!UserExists(user.Id))
                        {
                            return(NotFound());
                        }
                        else
                        {
                            throw;
                        }
                    }

                    return(RedirectToAction(nameof(Index)));
                }

                return(View(model));
            }
        }
Example #24
0
        public async Task EditUser_WithInvalidData_ShouldWorkCorrectly(string userId)
        {
            await this.SeedData(this.context);

            var input = new UsersEditViewModel()
            {
                Id        = userId,
                FirstName = "John",
                LastName  = "Matev",
            };
            var result = await this.usersService.EditAsync(input);

            Assert.False(result);
        }
Example #25
0
        public async Task EditUser_ShouldWorkCorrectly()
        {
            await this.SeedData(this.context);

            var user  = this.context.Users.First();
            var input = new UsersEditViewModel()
            {
                Id        = user.Id,
                FirstName = "John",
                LastName  = "Matev",
            };
            var result = await this.usersService.EditAsync(input);

            Assert.True(result);
        }
Example #26
0
        public ActionResult Create(UsersEditViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }
            User user = new User();

            user.Name     = model.Name;
            user.Email    = model.Email;
            user.Phone    = model.Phone;
            user.Password = model.Password;
            UsersRepository repository = new UsersRepository();

            repository.Insert(user);
            return(RedirectToAction("Index"));
        }
Example #27
0
        public ActionResult Edit(int Id)
        {
            UsersRepository repo    = new UsersRepository();
            User            dbusers = new User();

            dbusers = repo.Get(Id);
            UsersEditViewModel model = new UsersEditViewModel();

            model.Name     = dbusers.Name;
            model.Email    = dbusers.Email;
            model.Phone    = dbusers.Phone;
            model.Password = dbusers.Password;
            model.Id       = Id;
            UsersRepository rep = new UsersRepository();

            return(View(model));
        }
Example #28
0
 public IActionResult Edit(UsersEditViewModel editModel)
 {
     if (GlobalVar.LoggedOnUserRights != GlobalVar.UserRights.Admininstrator)
     {
         UsersLogInViewModel model1 = new UsersLogInViewModel();
         model1.Message = "Нямате право на това действие. Моля, влезте в акаунта си.";
         return(View("LogIn", model1));
     }
     if (ModelState.IsValid)
     {
         if (!UserExists(editModel.Id))
         {
             return(NotFound());
         }
         try
         {
             Validate(new Validation_User()
             {
                 Username = editModel.Username,
                 UserId   = editModel.Id
             });
         }
         catch (InvalidOperationException e)
         {
             editModel.Message = e.Message;
             return(View(editModel));
         }
         User user = context.Users.Find(editModel.Id);
         user.Username        = editModel.Username;
         user.FirstName       = editModel.FirstName;
         user.MiddleName      = editModel.MiddleName;
         user.LastName        = editModel.LastName;
         user.EGN             = editModel.EGN;
         user.Email           = editModel.Email;
         user.TelephoneNumber = editModel.TelephoneNumber;
         if (!String.IsNullOrEmpty(editModel.Password))
         {
             user.Password = editModel.Password;
         }
         context.Update(user);
         context.SaveChanges();
         return(RedirectToAction(nameof(Index)));
     }
     return(View(editModel));
 }
Example #29
0
        public async Task <IActionResult> Edit(UsersEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                User user = await _context.Users.Include(u => u.Role).Include(u => u.Team).FirstAsync(u => u.Id == model.Id);

                user.Id             = model.Id;
                user.UserName       = model.UserName;
                user.FirstName      = model.FirstName;
                user.LastName       = model.LastName;
                user.Email          = model.Email;
                user.EmailConfirmed = true;
                string beforeRole = user.Role.Name;
                user.Role          = _roleManager.Roles.First(x => x.Name == model.Role);
                user.Team          = _context.Teams.FirstOrDefault(x => x.TeamName == model.Team);
                user.SecurityStamp = Guid.NewGuid().ToString();

                //await _signInManager.SignOutAsync();

                var result = await _userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    if (beforeRole != user.Role.Name)
                    {
                        var res3 = await _userManager.RemoveFromRoleAsync(user, beforeRole);

                        //user.Role.UsersInRole.Remove(user);
                        var res2 = await _userManager.AddToRoleAsync(user, model.Role);

                        //user.Role.UsersInRole.Add(user);
                    }

                    return(RedirectToAction("Details", "Users", new { id = user.Id }));
                }
                else
                {
                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError("", error.Description);
                    }
                }
            }
            return(View(model));
        }
        public ActionResult Edit(int?id)
        {
            UserRepository repository = new UserRepository();

            UsersEditViewModel model = new UsersEditViewModel();

            if (id.HasValue)
            {
                User user = repository.GetByID(id.Value);
                model.ID       = user.ID;
                model.Name     = user.Name;
                model.Email    = user.Email;
                model.Password = user.Password;
                model.Phone    = user.Phone;
                model.IsAdmin  = user.IsAdmin;
            }

            return(View(model));
        }