Pular para conteúdo

Estrutura do código legado

Organização visível do legado no código publicado, incluindo entradas públicas, diretórios funcionais e padrões técnicos recorrentes.

Organização do código

Área Papel técnico
web.config Define o documento padrão no IIS, erro 404 e regras básicas de publicação
supergeral.asp Página inicial efetiva do portal
header.asp e headerISO.asp Cabeçalhos compartilhados com menu, login e blocos comuns
LOJA/ Associação, proposta, matrícula, alteração cadastral e páginas ligadas ao ingresso do associado
registro_flash/ Entrada do registro, armazenamento, alteração, pesquisa e emissão ligada ao registro
API/ Includes utilitários ASP usados por cabeçalhos e por fluxos específicos, como estúdio
agendamento/ Rotinas automáticas e scripts operacionais que atualizam estado, cobrança, pontos e conteúdo
admin/ Pasta interna localizada no espelho atual, com vendasAdmin.asp ligado à consulta operacional de vendas de parceiros
arede/erede/scripts_ccb/ Rotinas ligadas ao retorno e baixa de pagamento
lib/db/ Camada compartilhada de conexão e consulta
css/, images/, icons/, Scripts/ Recursos estáticos do portal

Estrutura visível na raiz do legado

  1. A raiz do legado reúne arquivos de produção, páginas antigas ainda preservadas, campanhas isoladas, utilitários operacionais e conteúdo estático.
  2. Há páginas centrais diretamente na raiz, como supergeral.asp, header.asp, headerISO.asp, supergeral_login.asp, central_de_pagamentos_1.asp, central_de_pagamentos_2.asp e associar_new.asp.
  3. A mesma raiz também preserva arquivos antigos ou paralelos, como central_de_pagamentos_3.asp, fora do fluxo principal documentado na navegacao publicada.
  4. A raiz concentra ainda páginas operacionais internas fora da pasta admin/, como central_de_pagamentos_1_interno.asp, central_de_pagamentos_2_interno.asp, supergeral_central_de_pagamentos_internos_1.asp e supergeral_central_de_pagamentos_internos_2.asp.
  5. Diretórios como Antigas/, backups/ e tabelas com sufixos de cópia no banco indicam convivência entre versão ativa, versões antigas e material preservado para consulta ou reaproveitamento.
  6. Diretórios como A - Procedimentos para emissão boletos CCB/, Advanced Find and Replace/ e Instalação nova/ mostram que a árvore também funciona como repositório operacional e não apenas como código da aplicação pública.

Páginas administrativas e internas localizadas

  1. Na pasta admin/, a página localizada neste espelho é admin/vendasAdmin.asp.
  2. admin/vendasAdmin.asp executa header.asp e footer.asp, consulta vendas_parceiro e cruza o pedido com pedidos_servicos para exibir vendedor, serviço, valor, comissão e status de pagamento.
  3. As trilhas internas de pagamento ficam diretamente na raiz publicada, pelas variantes _interno, internos e pela variante interna da coletânea.
  4. As referências a administração localizadas dentro de LOJA/ apontam para admin.asp do caminho seguro configurado no próprio módulo, e não para a pasta raiz admin/ deste espelho.

Árvore publicada no IIS

  1. A pasta física do site no IIS aponta para C:\INETPUB\WWWROOT\LOCALUSER\CLUBEDOSCOMPOSITORES como raiz publicada do servidor.
  2. A árvore exportada dessa publicação confirma que a raiz reúne páginas públicas, módulos funcionais, utilitários operacionais, arquivos auxiliares, cópias paralelas e material preservado.
  3. Dentro dessa árvore publicada aparecem arquivos centrais como web.config, supergeral.asp, supergeral_login.asp, salavip.asp, supergeral_central_de_pagamentos_1.asp, supergeral_isrc1.asp e supergeral_estudio1.asp.
  4. A separacao fechada entre cadeia principal, modulo paralelo, codigo preservado e artefato operacional fica em Classificacao da arvore publicada.

Baixar árvore publicada do IIS

Padrões técnicos do código

  1. A base principal é ASP Clássico, com presença de páginas auxiliares em PHP, HTML e HTM dentro do mesmo legado.
  2. A montagem das páginas combina Server.Execute e #include, concentrando cabeçalhos, navegação e utilidades em arquivos compartilhados.
  3. Há dois estilos de acesso a banco convivendo no código: páginas que abrem ADODB.Connection diretamente e páginas que usam a camada compartilhada em lib/db/.
  4. A camada compartilhada usa dbConfig.asp, connection.asp e database-query-module.asp para montar consultas por ODBC MySQL.
  5. O legado também preserva configuração antiga em Global.asa para loja.mdb via Jet OLEDB, enquanto os fluxos de associação, registro, includes utilitários em API/ e agendamento abrem conexão com MySQL por ODBC.
  6. O código trabalha amplamente com Request.Form, Request.QueryString, cookies, Response.Redirect e atualizações SQL montadas diretamente na página.

Papel da pasta API/

Uso de API/

A pasta API/ aparece no legado coletado e na árvore publicada. O uso nela e de include interno, e nao de endpoints HTTP formalizados. Os casos identificados até agora são utilitários como getClubecadInfoByEmail.asp, incluído por header.asp e headerISO.asp, e getStudioUserInfo.asp, incluído por páginas do estúdio. API/ funciona como bloco de reaproveitamento interno do legado, com impacto localizado, e nao como modulo central do sistema.

Validações de entrada no código

  1. Nos fluxos públicos de associação e de pagamentos, o CPF é sanitizado antes do envio, reduzido a dígitos e validado com 11 números e dígitos verificadores.
  2. As telas que recebem endereço e cobrança exigem CEP com 8 dígitos e, em alguns fluxos, consultam tabelas internas de CEP para confirmar se o código existe.
  3. O legado repete a função tira_aspa em várias páginas para remover aspas, =, & e fragmentos de or antes de seguir com login, pagamento, contato e outros formulários.
  4. O padrão é validar no próprio ponto de entrada do fluxo, e não por uma camada única centralizada.

Leituras relacionadas

  1. Cadeia visual do portal em Interface e Navegação > Estrutura Global do Portal.
  2. Navegação compartilhada em Interface e Navegação > Header, Menu e Login.
  3. Dominios, acoplamentos e componentes compartilhados em Arquitetura.
  4. Assets visuais em Interface e Navegação > Assets CSS e JS de Interface.