73 lines
1.2 KiB
PHP
73 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Vanguard\Repositories\Permission;
|
|
|
|
use Vanguard\Events\Permission\Created;
|
|
use Vanguard\Events\Permission\Deleted;
|
|
use Vanguard\Events\Permission\Updated;
|
|
use Vanguard\Permission;
|
|
use Cache;
|
|
|
|
class EloquentPermission implements PermissionRepository
|
|
{
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function all()
|
|
{
|
|
return Permission::all();
|
|
}
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function find($id)
|
|
{
|
|
return Permission::find($id);
|
|
}
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function create(array $data)
|
|
{
|
|
$permission = Permission::create($data);
|
|
|
|
event(new Created($permission));
|
|
|
|
return $permission;
|
|
}
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function update($id, array $data)
|
|
{
|
|
$permission = $this->find($id);
|
|
|
|
$permission->update($data);
|
|
|
|
Cache::flush();
|
|
|
|
event(new Updated($permission));
|
|
|
|
return $permission;
|
|
}
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function delete($id)
|
|
{
|
|
$permission = $this->find($id);
|
|
|
|
event(new Deleted($permission));
|
|
|
|
$status = $permission->delete();
|
|
|
|
Cache::flush();
|
|
|
|
return $status;
|
|
}
|
|
}
|