*/ public function share(Request $request): array { if ($request->is('candidaturas/*')) { return [...parent::share($request), 'name' => 'SGC', 'auth' => ['user' => null], 'canRequest' => false, 'organizationAccess' => null, 'payablesAvailable' => false, 'sidebarOpen' => false]; } $actor = $request->user('web'); $actor = $actor instanceof User ? $actor : null; return [ ...parent::share($request), 'name' => config('app.name'), 'internalRequisitionReady' => $actor !== null && Schema::hasTable('requisition_commands'), 'workContext' => $actor === null ? null : app(WorkContext::class)->shared($request), 'canRequest' => $actor !== null && app(OrganizationAccess::class)->canRequest($actor), 'auth' => [ 'user' => $actor, ], 'organizationAccess' => $actor === null ? null : [ 'permissions' => app(OrganizationAccess::class)->permissions($actor), 'active' => app(OrganizationAccess::class)->active($actor->tenant_id), 'profileLabel' => app(OrganizationAccess::class)->profileLabel($actor), ], 'payablesAvailable' => $actor !== null && app(SupplierPayables::class)->can($actor, 'view'), 'orderCancellationAvailable' => $actor !== null && (bool) config('order_cancellation.enabled') && Schema::hasTable('order_cancellations'), 'sidebarOpen' => ! $request->hasCookie('sidebar_state') || $request->cookie('sidebar_state') === 'true', ]; } }