diff --git a/frontend/src/__global/scss/layouts/_globals.scss b/frontend/src/__global/scss/layouts/_globals.scss index 3cb9c6f82..86515b3be 100644 --- a/frontend/src/__global/scss/layouts/_globals.scss +++ b/frontend/src/__global/scss/layouts/_globals.scss @@ -183,6 +183,7 @@ small { hyphens: auto;*/ } + @media print { a[href]:after { content: none !important; diff --git a/frontend/src/__global/scss/libs/bootstrap/_nav_tabs.scss b/frontend/src/__global/scss/libs/bootstrap/_nav_tabs.scss new file mode 100644 index 000000000..fc0823637 --- /dev/null +++ b/frontend/src/__global/scss/libs/bootstrap/_nav_tabs.scss @@ -0,0 +1,89 @@ +@import "~bootstrap/scss/variables"; + +// Estilização do tab-content conectado ao nav-tabs (substitui inline style) +.nav-tabs + .tab-content { + border: 1px solid $nav-tabs-border-color; + border-top: 0; + border-radius: 0 0 $border-radius $border-radius; +} + +@media (max-width: 992px) { + .nav-tabs { + position: relative; + flex-direction: column; + border: 1px solid $nav-tabs-border-color; + border-radius: $border-radius; // Totalmente arredondado — parece um botão/select + background-color: $white; + overflow: hidden; // Recorta filhos nas bordas arredondadas + + // Seta indicando dropdown + &::after { + content: "▾"; + position: absolute; + right: 0.75rem; + top: 0.6rem; + font-size: 1rem; + color: $secondary; + pointer-events: none; + transition: transform 0.2s ease; + } + + // Oculta todos os itens por padrão + .nav-item { + display: none; + width: 100%; + + .nav-link { + border: none; + border-bottom: 1px solid $nav-tabs-border-color; + border-radius: 0; + width: 100%; + text-align: left; + padding-right: 2rem; + margin-bottom: 0; + + &.active { + background-color: $nav-tabs-link-active-bg; + color: $nav-tabs-link-active-color; + border-color: transparent; + } + + &:hover:not(.active) { + background-color: $light; + } + } + + &:last-child .nav-link { + border-bottom: none; + } + } + + // CSS nativo: exibe somente o item ativo (browsers com suporte a :has) + .nav-item:has(.nav-link.active) { + display: block; + } + + // Estado expandido: via :focus-within (nativo) ou .nav-tabs--open (fallback JS) + &:focus-within, + &.nav-tabs--open { + border-radius: $border-radius $border-radius 0 0; // Arredonda apenas topo quando aberto + overflow: visible; + z-index: $zindex-dropdown; + + &::after { + transform: rotate(180deg); + } + + .nav-item { + display: block; + } + } + } + + // Em mobile, tab-content é visualmente independente do nav-tabs (que vira um select) + .nav-tabs + .tab-content { + border-top: 1px solid $nav-tabs-border-color; + border-radius: $border-radius; // Rounding completo — desconectado do nav-tabs + margin-top: 0.5rem; + } +} diff --git a/frontend/src/__global/scss/libs/libs.scss b/frontend/src/__global/scss/libs/libs.scss index 76a4e7c73..4f3233661 100644 --- a/frontend/src/__global/scss/libs/libs.scss +++ b/frontend/src/__global/scss/libs/libs.scss @@ -1,2 +1,3 @@ @import "./bootstrap/nav_navbar"; +@import "./bootstrap/nav_tabs"; @import "./bootstrap/table"; diff --git a/sapl/parlamentares/forms.py b/sapl/parlamentares/forms.py index c53fb2db1..9ab426bed 100755 --- a/sapl/parlamentares/forms.py +++ b/sapl/parlamentares/forms.py @@ -772,6 +772,6 @@ class MesaDiretoraFilterSet(django_filters.FilterSet): self.form.helper = SaplFormHelper() self.form.helper.form_method = 'GET' self.form.helper.layout = Layout( - Fieldset(_('Escolha da Legislatura e da Sessão Legislativa'), + Fieldset(_('Escolha da Legislatura'), row0,) ) diff --git a/sapl/templates/parlamentares/mesadiretora_filter.html b/sapl/templates/parlamentares/mesadiretora_filter.html index d44256f6e..9da3d275c 100644 --- a/sapl/templates/parlamentares/mesadiretora_filter.html +++ b/sapl/templates/parlamentares/mesadiretora_filter.html @@ -5,58 +5,142 @@ {% if perms.add_mesadiretora %} {{ block.super }} {% else %} -
| Nome do Parlamentar | -Partido | -Cargo | -
|---|
|
-
- {% if p.parlamentar.fotografia %}
-
- |
- {{p.parlamentar.filiacao_atual}} | -{{p.cargo}} | +Nome do Parlamentar | +Partido | +Cargo |
|---|