reportify_mncl/app/Http/Requests/TwoFactor/TwoFactorRequest.php
2024-03-16 20:37:32 +01:00

49 lines
1020 B
PHP

<?php
namespace Vanguard\Http\Requests\TwoFactor;
use Vanguard\Http\Requests\Request;
use Vanguard\Repositories\User\UserRepository;
abstract class TwoFactorRequest extends Request
{
/**
* Authorize the request.
*
* @return bool
*/
public function authorize()
{
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;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [];
}
/**
* Get the user for which we should enable the 2FA.
*
* @return mixed
*/
public function theUser()
{
if ($userId = $this->get('user')) {
return app(UserRepository::class)->find($userId);
}
return $this->user();
}
}