HEX
Server: LiteSpeed
System: Linux us-phx-web629.main-hosting.eu 5.14.0-503.23.2.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Feb 12 05:52:18 EST 2025 x86_64
User: u756937133 (756937133)
PHP: 8.2.27
Disabled: passthru,chgrp
Upload Files
File: /home/u756937133/domains/swingersnest.com/public_html/app/Providers/AppServiceProvider.php
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\View;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     */
    public function register(): void
    {
        //
    }

    /**
     * Bootstrap any application services.
     */
    public function boot(): void
    {
        // Share route prefix with all admin views for role-based routing
        View::composer('layouts.admin', function ($view) {
            $isAdmin = Auth::check() && (Auth::user()->is_admin ?? false);
            $routePrefix = $isAdmin ? 'admin' : 'editor';
            $view->with('routePrefix', $routePrefix);
        });

        // Also share with all admin.* views
        View::composer('admin.*', function ($view) {
            $isAdmin = Auth::check() && (Auth::user()->is_admin ?? false);
            $routePrefix = $isAdmin ? 'admin' : 'editor';
            $view->with('routePrefix', $routePrefix);
        });

        // Share feeds layout sidebar data (visits count, pending tasks) with layouts.feeds and pages.feeds.*
        View::composer(['layouts.feeds', 'pages.feeds.*'], function ($view) {
            $visitsCount = 0;
            $pendingTasksCount = 0;
            if (Auth::check()) {
                $visitsCount = \App\Models\UserVisit::where('visited_user_id', Auth::id())
                    ->where('visitor_id', '!=', Auth::id())
                    ->count();
            }
            $view->with(compact('visitsCount', 'pendingTasksCount'));
        });

        // Custom route model binding for subscription-plans
        Route::bind('subscription-plan', function ($value) {
            return \App\Models\SubscriptionPlan::findOrFail($value);
        });
    }
}