feat: adicionar sistema de backup e badge editável na página inicial

This commit is contained in:
Erik
2025-11-29 12:22:56 -03:00
parent b73eb6c3eb
commit 99530200b4
13 changed files with 1511 additions and 41 deletions

View File

@@ -166,3 +166,163 @@ frontend/src/app/api/projects/[id]/
**Branch**: `cms-1.1`
**Status**: ✅ Produção
---
## CMS 1.2 - Atualizações (28/11/2025)
### 📱 WhatsApp Dinâmico
#### API de Informações de Contato (`/api/contact-info`)
- Nova rota que busca número do WhatsApp dinamicamente do CMS
- Busca dados da página `contato` slug
- Cache de 1 minuto para otimizar performance
- Fallback para número padrão `(35) 9882-9445` com link `https://wa.me/5535988229445`
- Retorna JSON: `{ whatsapp: string, whatsappLink: string }`
#### Integração no Botão Flutuante
- `WhatsAppButton.tsx` agora busca número da API `/api/contact-info`
- Abre WhatsApp diretamente com número do CMS
- Exibe label traduzido `whatsapp.label`
#### Integração no Header
- Botão "Fale Conosco" no header desktop agora abre WhatsApp diretamente
- Menu mobile também integrado
- Ambos buscam número da API em tempo real
#### Tradução do Label
- Adicionada chave `whatsapp.label` em todos os locales:
- PT: "Fale Conosco"
- EN: "Contact Us"
- ES: "Contáctenos"
- Adicionada no `LanguageContext.tsx` para fallback
---
### 🌙 Dark Mode no Painel Admin
#### Novo Botão de Tema
- Adicionado botão sol/lua no header do painel admin
- Localizado ao lado das notificações
- Mesmo comportamento do botão no site público
- Integrado com `useTheme` hook
#### Funcionalidade
- Toggle claro/escuro funcional em todo o admin
- Persistência de preferência via `next-themes`
- Ícone muda conforme tema: `ri-sun-line` (dark) / `ri-moon-line` (light)
---
### 🔗 Correção de Links do Dashboard
#### Links das Mensagens
- Card "Mensagens" → `/admin/mensagens`
- Botão "Ver todas" → `/admin/mensagens`
- Cada item de mensagem → `/admin/mensagens`
- Antes: apontavam para `/admin/contatos` (rota inexistente)
#### Estrutura de Rotas
- Confirmado que rota correta é `/admin/mensagens`
- Não existe `/admin/contatos` no projeto
---
### ✅ Correções Finais de WhatsApp
#### Formato Correto do Número
- **Número fornecido**: `+55 35 9882-9445`
- **Formato wa.me**: `5535988229445`
- `55` = código Brasil
- `35` = DDD
- `988229445` = número com 9 dígitos (padrão celular BR)
#### Atualização em Todos os Arquivos
- API `/api/contact-info/route.ts`
- Componente `WhatsAppButton.tsx`
- Componente `Header.tsx`
- Todos agora usam `5535988229445` como padrão
---
### 📁 Arquivos Modificados (28/11)
```
frontend/src/app/api/
└── contact-info/
└── route.ts # ✨ NOVO - API WhatsApp dinâmico
frontend/src/components/
├── WhatsAppButton.tsx # Integração API contact-info
└── Header.tsx # Integração API contact-info
frontend/src/app/admin/
├── layout.tsx # Dark mode + links corrigidos
└── page.tsx # Links mensagens corrigidos
frontend/src/contexts/
└── LanguageContext.tsx # Adicionado whatsapp.label
frontend/src/locales/
├── pt.json # Adicionado whatsapp.label
├── en.json # Adicionado whatsapp.label
└── es.json # Adicionado whatsapp.label
```
---
## Commits Realizados (28/11/2025)
### Commit 1: WhatsApp Dinâmico
```
feat: WhatsApp dinâmico do CMS
- Criada API /api/contact-info que busca número do CMS
- Header e botão flutuante agora puxam número dinamicamente
- Número padrão: (35) 9882-9445
```
### Commit 2: Tradução WhatsApp
```
fix: WhatsApp label tradução e número correto (35) 9882-9445
- Adicionada chave whatsapp.label nos arquivos de locale (pt, en, es)
- Adicionada chave whatsapp.label no LanguageContext
```
### Commit 3: Formato Correto
```
fix: número WhatsApp correto 5535988229445
- Corrigido número padrão em todos os arquivos
- Formato correto: 55 (Brasil) + 35 (DDD) + 988229445 (número)
```
### Commit 4: Dark Mode e Links
```
fix: dark mode no admin, links mensagens dashboard, WhatsApp correto
- Adicionado botão de dark mode no header do painel admin
- Corrigido links do dashboard: /admin/contatos -> /admin/mensagens
- Corrigido número WhatsApp: 5535988229445 (formato correto BR)
```
---
## 🚀 Status de Deployment
### Ambiente de Produção
- **Domínio**: www.octtoengenharia.com.br
- **Docker Compose**: `docker-compose.yml` (production)
- **Banco**: PostgreSQL `occto_db`
- **Storage**: MinIO `occto_minio`
- **Frontend**: `occto_frontend`
- **Network**: `dokploy-network`
### Infraestrutura
- **Versão PostgreSQL**: 12-alpine
- **Versão MinIO**: RELEASE.2023-09-04T19-57-37Z
- **Framework**: Next.js 15.1
- **ORM**: Prisma
- **Deploy Platform**: Dokploy (com auto-deploy)
---
**Branch**: `cms-1.1`
**Status**: ✅ Produção (Deploy 28/11/2025)