Pular para o conteúdo principal

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

3. Fonte de Dados (vote-list.json)

  • Localização: static/api/armamc/others/vote-list.json
  • Estrutura: Array de objetos com id, name e url
  • 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

  1. Manutenção Simplificada: Apenas um arquivo JSON para gerenciar todos os sites
  2. Escalabilidade: Adicionar novos sites requer apenas atualizar o JSON
  3. Consistência: Interface uniforme para todos os sites
  4. Performance: Redirecionamento direto sem carregar páginas desnecessárias
  5. SEO: URLs limpas e amigáveis
  6. Abertura Inteligente: Sistema robusto para abrir múltiplos sites com confirmação e delay
  7. Anti-Spam: Implementação que evita bloqueios do navegador

Como Adicionar Novos Sites

Para adicionar um novo site de votação:

  1. Abra static/api/armamc/others/vote-list.json
  2. Adicione um novo objeto ao array voteSites:
    {
    "id": 20,
    "name": "Site 20",
    "url": "https://exemplo.com/vote"
    }
  3. 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ção
  • VoteList - Componente com sistema inteligente de abertura de sites
  • README.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