Backend: - AccountDeletionController com 4 endpoints principais - requestDeletionCode: Envia código de 6 dígitos por email (válido 10min) - exportBackup: Exporta todos os dados do usuário em JSON - executeHardDelete: Deleta permanentemente conta e dados com validação de código - importBackup: Importa backup completo com mapeamento de IDs Frontend: - FactoryResetWizard: Wizard de 4 etapas (Warning → Backup → Code → Confirmation) - ImportBackupModal: Drag & drop para importar backup JSON - Integração na página Profile com seção de Gerenciamento de Dados - accountDeletionService: Serviços API completos Email: - Template HTML para código de confirmação - Avisos visuais sobre irreversibilidade da ação i18n: - Traduções completas em pt-BR, es, en - 50+ strings de tradução adicionadas - Avisos e mensagens de erro traduzidos Funcionalidades: ✅ Hard delete com confirmação dupla (código + texto DELETAR) ✅ Backup completo em JSON (transações, contas, categorias, etc) ✅ Importação de backup com mapeamento inteligente de IDs ✅ Email com código de segurança ✅ Wizard responsivo com 4 etapas ✅ Validação de arquivos e tamanho (max 50MB) ✅ Drag & drop para upload ✅ Estatísticas de importação ✅ Logout automático após delete
151 lines
4.9 KiB
PHP
151 lines
4.9 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="pt-BR">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Código de Confirmação</title>
|
|
<style>
|
|
body {
|
|
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
|
background-color: #f4f4f4;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
.container {
|
|
max-width: 600px;
|
|
margin: 40px auto;
|
|
background-color: #ffffff;
|
|
border-radius: 8px;
|
|
overflow: hidden;
|
|
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
|
|
}
|
|
.header {
|
|
background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
|
|
color: white;
|
|
padding: 30px;
|
|
text-align: center;
|
|
}
|
|
.header h1 {
|
|
margin: 0;
|
|
font-size: 24px;
|
|
}
|
|
.content {
|
|
padding: 40px 30px;
|
|
}
|
|
.warning-box {
|
|
background-color: #fff3cd;
|
|
border-left: 4px solid #ffc107;
|
|
padding: 15px;
|
|
margin: 20px 0;
|
|
border-radius: 4px;
|
|
}
|
|
.warning-box strong {
|
|
color: #856404;
|
|
}
|
|
.code-box {
|
|
background-color: #f8f9fa;
|
|
border: 2px solid #dc3545;
|
|
border-radius: 8px;
|
|
padding: 20px;
|
|
text-align: center;
|
|
margin: 30px 0;
|
|
}
|
|
.code {
|
|
font-size: 36px;
|
|
font-weight: bold;
|
|
color: #dc3545;
|
|
letter-spacing: 8px;
|
|
margin: 10px 0;
|
|
}
|
|
.info-text {
|
|
color: #6c757d;
|
|
font-size: 14px;
|
|
line-height: 1.6;
|
|
}
|
|
.footer {
|
|
background-color: #f8f9fa;
|
|
padding: 20px;
|
|
text-align: center;
|
|
color: #6c757d;
|
|
font-size: 12px;
|
|
}
|
|
.danger-list {
|
|
background-color: #f8d7da;
|
|
border-left: 4px solid #dc3545;
|
|
padding: 15px;
|
|
margin: 20px 0;
|
|
border-radius: 4px;
|
|
}
|
|
.danger-list ul {
|
|
margin: 10px 0;
|
|
padding-left: 20px;
|
|
}
|
|
.danger-list li {
|
|
color: #721c24;
|
|
margin: 5px 0;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="header">
|
|
<h1>⚠️ EXCLUSÃO PERMANENTE DE CONTA</h1>
|
|
</div>
|
|
|
|
<div class="content">
|
|
<p>Olá, <strong>{{ $userName }}</strong></p>
|
|
|
|
<p class="info-text">
|
|
Você solicitou a exclusão <strong>PERMANENTE E IRREVERSÍVEL</strong> de sua conta no WebMoney.
|
|
</p>
|
|
|
|
<div class="warning-box">
|
|
<strong>⚠️ ATENÇÃO:</strong> Esta ação NÃO pode ser desfeita. Uma vez confirmada, todos os seus dados serão permanentemente deletados dos nossos servidores sem possibilidade de recuperação.
|
|
</div>
|
|
|
|
<div class="danger-list">
|
|
<strong>🗑️ Serão deletados permanentemente:</strong>
|
|
<ul>
|
|
<li>Todas as transações</li>
|
|
<li>Todas as contas bancárias e de ativos</li>
|
|
<li>Todos os cartões de crédito e contas de passivos</li>
|
|
<li>Orçamentos e categorias personalizadas</li>
|
|
<li>Centros de custo e palavras-chave</li>
|
|
<li>Objetivos financeiros</li>
|
|
<li>Investimentos e histórico de preços</li>
|
|
<li>Configurações e preferências</li>
|
|
<li>Sua conta de usuário</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<p class="info-text">
|
|
Para confirmar esta ação, utilize o código abaixo:
|
|
</p>
|
|
|
|
<div class="code-box">
|
|
<div style="font-size: 14px; color: #6c757d; margin-bottom: 10px;">
|
|
SEU CÓDIGO DE CONFIRMAÇÃO
|
|
</div>
|
|
<div class="code">{{ $code }}</div>
|
|
<div style="font-size: 12px; color: #6c757d; margin-top: 10px;">
|
|
Válido por 10 minutos
|
|
</div>
|
|
</div>
|
|
|
|
<p class="info-text">
|
|
<strong>Não foi você?</strong> Se você não solicitou esta exclusão, ignore este email e sua conta permanecerá intacta. Recomendamos alterar sua senha imediatamente por segurança.
|
|
</p>
|
|
|
|
<p class="info-text">
|
|
<strong>Quer fazer backup?</strong> Antes de confirmar a exclusão, você pode exportar todos os seus dados para um arquivo JSON e importá-los posteriormente em uma nova conta.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="footer">
|
|
<p>Este é um email automático do <strong>WebMoney</strong></p>
|
|
<p>Por favor, não responda a este email.</p>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|