fix: add exception handling to ViewServiceProvider boot method to prevent application crashes on database errors

This commit is contained in:
Yoga Pangestu 2026-04-22 14:14:34 +07:00
parent 09d70d052b
commit 3f8ca0c6d9

View File

@ -25,28 +25,31 @@ public function register(): void
*/
public function boot(): void
{
if (Schema::hasTable('settings')) {
view()->share('general', app(GeneralSettings::class));
view()->share('social', app(SocialMediaSettings::class));
view()->share('seo', app(SeoSettings::class));
try {
if (Schema::hasTable('settings')) {
view()->share('general', app(GeneralSettings::class));
view()->share('social', app(SocialMediaSettings::class));
view()->share('seo', app(SeoSettings::class));
view()->composer('components.partials.footer', function ($view) {
$routeStatisticModel = config('route-statistics.model', Visitor::class);
view()->composer('components.partials.footer', function ($view) {
$routeStatisticModel = config('route-statistics.model', Visitor::class);
$today = $routeStatisticModel::whereDate('date', Carbon::today())->sum('counter');
$yesterday = $routeStatisticModel::whereDate('date', Carbon::yesterday())->sum('counter');
$thisMonth = $routeStatisticModel::whereMonth('date', Carbon::now()->month)
->whereYear('date', Carbon::now()->year)
->sum('counter');
$total = $routeStatisticModel::sum('counter');
$today = $routeStatisticModel::whereDate('date', Carbon::today())->sum('counter');
$yesterday = $routeStatisticModel::whereDate('date', Carbon::yesterday())->sum('counter');
$thisMonth = $routeStatisticModel::whereMonth('date', Carbon::now()->month)
->whereYear('date', Carbon::now()->year)
->sum('counter');
$total = $routeStatisticModel::sum('counter');
$view->with('visitorStats', [
'today' => number_format($today),
'yesterday' => number_format($yesterday),
'thisMonth' => number_format($thisMonth),
'total' => number_format($total),
]);
});
$view->with('visitorStats', [
'today' => number_format($today),
'yesterday' => number_format($yesterday),
'thisMonth' => number_format($thisMonth),
'total' => number_format($total),
]);
});
}
} catch (\Throwable $th) {
}
}
}