@endif
{{-- Plugin-contributed Site Info rows. Replaces the hardcoded
per-package count blocks core used to ship (e.g. the
pre-extraction Courses row that read $courseCount from
DashboardController::index). Each plugin's
ApplicationServiceProvider::boot() registers a filter:
Hook::addFilter('admin.dashboard.site_info_rows',
fn(array $rows) => array_merge($rows, [[
'label' => __('elearning::Courses'),
'count' => Course::count(),
'permission' => 'admin.elearning.manage_courses',
'route' => 'admin.elearning.courses.index',
]]));
Same surface adds the rest (livestream, paid_content,
chat, …) without any further Blade edit per plugin. --}}
@foreach(\Packages\ShaunSocial\Plugins\Hook\Hook::applyFilters('admin.dashboard.site_info_rows', []) as $pluginRow)