Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
556812b
Adiciona os parâmetros `math_js` (renderizar equações) e `math_elem_p…
robertatakenaka Aug 5, 2022
49bc992
Adiciona parâmetros para math_js, math_element_preference, xslt (vers…
robertatakenaka Aug 6, 2022
ffafe79
Faz cópia de htmlgenerator/v2.0
robertatakenaka Aug 6, 2022
e2c1657
Cria a xslt principal da versão 3.0
robertatakenaka Aug 6, 2022
df573c0
Adiciona bootstrap.css e article.css
robertatakenaka Aug 6, 2022
93e99fb
Trocadas as classes css do elemento article e do elemento articleMenu…
robertatakenaka Aug 9, 2022
03101cc
Troca dos atributos para abrir os modais
robertatakenaka Aug 9, 2022
56aa3c7
Troca `h4[@class="modal-title"]` por `h5[@class="modal-title"]`
robertatakenaka Aug 9, 2022
022bc73
Troca de posição de `h5[@class="modal-title"]` com `button`
robertatakenaka Aug 9, 2022
0afc3c0
Modifica e adiciona os atributos de button e remove alguns elementos …
robertatakenaka Aug 9, 2022
d03da11
Reformata o trecho para ficar evidente a aplicação do design system
robertatakenaka Aug 9, 2022
030c20c
Troca o valor do atributo `class`, de `sci-ico-fileFigure` por `mater…
robertatakenaka Aug 9, 2022
92ee115
Move o link para dentro de `h5`
robertatakenaka Aug 9, 2022
4d18286
Troca o "texto" do link
robertatakenaka Aug 9, 2022
71bcf6d
Troca `"material-icons-outlined` por `material-icons-outlined`
robertatakenaka Aug 9, 2022
bd892ad
Ajusta a formatação
robertatakenaka Aug 9, 2022
452ecd3
Troca o elemento span
robertatakenaka Aug 9, 2022
1a585a2
Troca `sci-ico-link`
robertatakenaka Aug 9, 2022
927f8e9
Reformata
robertatakenaka Aug 9, 2022
9f24dbd
Adiciona o atributo href e modifica o valor de class
robertatakenaka Aug 9, 2022
4b5ea95
Reformata
robertatakenaka Aug 9, 2022
4d556dc
Troca `span` por `img` e altera seus atributos
robertatakenaka Aug 9, 2022
cd443c5
Deixa configurável o local onde ficarão as imagens relacionadas com o…
robertatakenaka Aug 9, 2022
a2d9e86
Troca h1 por h3, exceto para título do artigo
robertatakenaka Aug 9, 2022
176e736
Modifica a classe do contribGroup
robertatakenaka Aug 9, 2022
cd8f582
Remove trecho comentado
robertatakenaka Aug 9, 2022
3db9358
Troca span por div
robertatakenaka Aug 9, 2022
1790607
Troca link por button
robertatakenaka Aug 9, 2022
51b92f5
Cria templates para apresentar (1) dados gerais de autor e (2) dados …
robertatakenaka Aug 9, 2022
d19a84c
Aplica os templates criados para apresentar os dados gerais e os dado…
robertatakenaka Aug 9, 2022
e82d2be
Corrige chamada ao template
robertatakenaka Aug 9, 2022
5ee9f03
Coloca os arquivos relacionados com htmlgenerator XSL v2.0 na pasta v2.0
robertatakenaka Aug 15, 2022
e5051db
Cria uma cópia da pasta v2.0 e renomeia para v3.0
robertatakenaka Aug 15, 2022
abf3189
Adiciona translator
robertatakenaka Aug 15, 2022
0aae315
Corrige a seleção de CSS
robertatakenaka Aug 15, 2022
fd3bde9
Adiciona o parâmetro que indica o caminho das imagens do CSS e deixa …
robertatakenaka Aug 15, 2022
5a68154
Ajusta para gerar as versão de html 2.0 e 3.0
robertatakenaka Aug 15, 2022
0d3405a
Remove a separação por versão de xsl
robertatakenaka Aug 15, 2022
3f1717e
Arquivos gerados na versão 2.0 e na 3.0 (Design System)
robertatakenaka Aug 15, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions packtools/catalogs/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,12 @@
'HTML_GEN_XSLTS': {
'root-html-1.2.xslt': os.path.join(_CWD, 'htmlgenerator/root-html-1.2.xslt'),
'root-html-2.0.xslt': os.path.join(_CWD, 'htmlgenerator/root-html-2.0.xslt'),
'root-html-3.0.xslt': os.path.join(_CWD, 'htmlgenerator/root-html-3.0.xslt'),
},
'HTML_GEN_BOOTSTRAP_CSS_PATH': os.path.join(_CWD,
'htmlgenerator/v3.0/css/bootstrap.css'),
'HTML_GEN_ARTICLE_CSS_PATH': os.path.join(_CWD,
'htmlgenerator/v3.0/css/article.css'),
'HTML_GEN_DEFAULT_PRINT_CSS_PATH': os.path.join(_CWD,
'htmlgenerator/static/scielo-bundle-print.css'),
'HTML_GEN_DEFAULT_CSS_PATH': os.path.join(_CWD,
Expand Down
10 changes: 10 additions & 0 deletions packtools/catalogs/htmlgenerator/root-html-3.0.xslt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:mml="http://www.w3.org/1998/Math/MathML"
exclude-result-prefixes="xlink mml">

<xsl:include href="v3.0/article.xsl"/>

</xsl:stylesheet>
200 changes: 200 additions & 0 deletions packtools/catalogs/htmlgenerator/v3.0/article-meta-abstract.xsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,200 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">

<xsl:template match="article" mode="article-meta-abstract">
<!-- apresenta todos os resumos que existir -->
<xsl:variable name="q" select="count(.//abstract[.//text()])+count(.//trans-abstract[.//text()])"/>
<xsl:if test="$q &gt; 0">

<xsl:choose>
<xsl:when test=".//abstract//list">
<!-- é highlights mas não está usando o atributo abstract-type -->
<!-- apresenta os resumos do tipo key-points (highlights) -->
<xsl:apply-templates select="." mode="abstract-highlights"/>

<!-- apresenta a âncora e o título, ou seja, Abstract, Resumo, ou Resumen -->
<xsl:apply-templates select="." mode="create-anchor-and-title-for-abstracts-without-title"/>

<!-- apresenta os resumos diferentes de key-points -->
<xsl:apply-templates select="." mode="abstract-not-highlights"/>
</xsl:when>
<xsl:otherwise>
<!-- apresenta os resumos do tipo key-points (highlights) -->
<xsl:apply-templates select="." mode="abstract-key-points"/>

<!-- apresenta a âncora e o título, ou seja, Abstract, Resumo, ou Resumen -->
<xsl:apply-templates select="." mode="create-anchor-and-title-for-abstracts-without-title"/>

<!-- apresenta os resumos diferentes de key-points -->
<xsl:apply-templates select="." mode="abstract-not-key-points"/>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:template>

<xsl:template match="article" mode="abstract-key-points">
<!-- apresenta os resumos do tipo key-points (highlights) -->
<xsl:apply-templates select=".//abstract[@abstract-type='key-points']" mode="layout"/>
<xsl:apply-templates select=".//trans-abstract[@abstract-type='key-points']" mode="layout"/>
</xsl:template>

<xsl:template match="article" mode="abstract-not-key-points">
<!-- apresenta os resumos diferentes de key-points -->
<xsl:apply-templates select=".//abstract[not(@abstract-type) or @abstract-type!='key-points']|.//trans-abstract[not(@abstract-type) or @abstract-type!='key-points']" mode="layout"/>
</xsl:template>

<xsl:template match="article" mode="abstract-highlights">
<!-- apresenta os resumos do tipo highlights (highlights) -->
<xsl:apply-templates select=".//abstract[.//list]" mode="layout"/>
<xsl:apply-templates select=".//trans-abstract[.//list]" mode="layout"/>
</xsl:template>

<xsl:template match="article" mode="abstract-not-highlights">
<!-- apresenta os resumos diferentes de highlights -->
<xsl:apply-templates select=".//abstract[not(.//list)]|.//trans-abstract[not(.//list)]" mode="layout"/>
</xsl:template>

<xsl:template match="article" mode="article-meta-no-abstract-keywords">
<!-- Apresenta keywords para artigos sem resumo -->
<xsl:if test="not(.//abstract)">
<xsl:choose>
<xsl:when test=".//sub-article[@article-type='translation' and @xml:lang=$TEXT_LANG]//kwd-group">
<xsl:apply-templates select=".//sub-article[@article-type='translation' and @xml:lang=$TEXT_LANG]//kwd-group" mode="keywords"/>
</xsl:when>
<xsl:when test="front/article-meta//kwd-group">
<xsl:apply-templates select="front/article-meta//kwd-group" mode="keywords"/>
</xsl:when>
</xsl:choose>
</xsl:if>
</xsl:template>

<xsl:template match="article" mode="create-anchor-and-title-for-abstracts-without-title">
<xsl:variable name="q_titles" select="count(.//abstract[title])+count(.//trans-abstract[title])"/>
<xsl:if test="$q_titles = 0">
<xsl:variable name="q_abstracts" select="count(.//abstract[.//text()])+count(.//trans-abstract[.//text()])"/>

<!-- obtém o título traduzido para Abstracts ou Abstract -->
<xsl:variable name="title">
<xsl:apply-templates select="." mode="text-labels">
<xsl:with-param name="text">
<xsl:choose>
<xsl:when test="$q_abstracts=1">Abstract</xsl:when>
<xsl:otherwise>Abstracts</xsl:otherwise>
</xsl:choose>
</xsl:with-param>
</xsl:apply-templates>
</xsl:variable>

<!-- insere a âncora e o título -->
<div class="articleSection" data-anchor="{$title}">
<h3 class="articleSectionTitle"><xsl:value-of select="$title"/></h3>
</div>
</xsl:if>
</xsl:template>

<xsl:template match="*[contains(name(),'abstract')]" mode="index">
<xsl:param name="lang"/>
<xsl:if test="normalize-space(@xml:lang)=normalize-space($lang)"><xsl:value-of select="position()"/></xsl:if>
</xsl:template>

<xsl:template match="abstract | trans-abstract" mode="layout">
<xsl:variable name="lang" select="@xml:lang"/>
<xsl:variable name="index"><xsl:apply-templates select="..//*[contains(name(),'abstract') and title]" mode="index"><xsl:with-param name="lang" select="$lang"></xsl:with-param></xsl:apply-templates></xsl:variable>
<div>
<!-- Apresenta a âncora e o título, ou seja, Abstract, Resumo, ou Resumen -->
<xsl:apply-templates select="." mode="anchor-and-title"/>

<!-- Apresenta os demais elementos do resumo -->
<xsl:apply-templates select="*[name()!='title']"/>

<!--
Apresenta as palavras-chave no idioma correspondente, se aplicável
-->
<xsl:choose>
<xsl:when test="@abstract-type='key-points' or .//list">
<!-- para HIGHLIGHTS não apresentar keywords -->
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="." mode="keywords"/>
</xsl:otherwise>
</xsl:choose>
</div>
<xsl:if test="not(title)">
<hr/>
</xsl:if>
</xsl:template>

<xsl:template match="abstract[not(@xml:lang)] | trans-abstract[not(@xml:lang)]" mode="keywords">
<!-- apresenta as palavras-chaves no idioma de article/@xml:lang ou sub-article/@xml:lang -->
<xsl:variable name="lang">
<xsl:choose>
<xsl:when test="../../@xml:lang"><xsl:value-of select="../../@xml:lang"/></xsl:when>
<xsl:when test="../../../@xml:lang"><xsl:value-of select="../../../@xml:lang"/></xsl:when>
</xsl:choose>
</xsl:variable>
<xsl:apply-templates select="../kwd-group[@xml:lang=$lang]" mode="keywords"/>
</xsl:template>

<xsl:template match="abstract[@xml:lang] | trans-abstract[@xml:lang]" mode="keywords">
<!-- apresenta as palavras-chaves no idioma correspondente -->
<xsl:variable name="lang" select="@xml:lang"/>
<xsl:apply-templates select="../kwd-group[@xml:lang=$lang]" mode="keywords"/>
</xsl:template>

<xsl:template match="abstract[not(title)] | trans-abstract[not(title)]" mode="anchor-and-title">
</xsl:template>

<xsl:template match="abstract[title] | trans-abstract[title]" mode="anchor-and-title">
<!-- Apresenta a âncora e o título, ou seja, Abstract, Resumo, ou Resumen -->

<!-- âncora -->
<xsl:attribute name="class">articleSection</xsl:attribute>
<xsl:attribute name="data-anchor"><xsl:apply-templates select="." mode="title"/></xsl:attribute>
<xsl:if test="@xml:lang='ar'">
<xsl:attribute name="dir">rtl</xsl:attribute>
</xsl:if>

<!-- título -->
<h3>
<xsl:attribute name="class">articleSectionTitle</xsl:attribute>
<xsl:apply-templates select="." mode="title"></xsl:apply-templates>
</h3>
</xsl:template>

<xsl:template match="abstract/title | trans-abstract/title">
<xsl:apply-templates select="*|text()"/>
</xsl:template>

<xsl:template match="abstract/sec/title | trans-abstract/sec/title">
<h2><xsl:apply-templates select="*|text()"/></h2>
</xsl:template>

<xsl:template match="kwd-group"></xsl:template>
<xsl:template match="kwd-group" mode="keywords">
<p><xsl:apply-templates select="*"/></p>
</xsl:template>

<xsl:template match="kwd-group/title">
<strong><xsl:value-of select="."/></strong><br/>
</xsl:template>

<xsl:template match="kwd"><xsl:apply-templates select="*|text()"></xsl:apply-templates><xsl:if test="position()!=last()">; </xsl:if>
</xsl:template>

<xsl:template match="article" mode="article-meta-abstract-gs">
<!-- PÁGINA DO RESUMO -->
<!-- APRESENTA O RESUMO NO IDIOMA CORRESPONDENTE -->
<xsl:choose>
<xsl:when test="@xml:lang=$gs_abstract_lang">
<!-- idioma selecionado é o mesmo que o do texto completo -->
<xsl:apply-templates select=".//article-meta/abstract[(not(@abstract-type) or @abstract-type!='key-points') and not(.//list)]" mode="layout"/>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select=".//trans-abstract[@xml:lang=$gs_abstract_lang]" mode="layout"/>
<xsl:apply-templates select=".//sub-article[@xml:lang=$gs_abstract_lang]//abstract[(not(@abstract-type) or @abstract-type!='key-points') and not(.//list)]" mode="layout"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

</xsl:stylesheet>
Loading