2017-10-27 18:01:11 -07:00
|
|
|
<?php
|
|
|
|
|
2021-06-10 13:15:52 -07:00
|
|
|
namespace App\Policies;
|
2017-10-27 18:01:11 -07:00
|
|
|
|
|
|
|
use App\Models\User;
|
|
|
|
|
|
|
|
abstract class CheckoutablePermissionsPolicy extends SnipePermissionsPolicy
|
|
|
|
{
|
2021-06-10 13:15:52 -07:00
|
|
|
/**
|
2017-10-27 18:01:11 -07:00
|
|
|
* Determine whether the user can checkout the accessory.
|
|
|
|
*
|
|
|
|
* @param \App\User $user
|
|
|
|
* @return mixed
|
|
|
|
*/
|
|
|
|
public function checkout(User $user, $item = null)
|
|
|
|
{
|
|
|
|
return $user->hasAccess($this->columnName().'.checkout');
|
|
|
|
}
|
|
|
|
|
2021-06-10 13:15:52 -07:00
|
|
|
/**
|
2017-10-27 18:01:11 -07:00
|
|
|
* Determine whether the user can checkin the accessory.
|
|
|
|
*
|
|
|
|
* @param \App\User $user
|
|
|
|
* @return mixed
|
|
|
|
*/
|
|
|
|
public function checkin(User $user, $item = null)
|
|
|
|
{
|
|
|
|
return $user->hasAccess($this->columnName().'.checkin');
|
|
|
|
}
|
|
|
|
|
2021-06-10 13:15:52 -07:00
|
|
|
/**
|
2017-10-27 18:01:11 -07:00
|
|
|
* Determine whether the user can manage the accessory.
|
|
|
|
*
|
|
|
|
* @param \App\User $user
|
|
|
|
* @return mixed
|
|
|
|
*/
|
|
|
|
public function manage(User $user, $item = null)
|
|
|
|
{
|
|
|
|
return $user->hasAccess($this->columnName().'.checkin')
|
|
|
|
|| $user->hasAccess($this->columnName().'.edit')
|
|
|
|
|| $user->hasAccess($this->columnName().'.checkout');
|
|
|
|
}
|
|
|
|
}
|