Sistema de Votação Automático
Este sistema de votação inteligente elimina a necessidade de criar arquivos individuais para cada site de votação, tudo integrado no arquivo principal index.tsx
para maior flexibilidade e customização.
Como Funciona
1. Arquivo Principal (index.tsx
)
- Rota:
/vote
- Função: Página principal que lista todos os sites de votação disponíveis
- Características:
- Interface moderna e responsiva
- Cards interativos para cada site
- Redirecionamento automático ao clicar em "Votar Agora"
- Suporte a URLs diretas com parâmetros (
/vote?id=X
) - TypeScript para maior flexibilidade e customização
- Sistema inteligente de abertura de múltiplos sites com confirmação
2. Sistema de Redirecionamento Integrado
- Rota:
/vote?id=X
(onde X é o ID do site) - Função: Redireciona automaticamente para o site de votação correspondente
- Características:
- Redirecionamento automático baseado no parâmetro
id
da URL - Interface de carregamento durante o redirecionamento
- Fallback manual caso o redirecionamento falhe
- Redirecionamento automático baseado no parâmetro
3. Fonte de Dados (vote-list.json
)
- Localização:
static/api/armamc/others/vote-list.json
- Estrutura: Array de objetos com
id
,name
eurl
- Vantagem: Centraliza todas as informações dos sites de votação
URLs de Exemplo
- Página principal:
/vote
- Lista todos os sites disponíveis - Votar no Site 01:
/vote?id=1
- Redireciona automaticamente - Votar no Site 05:
/vote?id=5
- Redireciona automaticamente - Votar no Site 10:
/vote?id=10
- Redireciona automaticamente
Vantagens do Sistema
- Manutenção Simplificada: Apenas um arquivo JSON para gerenciar todos os sites
- Escalabilidade: Adicionar novos sites requer apenas atualizar o JSON
- Consistência: Interface uniforme para todos os sites
- Performance: Redirecionamento direto sem carregar páginas desnecessárias
- SEO: URLs limpas e amigáveis
- Abertura Inteligente: Sistema robusto para abrir múltiplos sites com confirmação e delay
- Anti-Spam: Implementação que evita bloqueios do navegador
Como Adicionar Novos Sites
Para adicionar um novo site de votação:
- Abra
static/api/armamc/others/vote-list.json
- Adicione um novo objeto ao array
voteSites
:{
"id": 20,
"name": "Site 20",
"url": "https://exemplo.com/vote"
} - Salve o arquivo
O novo site aparecerá automaticamente na interface sem necessidade de criar arquivos adicionais.
Arquivos Antigos
Os arquivos individuais (01.mdx, 02.mdx, 03.mdx, etc.) podem ser removidos, pois não são mais necessários com o novo sistema automático integrado no index.tsx
.
Vantagens do TypeScript
- ✅ Tipagem forte - Melhor detecção de erros em tempo de desenvolvimento
- ✅ IntelliSense - Autocompletar e sugestões mais precisas
- ✅ Refatoração segura - Mudanças de código mais confiáveis
- ✅ Flexibilidade - Fácil customização e extensão do código
- ✅ Manutenibilidade - Código mais legível e organizado
Estrutura Final
index.tsx
- Arquivo principal com sistema completo de votação (TypeScript)vote-list.json
- Fonte de dados dos sites de votaçãoVoteList
- Componente com sistema inteligente de abertura de sitesREADME.md
- Documentação do sistema
Funcionalidades Avançadas
🔥 Botão "Abrir Todos os Sites"
- Confirmação obrigatória antes da execução
- Delay inteligente entre aberturas (300ms)
- Verificação de popups bloqueados com fallback
- Logs detalhados no console para debugging
- Notificação de conclusão após processamento
- Prevenção de spam com avisos educativos
📊 Estatísticas em Tempo Real
- Contador total de sites disponíveis
- Recomendações de uso moderado
- Interface informativa para o usuário