trf_certest/app/Http/Requests/TwoFactor/TwoFactorRequest.php
2025-02-26 08:57:46 +01:00

38 lines
854 B
PHP

<?php
namespace Vanguard\Http\Requests\TwoFactor;
use Vanguard\Http\Requests\Request;
use Vanguard\Repositories\User\UserRepository;
use Vanguard\User;
abstract class TwoFactorRequest extends Request
{
public function authorize(): bool
{
if ($userId = $this->get('user')) {
// Only users with "users.manage" permission can enable 2FA for other users.
return $this->user()->hasPermission('users.manage') || $this->user()->id == $userId;
}
return true;
}
public function rules(): array
{
return [];
}
/**
* Get the user for which we should enable the 2FA.
*/
public function theUser(): User
{
if ($userId = $this->get('user')) {
return app(UserRepository::class)->find($userId);
}
return $this->user();
}
}