sarga/packages/Webkul/User/src/Bouncer.php

47 lines
1.0 KiB
PHP
Executable File

<?php
namespace Webkul\User;
class Bouncer
{
/**
* Checks if user allowed or not for certain action
*
* @param string $permission
* @return void
*/
public function hasPermission($permission)
{
if (
auth()->guard('admin')->check()
&& auth()->guard('admin')->user()->role->permission_type == 'all'
) {
return true;
} else {
if (
! auth()->guard('admin')->check()
|| ! auth()->guard('admin')->user()->hasPermission($permission)
) {
return false;
}
}
return true;
}
/**
* Checks if user allowed or not for certain action
*
* @param string $permission
* @return void
*/
public static function allow($permission)
{
if (
! auth()->guard('admin')->check()
|| ! auth()->guard('admin')->user()->hasPermission($permission)
) {
abort(401, 'This action is unauthorized');
}
}
}