From e546f4cd94d44a36b25c70f32623d5d165073750 Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Fri, 30 Jun 2023 11:55:49 +0200 Subject: [PATCH] wait #6098 @0.25 --- app/Models/FluidbookPublication.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/app/Models/FluidbookPublication.php b/app/Models/FluidbookPublication.php index 995d35c19..557b989b8 100644 --- a/app/Models/FluidbookPublication.php +++ b/app/Models/FluidbookPublication.php @@ -54,7 +54,9 @@ use Cubist\Util\Graphics\Image; use Cubist\Util\Json; use Cubist\Util\Str; use Datetime; +use Illuminate\Database\Eloquent\Builder; use Illuminate\Support\Facades\Artisan; +use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Log; @@ -109,6 +111,23 @@ class FluidbookPublication extends ToolboxSettingsModel use SCORMVersionTrait; use CheckHash; + public static function addOwnerClause(Builder $builder) + { + if (null === backpack_user() || null === Auth::id()) { + return; + } + if (Auth::user()->hasPermissionTo(static::$_permissionBase . ':admin')) { + return; + } + if (null === static::$_ownerAttribute) { + return; + } + $builder->whereIn(static::$_ownerAttribute, backpack_user()->getManagedUsers()); + if (!Auth::user()->hasPermissionTo(static::$_permissionBase . ':write')) { + $builder->where('status', '>', 0); + } + } + public function setFields() { parent::setFields(); -- 2.39.5