Enforce tenant member permissions
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
namespace App\Http\Resources\Tenant;
|
||||
|
||||
use App\Services\Packages\PackageLimitEvaluator;
|
||||
use App\Support\TenantMemberPermissions;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
use Illuminate\Http\Resources\MissingValue;
|
||||
@@ -18,6 +19,12 @@ class EventResource extends JsonResource
|
||||
$showSensitive = $this->tenant_id === $tenantId;
|
||||
$settings = is_array($this->settings) ? $this->settings : [];
|
||||
$eventPackage = null;
|
||||
$memberPermissions = null;
|
||||
|
||||
$user = $request->user();
|
||||
if ($user && $user->role === 'member') {
|
||||
$memberPermissions = TenantMemberPermissions::resolveEventPermissions($request, $this->resource);
|
||||
}
|
||||
|
||||
if ($this->relationLoaded('eventPackages')) {
|
||||
$related = $this->getRelation('eventPackages');
|
||||
@@ -86,6 +93,7 @@ class EventResource extends JsonResource
|
||||
? $limitEvaluator->summarizeEventPackage($eventPackage)
|
||||
: null,
|
||||
'addons' => $eventPackage ? $this->formatAddons($eventPackage) : [],
|
||||
'member_permissions' => $memberPermissions,
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user