Durante os testes visuais e de fluxo do módulo publisher-highlights, foram identificados problemas de interface, selects vazios e necessidades de melhorias na curadoria manual/automática e no editor HTML.
Detalhes das Correções e Melhorias Solicitadas
1. Visibilidade de Todos os Campos no Formulário (Adicionar, Clonar e Editar)
-
Problema: Atualmente, na tela de inclusão (Adicionar), apenas os campos "Nome" e "Publicador de Origem" são exibidos. O usuário precisa salvar primeiro para ter acesso à edição dos demais campos.
-
Ajuste: Alinhar a interface das telas de adicionar, clonar e editar de modo que todos os campos (Regras de Curadoria, Modelo Visual, Mapeamento de Variáveis e o Editor HTML/CSS) apareçam imediatamente ao criar, clonar ou editar um registro de destaques. O backend também deve ser ajustado para salvar corretamente todos esses campos no banco a partir da ação de inserção/clonagem.
2. Placeholder #template_placeholder_option# Exibido Literalmente
-
Problema: O placeholder
#template_placeholder_option#na tela de edição não está sendo substituído no backend PHP, aparecendo como texto bruto no HTML. -
Ajuste: Em
publisher-highlights.php, realizar a substituição da tag#template_placeholder_option#pela tradução padrão de placeholder de templates (usandogestor_variaveisdo móduloadmin-templatespara carregar a opção padrão correspondente) nas rotas de adicionar, editar e clonar.
3. Dropdown template_id Vazio (Modelos do Tipo publisher-highlights)
-
Problema: O select de Modelo (Recurso)
template_idnão lista os templates disponíveis comtarget = 'publisher-highlights', embora os dados existam corretamente na tabelatemplates. -
Ajuste: Em
publisher-highlights.php, implementar a listagem dinâmica de templates no dropdown. Realizar uma consulta na tabelatemplatesondestatus = 'A',languageseja a linguagem atual etarget = 'publisher-highlights', ordenando pelo nome. Preencher o placeholder#template_id_options#no HTML e marcar comoselectedo template ativo do registro na tela de edição.
4. Visibilidade Dinâmica do Bloco "Mapeamento de Variáveis"
-
Problema: O bloco visual de mapeamento de variáveis é renderizado mesmo quando nenhum modelo (recurso) está selecionado no dropdown anterior.
-
Ajuste: O bloco com ID ou classe
.template-options-wrapper(incluindo seu cabeçalho "Mapeamento de Variáveis") deve iniciar comdisplay: noneou ocultado por padrão. No arquivopublisher-highlights.js, monitorar a seleção do selecttemplate_id: exibir o bloco de mapeamento somente se houver um template selecionado e ocultá-lo se a seleção for limpa.
5. Configuração de Ordenação na Regra de Alimentação "Automática"
-
Problema: Ao selecionar a regra de alimentação "Automática (últimas publicações)", não há uma forma de selecionar a ordenação desejada dos dados.
-
Ajuste:
-
Adicionar um novo dropdown de ordenação no formulário que só aparece quando a regra de alimentação for "Automática" (
latest). -
Opções de ordenação a disponibilizar:
-
Ordem alfabética crescente (
title_asc->ORDER BY p.nome ASC) -
Ordem alfabética decrescente (
title_desc->ORDER BY p.nome DESC) -
Por data crescente (
date_asc->ORDER BY p.data_modificacao ASC) -
Por data decrescente (
date_desc->ORDER BY p.data_modificacao DESC) -
Salvar essa opção no JSON de configuração no campo
fields_schema.order_by. -
Adaptar o backend de renderização (
publisher-highlights.widget.php) para obter essa opção e aplicá-la à consulta do banco de dados na função de busca de publicações do widget.
-
6. Autocomplete com Busca Múltipla (Fomantic UI) na Regra "Manual"
-
Problema: Para a regra "Manual", atualmente o usuário tem que digitar manualmente os slugs em um
textarea(um por linha), o que é propenso a erros. -
Ajuste:
-
Substituir o
textareade slugs manuais por um dropdown de seleção múltipla com pesquisa do Fomantic UI (.ui.multiple.search.selection.dropdown). -
Este dropdown deve carregar/autocompletar as páginas ativas da tabela
paginasfiltradas pelopublisher_idselecionado no campo anterior. -
O dropdown deve renderizar os itens selecionados como tags removíveis ("x").
-
Ao salvar, serializar a lista ordenada de slugs selecionados no array
fields_schema.selected_itemsno input oculto. -
Ao carregar a página de Edição ou Clonagem, pré-selecionar (hidratar) as opções salvas anteriormente no dropdown.
-
Se o
publisher_idde origem for alterado, limpar a seleção atual do dropdown e reconfigurar os filtros de busca para apontarem para o novo publicador.
-
7. Ajuste de Variáveis no Editor HTML/CSS do Bloco
-
Problema: O editor HTML/CSS do bloco está exibindo na aba lateral as variáveis personalizadas brutas do publicador (
[[publisher#tipo#id]]) em vez das variáveis formatadas do próprio widget de destaques ([[item#nome_da_variavel]]). -
Ajuste:
-
Modificar a biblioteca
html-editor.phpe seu helper JavaScript (html-editor-interface.js) para suportar corretamente o alvopublisher-highlights. -
Quando o alvo for
publisher-highlights, a lista lateral de variáveis do editor deve identificar e exibir as variáveis do template do destaque (ex:[[item#titulo]],[[item#resumo]], etc.) com base no mapeamento configurado ou nos termos encontrados no HTML do template. -
O regex de detecção de variáveis no editor deve buscar por
[[item#variavel]](e não[[publisher#...]]), permitindo que a inserção ou cópia funcione com o padrão de loop do widget.
-