Commit Graph

11 Commits

Author SHA1 Message Date
75574b01f7 Adiciona ícone 'home' à extensão Twig de ícones acadêmicos
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 10:53:27 -03:00
fc1f4537e1 Adiciona extensão Twig com ícones SVG de plataformas acadêmicas
Cria AcademicIconsExtension com a função site_tools_academic_icon(name),
que retorna o SVG inline dos ícones Lattes (CNPq #005195), ORCID e
MathSciNet como Markup seguro, dispensando |raw nos templates.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 08:52:02 -03:00
27134fce19 Adiciona condição PageUserIsCurrentUser e atualiza README
- Nova condição de visibilidade de bloco (site_tools_page_owner):
  restringe exibição à situação em que o usuário logado é o dono da
  rota /user/{id}. Ativada por checkbox na UI; desativada por padrão.
- README atualizado com documentação da condição, do widget MSC 2020
  e do sub-módulo de migrate.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 07:13:07 -03:00
1d4d676fa6 Corrige erros de definição de biblioteca e esgotamento de memória no MSC 2020
Remove entrada de biblioteca vazia 'msc_term_select_widget' que causava
IncompleteLibraryDefinitionException. Otimiza buildTermData() para não
instanciar 597 entidades de taxonomia completas: usa loadTree() sem
entidades e busca field_msc_code diretamente na tabela do campo,
eliminando o fatal de memória esgotada (128 MB) ao abrir o modal
de configuração do campo.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 07:47:45 -03:00
d14aa22445 Refatora msc:export-translations para saída configurável
O comando passa a aceitar um argumento opcional output-path. Se
fornecido, grava o CSV no caminho indicado; se omitido, escreve em
stdout (permitindo redirecionamento com >). Mensagens de status
(contagens, erros) sempre vão para stderr via $this->io().

O comando não lê mais nem escreve no CSV do módulo: carrega todos os
termos msc_2020 do banco ordenados por field_msc_code e gera o CSV
inteiramente a partir do banco (header fixo, parent_code derivado do
comprimento do código).

Remove a dependência de ModuleExtensionList do construtor e do
drush.services.yml.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 09:20:09 -03:00
d33378c2f0 Adiciona termos de nível 3 ao vocabulário MSC 2020
Expande o CSV de ~597 para ~6100 termos incorporando o terceiro nível
hierárquico (códigos de 5 caracteres, ex.: 03B05). Inclui as traduções
pt-br dos termos de nível 3 já no CSV.

Atualiza MscTermListFormatter e MscTermSelectWidget para suportar a
hierarquia de três níveis, adiciona biblioteca CSS dedicada ao formatter
e adiciona o schema de configuração do formatter.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 09:19:55 -03:00
706c2bd737 Adiciona formatter de lista hierárquica para o vocabulário MSC 2020
MscTermListFormatter agrupa os termos selecionados por categoria pai,
exibindo o pai como item de primeiro nível e os filhos como sub-lista.
Pais não selecionados diretamente são carregados automaticamente para
servir de cabeçalho do grupo. Inclui opção "Link para a entidade
referenciada" para linkar os rótulos às páginas dos termos.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 15:04:39 -03:00
7631ef0484 Adiciona widget de seleção em cascata para o vocabulário MSC 2020
Implementa MscTermSelectWidget, um FieldWidget para campos entity_reference
apontando para o vocabulário msc_2020. Dois selects encadeados: o primeiro
lista as 63 categorias pai; o segundo é reconstruído via Drupal AJAX (#ajax)
ao mudar o pai, listando os subcampos da categoria selecionada mais a opção
"área geral (sem subcampo)".

O valor salvo no campo é o TID do segundo select. O estado dos selects é
preservado em rebuilds AJAX (ex.: "Add another item") lendo getUserInput(),
que não é afetado pelo #limit_validation_errors do botão.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 14:46:16 -03:00
38ff0019f4 Adiciona sub-módulos site_tools_msc_2020 e site_tools_msc_2020_migrate
- site_tools_msc_2020: vocabulário de taxonomia MSC 2020 (Mathematics
    Subject Classification) com campo field_msc_code e tradução pt-br
    habilitada via config/optional
  - site_tools_msc_2020_migrate: migrations CSV para importação dos 597
    termos hierárquicos em inglês (msc_2020_terms) e tradução pt-br
    (msc_2020_terms_pt_br); caminho do CSV resolvido dinamicamente via
    hook_migration_plugins_alter()
2026-03-13 10:27:30 -03:00
b34ffc86f0 Adiciona documentação do ShareLinksBlock ao README
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 08:06:20 -03:00
0e839574ab Initial commit
Módulo site_tools com ferramentas utilitárias para outros módulos:
- Bloco ShareLinks para compartilhamento em redes sociais
- Seção "Local Modules" no menu de configuração do Drupal

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 07:48:36 -03:00