public IHttpActionResult PostChangePassword(StudentChangePasswordModel model) { _studentsServices.ChangePassword(model); var stringparameter = _encryption.Encrypt(model.AccountId); _email.Send(model.Email, "Hacer click en el siguiente link para activar su cuenta: " + HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority) + "/api/Students/" + HttpContext.Current.Server.UrlEncode(stringparameter) + "/Active", "VinculaciĆ³n"); return(Ok()); }
public void ChangePassword(StudentChangePasswordModel model) { var student = _studentRepository.GetByAccountNumber(model.AccountId); if (student == null) { throw new NotFoundException("No se encontro el estudiante"); } student.Password = _encryption.Encrypt(model.Password); _studentRepository.Update(student); _studentRepository.Save(); }
public async Task <ResponseModel> ChangeStudentPasswordAsync(Guid id, StudentChangePasswordModel studentChangePasswordModel) { var student = await GetAll().FirstOrDefaultAsync(x => x.Id == id); if (student == null) { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.NotFound, Message = "Student is not exist. Please try again!" }); } else { var result = PasswordUtilities.ValidatePass(student.Password, studentChangePasswordModel.CurrentPassword, student.PasswordSalt); if (result) { if (studentChangePasswordModel.RepeatPassword.Equals(studentChangePasswordModel.NewPassword)) { studentChangePasswordModel.NewPassword.GeneratePassword(out string saltKey, out string hashPass); student.Password = hashPass; student.PasswordSalt = saltKey; await _studentRepository.UpdateAsync(student); student = await GetAll().FirstOrDefaultAsync(x => x.Id == id); return(new ResponseModel { StatusCode = System.Net.HttpStatusCode.OK, Data = new StudentViewModel(student) }); } else { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.NotFound, Message = "RepeatPassword and NewPassword are not the same!" }); } } else { return(new ResponseModel() { StatusCode = System.Net.HttpStatusCode.NotFound, Message = "Current password is not correct!" }); } } }
public async Task <IActionResult> ChangePassword(int groupId, int id, [FromBody] StudentChangePasswordModel model) { if (model.NewPassword != model.ConfirmPassword) { return(BadRequest()); } var student = await _studentService.Get(id); if (student == null || student.GroupId != groupId) { return(NotFound()); } var data = await _studentService.Update(student); return(base.Ok(data)); }
public async Task <IActionResult> ChangePassword(Guid id, [FromBody] StudentChangePasswordModel studentChangePasswordModel) { var responseModel = await _studentService.ChangeStudentPasswordAsync(id, studentChangePasswordModel); return(new CustomActionResult(responseModel)); }