middleware('auth'); } /** * Show the application dashboard. * * @return \Illuminate\Contracts\Support\Renderable */ public function index() { $metrics = [ 'pending_tickets' => ContactMessage::where('read', false)->count(), 'total_contacts' => ContactMessage::count(), 'total_users' => User::where('user_type', 'User')->count(), ]; // Products module metrics (only when module is enabled) if (module_enabled('products') && class_exists(\App\Modules\Products\Models\Product::class)) { $metrics['total_products'] = \App\Modules\Products\Models\Product::where('active', true)->count(); } // Services module metrics (only when module is enabled) if (module_enabled('services') && class_exists(\App\Modules\Services\Models\Service::class)) { $metrics['total_services'] = \App\Modules\Services\Models\Service::where('active', true)->count(); } return view('home', compact('metrics')); } /** * Send a feature request to SysSiteCMS. */ public function sendFeatureRequest(Request $request) { $request->validate([ 'feature_description' => 'required|string|min:10', ]); $user = Auth::user(); $description = $request->feature_description; // Send notification to SysSiteCMS email Notification::route('mail', 'contato@syspanel.com.br') ->notify(new FeatureRequestNotification($user, $description)); return redirect()->back()->with('success', 'Sua solicitação foi enviada com sucesso ao SysSiteCMS! Em breve entraremos em contato.'); } }