Data: 2026-06-22
Status: complete
Intake: sdd/human-requests/req-050.md
Escopo
-
Adicionar suporte opcional a
html_specialcharsemhtml_editor_componente(). -
Ativar o escape no fluxo administrativo do módulo
forms. -
Isolar as abas externas/internas do Forms via
contextno Fomantic UI. -
Criar quatro novos templates Tailwind CSS em
pt-breen. -
Registrar os templates no manifest e regenerar recursos pelo compilador local.
Implementação
-
gestor/bibliotecas/html-editor.php-
Aceita
html_specialchars. -
Quando habilitado, troca
#pagina-html#e#pagina-html-extra-head#porhtmlspecialchars(..., ENT_QUOTES, 'UTF-8')antes do retorno do componente.
-
-
gestor/modulos/forms/forms.php-
forms_prepare_editor_page()passahtml_specialchars,htmlehtml_extra_headpara o editor. -
O HTML continua bruto no submit/banco; o escape fica restrito ao preenchimento do
<textarea>do editor.
-
-
gestor/modulos/forms/forms.js-
.menuForms .itemusacontext: 'parent'. -
.menuFormsTemplate .itemusacontext: '[data-tab="forms-template"]'.
-
-
gestor/modulos/forms/resources/{pt-br,en}/templates/-
Criados
forms-newsletter-newsletter. -
Criados
forms-registro-usuario. -
Criados
forms-pesquisa-satisfacao. -
Criados
forms-suporte-tecnico.
-
-
gestor/modulos/forms/forms.json-
Registrados os quatro templates em
pt-breen. -
Compilador
php ./gestor/controladores/agents/arquitetura/atualizacao-dados-recursos.phpexecutado com sucesso.
-
Validação
-
php -l gestor/bibliotecas/html-editor.php-> OK. -
php -l gestor/modulos/forms/forms.php-> OK. -
node --check gestor/modulos/forms/forms.js-> OK. -
Validação Node de
forms.jsone presença dos 8 templates -> OK. -
Validação Node dos marcadores
item/type-*nos 8 templates -> OK. -
Compilador de recursos -> OK, 2222 recursos e nenhum problema detectado.
-
composer test-> OK, 40 testes, 112 assertions, 4 skipped, 1 deprecation. -
npm run test-> falhou no sandbox porAccess is deniedao carregarvitest.config.js; reexecutado com permissão escalada -> OK, 2 arquivos e 3 testes.
Pendências runtime
-
Validar no navegador o carregamento de HTML contendo
<textarea>dentro do CodeMirror. -
Confirmar clique na sub-aba "Widget" sem ocultar a aba pai "Template".
-
Conferir disponibilidade e preview/publicação dos 4 novos modelos em ambos os idiomas.