Skip to content

Adicionar campo Acesso Aberto na aba Ciência Aberta #1291

@robertatakenaka

Description

@robertatakenaka

Descrição da tarefa

Adicionar o campo Acesso Aberto (texto + idioma) na aba Ciência Aberta do formulário de Journal.

Arquivos a modificar

  • journal/models.py - linhas 587-637: Adicionar InlinePanel para Acesso Aberto em panels_open_science
  • journal/proxys.py - linhas 57-94: Adicionar InlinePanel em JournalProxyEditor.panels_open_science
  • Criar novo model OpenAccess (RichTextWithLanguage) no journal/models.py

Subtarefas

  • Criar model OpenAccess (RichTextWithLanguage + ParentalKey para Journal)
  • Adicionar InlinePanel em panels_open_science do Journal
  • Adicionar InlinePanel em JournalProxyEditor
  • Criar migração do banco de dados
  • Garantir exibição condicionada conforme permissões
  • Testar integração com backend

Referências de código

  • core/journal/models.py

    Lines 587 to 637 in e886992

    valid = models.BooleanField(default=False, null=True, blank=True)
    autocomplete_search_field = "title"
    def autocomplete_label(self):
    return str(self)
    @staticmethod
    def autocomplete_custom_queryset_filter(search_term):
    user = get_current_user()
    if not user or not user.is_authenticated:
    return Journal.objects.none()
    queryset = Journal.objects
    if user.is_superuser:
    return queryset.filter(title__icontains=search_term)
    collections = get_current_collections()
    if not collections:
    return queryset.none()
    return (
    queryset.filter(title__icontains=search_term)
    .filter(
    Q(scielojournal__collection__in=collections)
    | Q(main_collection__in=collections)
    )
    .distinct()
    )
    base_form_class = CoreAdminModelForm
    panels_titles = [
    AutocompletePanel("official"),
    FieldPanel("title"),
    FieldPanel("short_title"),
    InlinePanel("other_titles", label=_("Other titles"), classname="collapsed"),
    ]
    panels_scope_and_about = [
    AutocompletePanel("indexed_at"),
    AutocompletePanel("additional_indexed_at"),
    AutocompletePanel("subject"),
    AutocompletePanel("subject_descriptor"),
    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"),
    ]
  • core/journal/proxys.py

    Lines 57 to 94 in e886992

    AutocompletePanel("vocabulary"),
    ]
    panels_open_science = [
    FieldPanel("open_access"),
    FieldPanel("url_oa"),
    InlinePanel(
    "file_oa", label=_("Open Science accordance form"), classname="collapsed"
    ),
    FieldPanel("journal_use_license"),
    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 = [
    InlinePanel(
    "ethics",
    label=_("Ethics"),
    classname="collapsed",
    ),
    InlinePanel(
    "ecommittee",
    label=_("Ethics Committee"),
    classname="collapsed",
    ),
    InlinePanel(
    "copyright",
    label=_("Copyright"),
    classname="collapsed",
    ),
    InlinePanel(
    "website_responsibility",

Parent: #1244

Metadata

Metadata

Labels

enhancementNew feature or request

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions