Files
marco 38295e7e88 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
2026-09-07 19:06:53 -03:00

89 lines
4.8 KiB
PHP
Executable File

@extends('layouts.app')
@section('title', $page->title)
@section('meta_description', $page->meta_description)
@section('meta_keywords', $page->meta_keywords)
@section('og_title', $page->og_title)
@section('og_description', $page->og_description)
@section('og_image', $page->og_image)
@section('canonical', $page->canonical_url)
@section('content')
<div class="container py-5">
<div class="text-center mb-5">
<h1 class="display-4 fw-bold text-primary">Downloads e Utilitários</h1>
<p class="lead text-muted">Arquivos exclusivos para nossos clientes cadastrados.</p>
</div>
<div class="row justify-content-center">
<div class="col-lg-10">
@guest
<div class="card border-0 shadow-sm rounded-4 bg-light p-5 text-center">
<div class="mb-4">
<i class="bi bi-lock-fill display-1 text-primary"></i>
</div>
<h2 class="fw-bold mb-3">Acesso Restrito</h2>
<p class="lead text-muted mb-4">
Para garantir a segurança e integridade dos arquivos, a área de downloads é exclusiva para usuários cadastrados.
</p>
<div class="d-grid gap-3 d-sm-flex justify-content-sm-center">
<a href="{{ route('login') }}" class="btn btn-primary btn-lg px-5 py-3 rounded-pill fw-bold">Fazer Login</a>
<a href="{{ route('register') }}" class="btn btn-outline-primary btn-lg px-5 py-3 rounded-pill fw-bold">Criar Conta Grátis</a>
</div>
</div>
@else
<div class="card border-0 shadow-sm rounded-4 overflow-hidden">
<div class="table-responsive">
<table class="table table-hover align-middle mb-0">
<thead class="bg-primary text-white">
<tr>
<th class="ps-4 py-3">Arquivo</th>
<th class="py-3">Tipo</th>
<th class="py-3">Descrição</th>
<th class="py-3 text-center">Ação</th>
</tr>
</thead>
<tbody>
@forelse($downloads as $download)
<tr>
<td class="ps-4">
<div class="fw-bold text-dark">{{ $download->title }}</div>
<small class="text-muted">Postado em {{ $download->created_at->format('d/m/Y') }}</small>
</td>
<td>
<span class="badge bg-light text-primary border border-primary-subtle px-3 py-2">
<i class="bi bi-file-earmark-arrow-down me-1"></i> {{ $download->file_type }}
</span>
</td>
<td class="text-muted small">
{{ $download->description ?? 'Sem descrição disponível.' }}
</td>
<td class="text-center pe-4">
<a href="{{ route('downloads.file', $download) }}" class="btn btn-primary rounded-pill px-4 fw-bold">
<i class="bi bi-download me-1"></i> Baixar
</a>
</td>
</tr>
@empty
<tr>
<td colspan="4" class="text-center py-5 text-muted">
<i class="bi bi-folder2-open fs-1 d-block mb-3"></i>
Nenhum arquivo disponível para download no momento.
</td>
</tr>
@endforelse
</tbody>
</table>
</div>
</div>
<div class="alert alert-info border-0 shadow-sm mt-4 rounded-3">
<i class="bi bi-info-circle-fill me-2"></i>
<strong>Dica:</strong> Se não encontrar o driver específico para seu equipamento, entre em contato com nosso <a href="{{ route('contato') }}" class="alert-link text-decoration-underline">suporte técnico</a>.
</div>
@endguest
</div>
</div>
</div>
@endsection