feat(cms): implement complete SysSiteCMS content management system
Initial implementation of the HomeSysPanel CMS built with Laravel 13.0. Includes complete admin panel, content management, user authentication, modular architecture for products/services/chatbot, and marketing tools. Key features: - User authentication with email verification and password reset - Role-based access control (Admin/User with granular permissions) - Content management (pages, news, FAQ, downloads, galleries, banners) - Contact management system with subjects and responses - Marketing tools (email campaigns, visitor analytics, social sharing) - Modular architecture (Products, Services, Chatbot modules) - AI Chatbot integration with OpenRouter.ai and LlamaCpp support - Visitor tracking with geolocation - SEO optimization with meta tags and Open Graph - Responsive design with Bootstrap 5 - Dark mode support - Maintenance mode - Feature request system
This commit is contained in:
+44
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Setting;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
|
||||
class SettingController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$settings = Setting::all()->groupBy('group');
|
||||
return view('admin.settings.index', compact('settings'));
|
||||
}
|
||||
|
||||
public function update(Request $request)
|
||||
{
|
||||
$settings = $request->except('_token');
|
||||
|
||||
foreach ($settings as $key => $value) {
|
||||
$group = 'general';
|
||||
if (str_starts_with($key, 'seo_')) $group = 'seo';
|
||||
if (str_starts_with($key, 'scripts_')) $group = 'scripts';
|
||||
if (str_starts_with($key, 'company_')) $group = 'company';
|
||||
if (str_starts_with($key, 'dashboard_')) $group = 'dashboard';
|
||||
if (str_starts_with($key, 'marketing_')) $group = 'marketing';
|
||||
|
||||
Setting::set($key, $value, $group);
|
||||
}
|
||||
|
||||
// Limpa o cache para garantir que as novas configurações sejam aplicadas
|
||||
Artisan::call('cache:clear');
|
||||
Artisan::call('view:clear');
|
||||
|
||||
return redirect()->back()->with('success', 'Configurações globais atualizadas com sucesso.');
|
||||
}
|
||||
|
||||
public function erpAd()
|
||||
{
|
||||
return view('admin.erp.ad');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user