Browse Source

Feat (GED): Configuração para apresentação do ged dentro do legislativo pelo iframe [AB#1326]

pull/3858/head
KemuelAlves 4 months ago
parent
commit
6544912044
  1. 6
      sapl/context_processors.py
  2. 7
      sapl/materia/views_ged.py
  3. 1
      sapl/settings.py
  4. 2
      sapl/templates/index.html
  5. 18
      sapl/templates/materia/ged_historico.html

6
sapl/context_processors.py

@ -84,6 +84,12 @@ def pendencias_assinatura(request):
} }
def ged_configurado(request):
"""Injeta flag indicando se o GED (acervo histórico) está configurado."""
from sapl.materia.views_ged import GED_URL
return {'ged_configurado': bool(GED_URL)}
@cached_call("site-title", timeout=60 * 2) @cached_call("site-title", timeout=60 * 2)
def enable_sapn(request): def enable_sapn(request):
verbose_name = _('SGVP') \ verbose_name = _('SGVP') \

7
sapl/materia/views_ged.py

@ -2,10 +2,12 @@
View pública para acesso ao acervo histórico via GED (sistema legado). View pública para acesso ao acervo histórico via GED (sistema legado).
Issue #1326 / Task #1348 – Adicionar tela do GED dentro do Legislativo. Issue #1326 / Task #1348 – Adicionar tela do GED dentro do Legislativo.
""" """
from decouple import config
from django.shortcuts import render from django.shortcuts import render
from django.views.decorators.cache import cache_control from django.views.decorators.cache import cache_control
GED_URL = "https://franco-ged.up.railway.app/" # Sem default: se GED_URL não estiver no .env, retorna string vazia.
GED_URL = config('GED_URL', default='')
@cache_control(public=True, max_age=300) @cache_control(public=True, max_age=300)
@ -13,7 +15,8 @@ def ged_historico(request):
""" """
Exibe o sistema GED (acervo histórico matérias anteriores a 2026) Exibe o sistema GED (acervo histórico matérias anteriores a 2026)
incorporado em iframe. Acesso público, sem autenticação. incorporado em iframe. Acesso público, sem autenticação.
Se GED_URL não estiver configurado, exibe mensagem informativa.
""" """
return render(request, 'materia/ged_historico.html', { return render(request, 'materia/ged_historico.html', {
'ged_url': GED_URL, 'ged_url': GED_URL or '',
}) })

1
sapl/settings.py

@ -235,6 +235,7 @@ TEMPLATES = [
'sapl.context_processors.google_recaptcha_configured', 'sapl.context_processors.google_recaptcha_configured',
'sapl.context_processors.enable_sapn', 'sapl.context_processors.enable_sapn',
'sapl.context_processors.pendencias_assinatura', 'sapl.context_processors.pendencias_assinatura',
'sapl.context_processors.ged_configurado',
], ],
'debug': DEBUG 'debug': DEBUG
}, },

2
sapl/templates/index.html

@ -156,6 +156,7 @@
</div> </div>
</div> </div>
<!-- Acervo Histórico (GED) --> <!-- Acervo Histórico (GED) -->
{% if ged_configurado %}
<div class="homeBlock"> <div class="homeBlock">
<div class="card-icon"> <div class="card-icon">
<i class="fas fa-archive"></i> <i class="fas fa-archive"></i>
@ -168,6 +169,7 @@
</a> </a>
</div> </div>
</div> </div>
{% endif %}
<!-- Relatórios --> <!-- Relatórios -->
<div class="homeBlock"> <div class="homeBlock">

18
sapl/templates/materia/ged_historico.html

@ -62,6 +62,7 @@
{% block footer_container %}{% endblock %} {% block footer_container %}{% endblock %}
{% block content_container %} {% block content_container %}
{% if ged_url %}
<div id="ged-wrapper"> <div id="ged-wrapper">
<div id="ged-header"> <div id="ged-header">
@ -130,4 +131,21 @@
frame.addEventListener('load', function () { clearTimeout(timeout); }); frame.addEventListener('load', function () { clearTimeout(timeout); });
})(); })();
</script> </script>
{% else %}
<div style="display:flex; flex-direction:column; align-items:center; justify-content:center;
min-height: 60vh; text-align:center; padding: 40px 24px; color:#555;">
<i class="fas fa-archive" style="font-size:4rem; color:#adb5bd; margin-bottom:20px;"></i>
<h2 style="font-size:1.4rem; font-weight:700; color:#343a40; margin-bottom:12px;">
Acervo Histórico não disponível
</h2>
<p style="max-width:480px; font-size:.95rem; line-height:1.6; margin-bottom:24px;">
Esta instalação não possui proposições legadas configuradas.<br>
Caso necessite acessar matérias de sistemas anteriores, entre em contato com o administrador do sistema.
</p>
<a href="/" class="btn btn-outline-secondary">
<i class="fas fa-home"></i> Voltar à página inicial
</a>
</div>
{% endif %}
{% endblock content_container %} {% endblock content_container %}

Loading…
Cancel
Save