From b2f9f1fca0d6d515c1611a3d641f5284a4f47404 Mon Sep 17 00:00:00 2001 From: Samuel Veiga Rangel Date: Fri, 5 Dec 2025 11:25:31 -0300 Subject: [PATCH 1/6] Cria uma estrutura mais organizada para os templates de sobre o periodico --- journalpage/static/journalpage/css/about.css | 41 ++ journalpage/templates/journalpage/about.html | 591 ++---------------- .../includes/about/author_instructions.html | 52 ++ .../includes/about/bibliographic_info.html | 116 ++++ .../includes/about/breadcrumbs.html | 48 ++ .../includes/about/editorial_board.html | 34 + .../includes/about/editorial_policy.html | 87 +++ .../includes/about/sidebar_menu.html | 126 ++++ 8 files changed, 553 insertions(+), 542 deletions(-) create mode 100644 journalpage/static/journalpage/css/about.css create mode 100644 journalpage/templates/journalpage/includes/about/author_instructions.html create mode 100644 journalpage/templates/journalpage/includes/about/bibliographic_info.html create mode 100644 journalpage/templates/journalpage/includes/about/breadcrumbs.html create mode 100644 journalpage/templates/journalpage/includes/about/editorial_board.html create mode 100644 journalpage/templates/journalpage/includes/about/editorial_policy.html create mode 100644 journalpage/templates/journalpage/includes/about/sidebar_menu.html diff --git a/journalpage/static/journalpage/css/about.css b/journalpage/static/journalpage/css/about.css new file mode 100644 index 000000000..f9fc2ba18 --- /dev/null +++ b/journalpage/static/journalpage/css/about.css @@ -0,0 +1,41 @@ +/* About page styles */ +ul.scielo__menu-contexto, +ul.scielo__menu-contexto ul { + list-style: none; +} + +ul.scielo__menu-contexto ul { + margin-bottom: 1rem; +} + +ul.scielo__menu-contexto .nav-link { + padding: 0; + color: gray; +} + +ul.scielo__menu-contexto .nav-link.active { + color: #3867ce; +} + +.sticky-top { + top: 80px; +} + +.bd-example h5, +.bd-example h4 { + margin-top: 3rem; +} + +.bd-example hr { + margin-top: 3rem; +} + +.bd-example ul { + margin-bottom: 3rem; +} + +a { + word-wrap: break-word; +} + + diff --git a/journalpage/templates/journalpage/about.html b/journalpage/templates/journalpage/about.html index c61a2d869..9d9c95632 100644 --- a/journalpage/templates/journalpage/about.html +++ b/journalpage/templates/journalpage/about.html @@ -4,567 +4,74 @@ {% load wagtailroutablepage_tags %} {% load wagtailcore_tags %} {% load custom_tags %} + {% block body_class %}journal about{% endblock %} + {% block content %} {% include "journalpage/includes/header.html" %} {% include "journalpage/includes/journal_info.html" %} {% include "journalpage/includes/levelMenu.html" %} - {% block main_content %} - - - - - - + +{% include "journalpage/includes/about/breadcrumbs.html" %} - - - {% include "journalpage/includes/contact_footer.html" %} - - {% include "journalpage/includes/footer.html" %} +{% endblock %} +{% include "journalpage/includes/contact_footer.html" %} +{% include "journalpage/includes/footer.html" %} {% endblock %} diff --git a/journalpage/templates/journalpage/includes/about/author_instructions.html b/journalpage/templates/journalpage/includes/about/author_instructions.html new file mode 100644 index 000000000..bff6f02c0 --- /dev/null +++ b/journalpage/templates/journalpage/includes/about/author_instructions.html @@ -0,0 +1,52 @@ +{% load i18n %} +{% load wagtailcore_tags %} + +
+

{% trans 'INSTRUÇÕES PARA OS AUTORES' %}

+ +
{% trans 'Tipos de documentos aceitos' %}
+ + +
{% trans 'Contribuição dos Autores' %}
+{% for ac in authors_contributions %} + {{ ac.rich_text|richtext }} +{% endfor %} + +
{% trans 'Formato de envio dos artigos' %}
+ +
{% trans 'Ativos digitais' %}
+{% for da in digital_assets %} + {{ da.rich_text|richtext }} +{% endfor %} +
{% trans 'Citações e referências' %}
+{% for cr in citations_and_references %} + {{ cr.rich_text|richtext }} +{% endfor %} +
{% trans 'Documentos Suplementares Necessários para Submissão' %}
+{% for sds in supp_docs_submission %} + {{ sds.rich_text|richtext }} +{% endfor %} +
{% trans 'Declaração de Financiamento' %}
+{% for fs in financing_statement %} + {{ fs.rich_text|richtext }} +{% endfor %} +
{% trans 'Agradecimentos' %}
+{% for ak in acknowledgements %} + {{ ak.rich_text|richtext }} +{% endfor %} +
{% trans 'Informações adicionais' %}
+{% for ai in additional_information %} + {{ ai.rich_text|richtext }} +{% endfor %} +

+ {% trans '*dados precisam estar disponíveis em alfabeto romano' %} +

+ diff --git a/journalpage/templates/journalpage/includes/about/bibliographic_info.html b/journalpage/templates/journalpage/includes/about/bibliographic_info.html new file mode 100644 index 000000000..fae8a4387 --- /dev/null +++ b/journalpage/templates/journalpage/includes/about/bibliographic_info.html @@ -0,0 +1,116 @@ +{% load i18n %} +{% load wagtailcore_tags %} + + + +

{% trans 'Sobre o periódico' %}

+
{% trans 'Ficha Bibliográfica' %}
+ {% trans 'Título do periódico conforme registro do ISSN:' %} + {{ journal.official.title }} +
+ {% trans 'Título abreviado:' %} + {{ journal.short_title }} +
+ {% trans 'Publicação de:' %} + {% for publisher in journal.publisher_history.all %} + {% if publisher.organization %} + {{ publisher.organization.name }} + {% endif %} + {% endfor %} +
+ {% trans 'Modelo de publicação:' %} + {{ journal.get_publishing_model_display }} +
+ {% trans 'Ano de criação do periódico:' %} {% if journal.official.initial_year %} {{ journal.official.initial_year }} {% endif %} +
+ {% trans 'Área:' %} {% for study_area in journal.subject.all %} {{ study_area }} {% endfor %} +
+ {% if journal.official.issn_print %} + {% trans 'Versão impressa:' %} + {{ journal.official.issn_print }} +
+ {% endif %} + {% if journal.official.issn_electronic %} + {% trans 'Versão on-line ISSN:' %} + {{ journal.official.issn_electronic }} +
+ {% endif %} + +
{% trans 'Missão' %}
+{% for m in mission %} + {{ m.rich_text|richtext }} +{% endfor %} +
{% trans 'Breve Histórico' %}
+{% for bf in brief_history %} + {{ bf.rich_text|richtext }} +{% endfor %} +
{% trans 'Foco e escopo' %}
+{% for hs in focus_and_scope %} + {{ hs.rich_text|richtext }} +{% endfor %} +
{% trans 'Contato' %}
+ {% trans 'Endereço completo da unidade / instituição responsável pelo periódico:' %} + {{ journal.contact_address }}
+ {% trans 'Cidade:' %} + {{journal.contact_location.city}}
+ {% trans 'Estado:' %} + {{journal.contact_location.state}}
+ {% trans 'País:' %} + {{journal.contact_location.country}}
+ {% trans 'E-mail:' %} + {% for email in journal.journal_email.all %} + {{email.email}}
+ {% endfor%} +
{% trans 'Websites e Mídias Sociais' %}
+ +
{% trans 'Fontes de indexação' %}
+ +
{% trans 'Patrocinadores e agências de Fomento' %}
+ + + +
{% trans 'Preservação digital' %}
+ {% if digital_preservation_clockss %} + +
+ + + + + +
+ {% endif%} + {% trans 'Preservação digital' %} (SciELO): +
+ {% for dp in digital_pa %} + {{ dp.name }} {{ dp.acronym }} | {{ dp.url }} + {% endfor %} +
+ {% trans 'Outros tipos de preservação digital:' %} + {% for digital_preservation in digital_preservation %} + {{ digital_preservation.rich_text|richtext }} + {% endfor %} + + + diff --git a/journalpage/templates/journalpage/includes/about/breadcrumbs.html b/journalpage/templates/journalpage/includes/about/breadcrumbs.html new file mode 100644 index 000000000..83fcc1cca --- /dev/null +++ b/journalpage/templates/journalpage/includes/about/breadcrumbs.html @@ -0,0 +1,48 @@ +{% load i18n %} +{% load wagtailroutablepage_tags %} + + + + + + + diff --git a/journalpage/templates/journalpage/includes/about/editorial_board.html b/journalpage/templates/journalpage/includes/about/editorial_board.html new file mode 100644 index 000000000..982dcb09b --- /dev/null +++ b/journalpage/templates/journalpage/includes/about/editorial_board.html @@ -0,0 +1,34 @@ +{% load i18n %} +{% load custom_tags %} + +
+

{% trans 'CORPO EDITORIAL' %}

+ + +{% for role, role_display in role_editorial_board %} +

{{ role_display }}

+ +{% endfor %} + diff --git a/journalpage/templates/journalpage/includes/about/editorial_policy.html b/journalpage/templates/journalpage/includes/about/editorial_policy.html new file mode 100644 index 000000000..4f5ee2be8 --- /dev/null +++ b/journalpage/templates/journalpage/includes/about/editorial_policy.html @@ -0,0 +1,87 @@ +{% load i18n %} +{% load wagtailcore_tags %} + +
+

{% trans 'Política editorial' %}

+ +
{% trans 'Conformidade com a Ciência Aberta' %}
+ {% if journal.url_oa %} + {{ journal.url_oa }} + {% endif %} + {% for open_science in open_science_compliance %} + {{ open_science.rich_text|richtext }} + {% endfor %} +
{% trans 'Dados abertos' %}
+ {% for od in open_data %} + {{ od.rich_text|richtext }} + {% endfor %} +
{% trans 'Preprint' %}
+ {% for p in preprint %} + {{ p.rich_text|richtext }} + {% endfor %} +
{% trans 'Peer review informado' %}
+ + {% for r in review %} + {{ r.rich_text|richtext }} + {% endfor %} + + +
{% trans 'Ética' %}
+ +
{% trans 'Comitê de Ética' %}
+{% for ec in ecommittee %} + {{ ec.rich_text|richtext }} +{% endfor %} +
{% trans 'Direitos Autorais' %}
+{% for c in copyright %} + {{ c.rich_text|richtext }} +{% endfor %} +
{% trans 'Propriedade Intelectual' %}
+ +
{% trans 'Política de Ética e Más condutas' %}
+

+ {% trans 'Política de retratação:' %} +

+{% for p in policies %} + {{ p.rich_text|richtext }} +{% endfor %} +
{% trans 'Política sobre Conflito de Interesses' %}
+ +
{% trans 'Questões de gênero' %}
+ +
{% trans 'Licença' %}
+ +
{{ journal.journal_use_license.license_type }} + +
{% trans 'Cobrança de taxas' %}
+ + diff --git a/journalpage/templates/journalpage/includes/about/sidebar_menu.html b/journalpage/templates/journalpage/includes/about/sidebar_menu.html new file mode 100644 index 000000000..2090a4bb1 --- /dev/null +++ b/journalpage/templates/journalpage/includes/about/sidebar_menu.html @@ -0,0 +1,126 @@ +{% load i18n %} +{% load wagtailroutablepage_tags %} + + + From b41ac074dc31d13f03c5d478050ff42daa5ef54f Mon Sep 17 00:00:00 2001 From: Samuel Veiga Rangel Date: Fri, 5 Dec 2025 11:26:00 -0300 Subject: [PATCH 2/6] Adiciona digital_preservation e open_science_compliance --- journalpage/models.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/journalpage/models.py b/journalpage/models.py index 64c04f079..44f2f4ae7 100644 --- a/journalpage/models.py +++ b/journalpage/models.py @@ -71,10 +71,12 @@ def journal_bibliographic_info_page(self, request, collection_acron3, acron): financing_statement = journal.financing_statement.get_object_in_preferred_language(language=language) acknowledgements = journal.acknowledgements.get_object_in_preferred_language(language=language) additional_information = journal.additional_information.get_object_in_preferred_language(language=language) - digital_preservation = journal.digital_pa.all() + digital_pa = journal.digital_pa.all() + digital_preservation = journal.digital_preservation.get_object_in_preferred_language(language=language) ethics = journal.ethics.get_object_in_preferred_language(language=language) fee_charging = journal.fee_charging.get_object_in_preferred_language(language=language) sponsor_history = journal.sponsor_history.all() + open_science_compliance = journal.open_science_compliance.get_object_in_preferred_language(language=language) context = { "journal": journal, @@ -101,12 +103,14 @@ def journal_bibliographic_info_page(self, request, collection_acron3, acron): "acknowledgements": acknowledgements, "additional_information": additional_information, "digital_preservation": digital_preservation, - "digital_preservation_clockss": digital_preservation.filter(acronym="CLOCKSS"), + "digital_pa": digital_pa, + "digital_preservation_clockss": digital_pa.filter(acronym="CLOCKSS"), "ethics": ethics, "fee_charging": fee_charging, "sponsor_history": sponsor_history, "editorial_board": editorial_board, "role_editorial_board": ROLE, + "open_science_compliance": open_science_compliance, # Current e available language "language": str(self.locale), "translations": context["available_translations"], From d3a196aab1fecf746a5caad07bcfdc03cc12dd8f Mon Sep 17 00:00:00 2001 From: Samuel Veiga Rangel Date: Fri, 5 Dec 2025 11:33:30 -0300 Subject: [PATCH 3/6] =?UTF-8?q?muda=20mission,=20history=20e=20focus=20de?= =?UTF-8?q?=20posi=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- journal/models.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/journal/models.py b/journal/models.py index d16b8d257..0c6077a58 100755 --- a/journal/models.py +++ b/journal/models.py @@ -622,6 +622,9 @@ def autocomplete_custom_queryset_filter(search_term): ] panels_scope_and_about = [ + InlinePanel("mission", label=_("Mission"), classname="collapsed"), + InlinePanel("history", label=_("Brief History"), classname="collapsed"), + InlinePanel("focus", label=_("Focus and Scope"), classname="collapsed"), AutocompletePanel("indexed_at"), AutocompletePanel("additional_indexed_at"), AutocompletePanel("subject"), @@ -629,9 +632,6 @@ def autocomplete_custom_queryset_filter(search_term): InlinePanel("thematic_area", label=_("Thematic Areas"), classname="collapsed"), AutocompletePanel("wos_db"), AutocompletePanel("wos_area"), - InlinePanel("mission", label=_("Mission"), classname="collapsed"), - InlinePanel("history", label=_("Brief History"), classname="collapsed"), - InlinePanel("focus", label=_("Focus and Scope"), classname="collapsed"), ] panels_institutions = [ From 3b32fd60fa41f4001c573f73ab51227568308262 Mon Sep 17 00:00:00 2001 From: Samuel Veiga Rangel Date: Fri, 5 Dec 2025 11:55:35 -0300 Subject: [PATCH 4/6] - remove campo url_oa - Altera ordem de open_science_compliance - muda verbose name de digital_pa --- journal/models.py | 23 ++++++----------------- journal/proxys.py | 11 +++++------ 2 files changed, 11 insertions(+), 23 deletions(-) diff --git a/journal/models.py b/journal/models.py index 0c6077a58..d0cbc262c 100755 --- a/journal/models.py +++ b/journal/models.py @@ -358,16 +358,6 @@ class Journal(CommonControlField, ClusterableModel): blank=True, ) - url_oa = models.URLField( - _("Open Science accordance form"), - null=True, - blank=True, - help_text=mark_safe( - _( - """Suggested form: https://wp.scielo.org/wp-content/uploads/Formulario-de-Conformidade-Ciencia-Aberta.docx""" - ) - ), - ) main_collection = models.ForeignKey( Collection, verbose_name=_("Main Collection"), @@ -579,7 +569,7 @@ class Journal(CommonControlField, ClusterableModel): digital_pa = models.ManyToManyField( "DigitalPreservationAgency", blank=True, - verbose_name=_("DigitalPreservationAgency"), + verbose_name=_("Digital Preservation (SciELO)"), ) doi_prefix = models.CharField(max_length=20, blank=True, null=True) valid = models.BooleanField(default=False, null=True, blank=True) @@ -669,7 +659,11 @@ def autocomplete_custom_queryset_filter(search_term): panels_open_science = [ FieldPanel("open_access"), - FieldPanel("url_oa"), + InlinePanel( + "open_science_compliance", + label=_("Open Science Compliance"), + classname="collapsed", + ), InlinePanel( "file_oa", label=_("Open Science accordance form"), classname="collapsed" ), @@ -677,11 +671,6 @@ def autocomplete_custom_queryset_filter(search_term): InlinePanel("open_data", label=_("Open data"), classname="collapsed"), InlinePanel("preprint", label=_("Preprint"), classname="collapsed"), InlinePanel("review", label=_("Peer review"), classname="collapsed"), - InlinePanel( - "open_science_compliance", - label=_("Open Science Compliance"), - classname="collapsed", - ), ] panels_notes = [InlinePanel("annotation", label=_("Notes"), classname="collapsed")] diff --git a/journal/proxys.py b/journal/proxys.py index 65313967d..58642b307 100644 --- a/journal/proxys.py +++ b/journal/proxys.py @@ -59,7 +59,11 @@ class JournalProxyEditor(Journal): panels_open_science = [ FieldPanel("open_access"), - FieldPanel("url_oa"), + InlinePanel( + "open_science_compliance", + label=_("Open Science Compliance"), + classname="collapsed", + ), InlinePanel( "file_oa", label=_("Open Science accordance form"), classname="collapsed" ), @@ -67,11 +71,6 @@ class JournalProxyEditor(Journal): InlinePanel("open_data", label=_("Open data"), classname="collapsed"), InlinePanel("preprint", label=_("Preprint"), classname="collapsed"), InlinePanel("review", label=_("Peer review"), classname="collapsed"), - InlinePanel( - "open_science_compliance", - label=_("Open Science Compliance"), - classname="collapsed", - ), ] panels_policy = [ From 59778a7782d525499127838cccdc44fbfde81182 Mon Sep 17 00:00:00 2001 From: Samuel Veiga Rangel Date: Fri, 5 Dec 2025 11:55:52 -0300 Subject: [PATCH 5/6] remove journal.url_oa --- .../templates/journalpage/includes/about/editorial_policy.html | 3 --- 1 file changed, 3 deletions(-) diff --git a/journalpage/templates/journalpage/includes/about/editorial_policy.html b/journalpage/templates/journalpage/includes/about/editorial_policy.html index 4f5ee2be8..14e27c9db 100644 --- a/journalpage/templates/journalpage/includes/about/editorial_policy.html +++ b/journalpage/templates/journalpage/includes/about/editorial_policy.html @@ -5,9 +5,6 @@

{% trans 'Política editorial' %}

{% trans 'Conformidade com a Ciência Aberta' %}
- {% if journal.url_oa %} - {{ journal.url_oa }} - {% endif %} {% for open_science in open_science_compliance %} {{ open_science.rich_text|richtext }} {% endfor %} From a30a2851adf5cbac73c313668670034b273e142c Mon Sep 17 00:00:00 2001 From: Samuel Veiga Rangel Date: Fri, 5 Dec 2025 11:56:02 -0300 Subject: [PATCH 6/6] migration --- ...journal_url_oa_alter_journal_digital_pa.py | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 journal/migrations/0055_remove_journal_url_oa_alter_journal_digital_pa.py diff --git a/journal/migrations/0055_remove_journal_url_oa_alter_journal_digital_pa.py b/journal/migrations/0055_remove_journal_url_oa_alter_journal_digital_pa.py new file mode 100644 index 000000000..405570896 --- /dev/null +++ b/journal/migrations/0055_remove_journal_url_oa_alter_journal_digital_pa.py @@ -0,0 +1,26 @@ +# Generated by Django 5.2.7 on 2025-12-05 14:53 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("journal", "0054_journaltableofcontents"), + ] + + operations = [ + migrations.RemoveField( + model_name="journal", + name="url_oa", + ), + migrations.AlterField( + model_name="journal", + name="digital_pa", + field=models.ManyToManyField( + blank=True, + to="journal.digitalpreservationagency", + verbose_name="Digital Preservation (SciELO)", + ), + ), + ]