AspireCloud/app/Actions/Fortify/ResetUserPassword.php
Enrique Chavez 8dca069dec
User Management and API Keys (#84)
* feat: Changes required on existing files to setup Jetstream

* feat: add the Inertia Home and Dashboard

* feat: Add all required files and migrations to setup Jetstream

* feat: Add the Sanctum middleware to the API endpoints

- Added Sanctum to the API endpoints to requiere an API Key
- Added a setting to control if the app should use authenticated API or not (see .env.example)
- Fix redirection on API routes to the login page when a request was unauthenticated

* feat: Users Management and Authication API Keys

- Refactor existing tests to make authenticated request is enable
- Hide the permissions setting on the UI, for now we only have a read-only API
- Add tests to test authenticated and unauthenticated calls
2024-11-01 18:30:03 -06:00

29 lines
693 B
PHP

<?php
namespace App\Actions\Fortify;
use App\Models\User;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;
use Laravel\Fortify\Contracts\ResetsUserPasswords;
class ResetUserPassword implements ResetsUserPasswords
{
use PasswordValidationRules;
/**
* Validate and reset the user's forgotten password.
*
* @param array<string, string> $input
*/
public function reset(User $user, array $input): void
{
Validator::make($input, [
'password' => $this->passwordRules(),
])->validate();
$user->forceFill([
'password' => Hash::make($input['password']),
])->save();
}
}