ppeasy/app/Repositories/Permission/EloquentPermission.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;
}
}