public async Task <IActionResult> UpdatePassword(ChangePasswordRequest request) { //user identifier var userId = PlatformUtils.GetIdentityUserId(User); var user = AuthorizationLayer.GetUserById(userId); //Tento il signin ed ottengo l'utente se è completato var result = await AuthorizationLayer.SignIn(user.Username, request.OldPassword); //Se non ho utente, unauthorized if (result == null) { return(Unauthorized()); } // recupero il profilo var validations = AuthorizationLayer.UpdateUserPassword(result, request.Password); //controllo risultato if (validations.Count > 0) { return(BadRequest(validations)); } //Se è tutto ok, serializzo e restituisco return(Ok(new StringResponse { Value = request.Password })); }
public async Task <IActionResult> SignIn(SignInRequest request) { //Tento il signin ed ottengo l'utente se è completato var result = await AuthorizationLayer.SignIn(request.Username, request.Password); //Se non ho utente, unauthorized if (result == null) { return(Unauthorized()); } //Se è tutto ok, serializzo il contratto return(Ok( new SignInResponse { Shooter = ContractUtils.GenerateContract(result), Permissions = ContractUtils.GenerateContract(await AuthorizationLayer.GetUserPermissionById(result.Id)) })); }