diff --git a/sapl/norma/views.py b/sapl/norma/views.py index 98825f4cf..21975f77a 100644 --- a/sapl/norma/views.py +++ b/sapl/norma/views.py @@ -258,7 +258,7 @@ class NormaCrud(Crud): def get_initial(self): initial = super().get_initial() - norma = NormaJuridica.objects.get(id=self.kwargs['pk']) + norma = NormaJuridica.objects.select_related("materia").get(id=self.kwargs['pk']) if norma.materia: initial['tipo_materia'] = norma.materia.tipo initial['ano_materia'] = norma.materia.ano @@ -267,9 +267,7 @@ class NormaCrud(Crud): return initial def form_valid(self, form): - norma_antiga = NormaJuridica.objects.get( - pk=self.kwargs['pk'] - ) + norma_antiga = NormaJuridica.objects.get(pk=self.kwargs['pk']) # Feito desta forma para que sejam materializados os assuntos # antigos diff --git a/sapl/templates/norma/normajuridica_form.html b/sapl/templates/norma/normajuridica_form.html index 91531c4d1..0355faee8 100644 --- a/sapl/templates/norma/normajuridica_form.html +++ b/sapl/templates/norma/normajuridica_form.html @@ -10,20 +10,23 @@ var tipo_materia = $("#id_tipo_materia").val(); var numero_materia = $("#id_numero_materia").val(); var ano_materia = $("#id_ano_materia").val(); - var tipo = $('#id_tipo').val(); - var ano = $('#id_ano').val(); - var numero = $('#id_numero').val(); - var ementa = $('#id_ementa').val(); + if (tipo_materia && numero_materia && ano_materia) { - $.get("/sessao/recuperar-materia", - {tipo_materia: tipo_materia, - numero_materia: numero_materia, - ano_materia: ano_materia}, - function(data, status) { - $("#id_ementa").val(data.ementa); - $("#id_indexacao").val(data.indexacao); - } - ); + $.get("/sessao/recuperar-materia", { + tipo_materia: tipo_materia, + numero_materia: numero_materia, + ano_materia: ano_materia + }, (data, status) => { + $("#id_fundo_confirmacao_mudanca_ementa_indexacao").fadeIn(); + $("#id_sim_mudanca_ementa_indexacao").click(() => { + $("#id_ementa").val(data.ementa); + $("#id_indexacao").val(data.indexacao); + $("#id_fundo_confirmacao_mudanca_ementa_indexacao").hide(); + }); + $("#id_nao_mudanca_ementa_indexacao").click(() => { + $("#id_fundo_confirmacao_mudanca_ementa_indexacao").hide(); + }); + }); } } var fields = ["#id_tipo_materia", "#id_numero_materia", "#id_ano_materia"] @@ -36,12 +39,11 @@ var ano = $("#id_ano").val(); if (tipo) { - $.get("/norma/recuperar-numero-norma",{tipo: tipo, - ano: ano}, - function(data, status) { - $("#id_numero").val(data.numero); - $("#id_ano").val(data.ano); - }); + $.get("/norma/recuperar-numero-norma", { tipo: tipo, ano: ano }, + (data, status) => { + $("#id_numero").val(data.numero); + $("#id_ano").val(data.ano); + }); } } var fields = ["#id_tipo", "#id_ano"]; @@ -58,29 +60,57 @@ } }); - var modal_estilos = 'display: block;' - +'width: 85%; max-width: 600px;' - +'background: #fff; padding: 15px;' - +'border-radius: 5px;' - +'-webkit-box-shadow: 0px 6px 14px -2px rgba(0,0,0,0.75);' - +'-moz-box-shadow: 0px 6px 14px -2px rgba(0,0,0,0.75);' - +'box-shadow: 0px 6px 14px -2px rgba(0,0,0,0.75);' - +'position: fixed;' - +'top: 50%; left: 50%;' - +'transform: translate(-50%,-50%);' - +'z-index: 99999999; text-align: center'; - - var fundo_modal_estilos = 'top: 0; right: 0;' - +'bottom: 0; left: 0; position: fixed;' - +'background-color: rgba(0, 0, 0, 0.6); z-index: 99999999;' - +'display: none;'; - - var meu_modal = '