Files
core/app/Policies/WidgetsPolicy.php
T

49 lines
1.0 KiB
PHP

<?php
namespace App\Policies;
use App\Models\User;
use App\Models\Widgets\Widget;
use Illuminate\Auth\Access\HandlesAuthorization;
class WidgetsPolicy extends BasicPolicy
{
use HandlesAuthorization;
protected $entity = 'widgets';
/**
* Determine whether the user can create widgets.
*
* @param \App\Models\User $user
*
* @return mixed
*/
public function create(User $user)
{
return $user->hasAbility('create-widgets');
}
/**
* Determine whether the user can update the widget.
*
* @param \App\Models\User $user
* @param \App\Widget $widget
*
* @return mixed
*/
public function update(User $user, Widget $widget)
{
return $user->id == $widget->user_id || $user->hasAbility('edit-widgets');
}
public function assign(User $user)
{
return $user->hasAbility('assign-widgets');
}
public function unassign(User $user)
{
return $user->hasAbility('unassign-widgets');
}
}