fix: usa elocation-id no rodapé/CITE AS do PDF quando não há fpage/lpage - #1309
Open
Rossi-Luciano wants to merge 1 commit into
Open
fix: usa elocation-id no rodapé/CITE AS do PDF quando não há fpage/lpage#1309Rossi-Luciano wants to merge 1 commit into
Rossi-Luciano wants to merge 1 commit into
Conversation
Corrige parte da issue scieloorg#1302: artigos de publicacao continua (com elocation-id, sem fpage/lpage) mostravam ": -" no rodape e no CITE AS em vez do identificador eletronico. Adiciona location_label em extract_footer_data, calculado a partir de fpage/lpage quando presentes, ou de elocation-id como alternativa. Tambem remove o " | " inicial do rodape do Material Suplementar, que aparecia mesmo essa secao nunca recebendo numero de pagina (paginacao independente do corpo do artigo). Nao mexe na numeracao de pagina em si (start_page_number, mecanismo diferente entre a 1a pagina e as demais); fica para PR separado.
14 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
O que esse PR faz?
Corrige duas partes da issue #1302 (rodapé/CITE AS do PDF):
<elocation-id>para artigos de publicação contínua. Hoje, quando não há<fpage>/<lpage>, o rodapé e o CITE AS mostram: -./: -em vez do identificador eletrônico do artigo.|inicial do rodapé do Material Suplementar, que hoje aparece mesmo essa seção nunca recebendo número de página (sua paginação é independente do corpo do artigo).Este PR não mexe na numeração de página em si (o valor de
start_page_numberquando não háfpage, e a diferença de mecanismo entre a 1ª página, com texto estático, e as demais, com campoPAGEdo Word). Isso fica para um PR separado, ver "Algum cenário de contexto" abaixo.Onde a revisão poderia começar?
packtools/sps/formats/pdf/pipeline/xml.py::extract_footer_data, que ganha o campolocation_label({fpage}-{lpage}quando háfpage, senãoelocation_id, senão vazio). Depoispacktools/sps/formats/pdf/pipeline/docx.py, nos 4 pontos que antes montavamf'{fpage}-{lpage}'manualmente (docx_cite_as_pipe,docx_second_footer_pipe,docx_page_vol_issue_year_pipe,docx_supplementary_material_pipe).Como este poderia ser testado manualmente?
python -m packtools.sps.formats.pdf_generator \ -i tests/fixtures/pdf/a4.xml \ -l tests/fixtures/pdf/layout.docx \ -o /tmp/a4.pdf --libreoffice-binary libreofficePágina 1: o rodapé e o CITE AS devem mostrar
e282794em vez de-.python -m packtools.sps.formats.pdf_generator \ -i tests/fixtures/pdf/a1.xml \ -l tests/fixtures/pdf/layout.docx \ -o /tmp/a1.pdf --libreoffice-binary libreofficePáginas do Material Suplementar (12 a 15): o rodapé deve começar direto em
VOL., sem|solto no início.Testes automatizados:
pytest tests/sps/formats/pdf(oupython -m unittest discover -s tests/sps/formats/pdf -v).Algum cenário de contexto que queira dar?
Levantado a partir da issue #1302. Essa issue também descreve um problema de numeração de página (artigos sem
fpagedeveriam numerar a partir de 1 na primeira folha, e não na segunda). Esse ponto não está coberto aqui porque entra em conflito direto com o comportamento fixado emtest_rendered_page_layout.py::test_body_starts_page_one_without_fpage_defaults_to_one(adicionado pelos PRs #1295/#1296, que resolveram um problema de layout diferente e, como efeito colateral, assumiram um comportamento de numeração que a #1302 contesta). Fica para um PR à parte, que vai precisar revisar aquele teste.Screenshots
Antes/depois do CITE AS e rodapé de
a4.xml(publicação contínua, semfpage):Antes/depois do rodapé do Material Suplementar de
a1.xml:Quais são os tickets relevantes?
Refs #1302 (parcial: cobre elocation-id e rodapé do Material Suplementar; numeração de página fica para PR separado).
Referências
N/A
Segurança da informação (NSI.04)
Este PR manipula dados sensíveis ou pessoais (LGPD)?
Este PR altera autenticação, autorização, controle de acesso ou gerenciamento de sessão?
Este PR introduz, atualiza ou remove dependências de terceiros?
Este PR foi validado pelo pipeline de segurança (SonarQube / Trivy)?
Este PR concatena, monta ou executa comandos SQL, HTML ou JavaScript a partir de entrada externa?
Este PR expõe novos endpoints, telas ou serviços?
Algum segredo, senha, chave ou token está sendo adicionado ao código-fonte?