@vite(['resources/css/app.css', 'resources/js/app.js']) @php $isAppointmentBuilder = request()->routeIs('company-admin.appointments.create'); $roleSlugs = Auth::user()->roles->pluck('slug'); $dashboardRoute = $roleSlugs->contains('receptionist') && !$roleSlugs->contains('company-admin') ? 'company-admin.reception.dashboard' : 'company-admin.dashboard'; $roleLabel = str($roleSlugs->first() ?? 'team-member')->headline(); $isCompanyAdmin = $roleSlugs->intersect(['company-admin', 'super-admin'])->isNotEmpty(); $canAccessAllServiceLines = $roleSlugs->intersect(['company-admin', 'super-admin', 'manager', 'receptionist'])->isNotEmpty(); $referenceNav = [ ['section' => 'Workspace', 'label' => 'Dashboard', 'description' => 'Daily overview', 'route' => $dashboardRoute, 'icon' => 'fa-chart-simple', 'active' => ['company-admin.dashboard', 'company-admin.reception.dashboard']], ['section' => 'Workspace', 'label' => 'Pets', 'description' => 'Owners & pet records', 'route' => 'company-admin.customers.index', 'icon' => 'fa-paw', 'active' => ['company-admin.customers.*']], ['section' => 'Workspace', 'label' => 'Masters', 'description' => 'Services & categories', 'route' => 'company-admin.services.index', 'icon' => 'fa-layer-group', 'active' => ['company-admin.services.index', 'company-admin.services.list', 'company-admin.services.create', 'company-admin.services.show', 'company-admin.categories.*']], ['section' => 'Workspace', 'label' => 'Package Creation', 'description' => 'Service packages & sessions', 'route' => 'company-admin.services.packages.index', 'icon' => 'fa-box-open', 'active' => ['company-admin.services.packages.*']], ['section' => 'Operations', 'label' => 'Schedule Appointments', 'description' => 'Create a new booking', 'route' => 'company-admin.appointments.create', 'icon' => 'fa-calendar-plus', 'active' => ['company-admin.appointments.create']], ['section' => 'Operations', 'label' => 'Booking Calendar', 'description' => 'Calendar & appointment queue', 'route' => 'company-admin.appointments.calendar', 'icon' => 'fa-calendar-check', 'active' => ['company-admin.appointments.index', 'company-admin.appointments.calendar']], ['section' => 'Operations', 'label' => 'My Work Queue', 'description' => 'Assigned pets & live services', 'route' => 'company-admin.work.index', 'icon' => 'fa-list-check', 'active' => ['company-admin.work.*']], ['section' => 'Operations', 'label' => 'New Service Booking', 'description' => 'Choose any service line', 'route' => 'company-admin.bookings.create', 'icon' => 'fa-circle-plus', 'active' => ['company-admin.bookings.*']], ]; $serviceLineItems = [ 'in-store-grooming' => ['label' => 'Grooming', 'description' => 'Salon queue & care', 'icon' => 'fa-scissors', 'roles' => ['groomer']], 'mobile-grooming' => ['label' => 'Mobile Grooming', 'description' => 'Van jobs & dispatch', 'icon' => 'fa-truck-medical', 'roles' => ['mobile-groomer', 'dispatcher']], 'boarding' => ['label' => 'Boarding', 'description' => 'Stays, rooms & care', 'icon' => 'fa-house', 'roles' => ['boarding-staff']], 'daycare' => ['label' => 'Daycare', 'description' => 'Capacity & daily care', 'icon' => 'fa-sun', 'roles' => ['boarding-staff']], 'pet-taxi' => ['label' => 'Pet Taxi', 'description' => 'Trips & driver dispatch', 'icon' => 'fa-car-side', 'roles' => ['driver', 'dispatcher']], 'veterinary' => ['label' => 'Veterinary', 'description' => 'Consultations & treatment', 'icon' => 'fa-stethoscope', 'roles' => ['veterinarian', 'vet-assistant']], 'concierge' => ['label' => 'Concierge', 'description' => 'Walks & home visits', 'icon' => 'fa-bell-concierge', 'roles' => ['concierge-staff']], ]; foreach ($serviceLineItems as $serviceLine => $item) { if ($canAccessAllServiceLines || $roleSlugs->intersect($item['roles'])->isNotEmpty()) { $referenceNav[] = [ 'section' => 'Service Lines', 'label' => $item['label'], 'description' => $item['description'], 'route' => 'company-admin.operations.index', 'params' => [$serviceLine], 'icon' => $item['icon'], 'active' => ['company-admin.operations.*'], 'active_param' => $serviceLine, ]; } } $referenceNav = array_merge($referenceNav, [ ['section' => 'Service Lines', 'label' => 'Pharmacy', 'description' => 'Stock & prescriptions', 'route' => 'company-admin.pharmacy.index', 'icon' => 'fa-prescription-bottle-medical', 'active' => ['company-admin.pharmacy.*']], ['section' => 'Finance', 'label' => 'Sales Details', 'description' => 'Packages & subscriptions', 'route' => 'company-admin.commerce.index', 'icon' => 'fa-chart-line', 'active' => ['company-admin.commerce.*']], ['section' => 'Finance', 'label' => 'Customer Payment', 'description' => 'Checkout & front desk', 'route' => 'company-admin.reception.dashboard', 'icon' => 'fa-credit-card', 'active' => ['company-admin.reception.*', 'company-admin.payments.*']], ['section' => 'Finance', 'label' => 'Reports', 'description' => 'Revenue & operations', 'route' => 'company-admin.reports.index', 'icon' => 'fa-chart-column', 'active' => ['company-admin.reports.*']], ['section' => 'Finance', 'label' => 'Notifications', 'description' => 'Delivery activity & alerts', 'route' => 'company-admin.notifications.index', 'icon' => 'fa-bell', 'active' => ['company-admin.notifications.*']], ]); if ($isCompanyAdmin) { $referenceNav = array_merge($referenceNav, [ ['section' => 'Administration', 'label' => 'Employees', 'description' => 'Team member accounts', 'route' => 'company-admin.employees.index', 'icon' => 'fa-user-group', 'active' => ['company-admin.employees.*']], ['section' => 'Administration', 'label' => 'Staff Schedules', 'description' => 'Working hours & shifts', 'route' => 'company-admin.schedules.index', 'icon' => 'fa-calendar-days', 'active' => ['company-admin.schedules.*']], ['section' => 'Administration', 'label' => 'Resources', 'description' => 'Stations & vehicles', 'route' => 'company-admin.resources.index', 'icon' => 'fa-warehouse', 'active' => ['company-admin.resources.*']], ['section' => 'Administration', 'label' => 'Roles & Permissions', 'description' => 'Access control', 'route' => 'company-admin.roles.index', 'icon' => 'fa-user-shield', 'active' => ['company-admin.roles.*']], ['section' => 'Administration', 'label' => 'Locations', 'description' => 'Branches & facilities', 'route' => 'company-admin.locations.index', 'icon' => 'fa-location-dot', 'active' => ['company-admin.locations.*']], ['section' => 'Administration', 'label' => 'Departments', 'description' => 'Organize your team', 'route' => 'company-admin.departments.index', 'icon' => 'fa-building-user', 'active' => ['company-admin.departments.*']], ['section' => 'Administration', 'label' => 'Zones & Rooms', 'description' => 'Operational spaces', 'route' => 'company-admin.operations.settings', 'icon' => 'fa-door-open', 'active' => ['company-admin.operations.settings*']], ['section' => 'Administration', 'label' => 'Company Settings', 'description' => 'Branding & preferences', 'route' => 'company-admin.settings.index', 'icon' => 'fa-gear', 'active' => ['company-admin.settings.*']], ]); } @endphp
@unless($isAppointmentBuilder)

Hello, {{ explode(' ', Auth::user()->name)[0] }}

{{ Auth::user()->tenant->name ?? 'Paw Street' }} ยท {{ Auth::user()->tenant->emirate ?? 'Dubai' }}

Company settings
@csrf
@endunless @if(session('status'))
{{ session('status') }}
@endif
{{ $slot }}