PHP code example of orottier / authorization-required
1. Go to this page and download the library: Download orottier/authorization-required library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
orottier / authorization-required example snippets
public static function authorizationReadScope(\Illuminate\Database\Eloquent\Builder $query);
// ...
use AuthorizationRequired\AuthorizationRequired;
class Post extends Model
{
use AuthorizationRequired;
// ...
}
// ...
use AuthorizationRequired\AuthorizationRequired;
use Illuminate\Database\Eloquent\Builder;
class Post extends Model
{
use AuthorizationRequired;
public static function authorizationReadScope(Builder $query)
{
if (Auth::check() && Auth::user()->isSuperAdmin()) {
return $query;
}
$userId = Auth::check() ? Auth::user()->id : null;
return $query->where('published_at', '<=', date('Y-m-d H:i:s'))
->where('hidden', false)
->orWhere('user_id', $userId);
}
// ...
}
public static function authorizationReadScope(Builder $query)
{
return $query;
}
namespace App\Policies;
use App\User;
use App\Post;
class PostPolicy
{
public function update(User $user, Post $post)
{
return Auth::check()
&& ($post->user_id === $user->id || $user->isSuperAdmin());
}
public function create(User $user)
{
return true;
}
public function delete(User $user, Post $post)
{
return $this->update($user, $post)
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.