public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { TempData[MessageKey] = "Le formulaire n'est pas valide."; return(Page()); } var employees = _employeeRepository.Get().Result; var employee = employees.Where(emp => emp.Username == userNAME).FirstOrDefault(); if (Tools.CheckPassword(employee.PasswordHash, oldPassword) == false) { TempData[MessageKey] = "Votre ancien mot de passe n'est pas correct."; return(Page()); } if (newPassword != confirmPassword) { TempData[MessageKey] = "Les 2 champs nouveaux mots de passe ne correspondent pas."; return(Page()); } newPassword = Tools.Hash(newPassword); Dbo.ClientUsers newUser = new Dbo.ClientUsers { Id = employee.Id, Username = employee.Username, PasswordHash = newPassword, RoleId = employee.RoleId }; var result = _employeeRepository.Update(newUser); ClientLogs log = new ClientLogs { Id = 0, Date = DateTime.Now, Class = this.GetType().Name, Type = "employee.Username", Logtype = LoggerType.INFO.GetFriendlyName(), Message = "Employee: " + employee.Username + " bas been update to the base", }; await _logRepository.Insert(log); TempData[MessageKey] = "Votre profil a bien été éditer !"; ModelState.Clear(); OnGet(); return(Page()); }
public async Task <IActionResult> OnPost() { if (!ModelState.IsValid) { TempData[MessageKey] = "Le formulaire n'est pas valide."; return(Page()); } if (newName != null && newPassword == confirmPassword) { var roles = _employeeRepository.GetTypeRoles(); var nbRoleAdmin = roles.Where(item => item.Name.ToLower().Contains("admin")).FirstOrDefault(); var nbRoleEmployee = roles.Where(item => item.Name.ToLower().Contains("employee")).FirstOrDefault(); //default value long role = 1; if (nbRoleEmployee != null) { role = nbRoleEmployee.Id; } if (newRole && nbRoleAdmin != null) { role = nbRoleAdmin.Id; } newPassword = Tools.Hash(newPassword); Dbo.ClientUsers newUser = new Dbo.ClientUsers { Username = newName, PasswordHash = newPassword, RoleId = role }; var test = await _employeeRepository.Insert(newUser); ClientLogs log = new ClientLogs { Id = 0, Date = DateTime.Now, Class = this.GetType().Name, Type = "Add Employee", Logtype = LoggerType.INFO.GetFriendlyName(), Message = "Employee: " + newName + " bas been added to the base", }; await _logRepository.Insert(log); return(RedirectToPage("./AdminEmployees")); } return(Page()); }