def edit(request, normativa_jurisdiccional_id):
    " Edición de los datos de una normativa jurisdiccional "
    normativa_jurisdiccional = NormativaJurisdiccional.objects.get(pk=normativa_jurisdiccional_id)

    estado_actual = normativa_jurisdiccional.estado
    if estado_actual is None:
        estado_actual_id = None
    else:
        estado_actual_id = estado_actual.id

    if request.method == "POST":
        form = NormativaJurisdiccionalForm(
            request.POST, instance=normativa_jurisdiccional, initial={"estado": estado_actual_id}
        )
        if form.is_valid():
            normativa_jurisdiccional = form.save()

            "Cambiar el estado?"
            if int(request.POST["estado"]) is not estado_actual_id:
                normativa_jurisdiccional.registrar_estado()

            request.set_flash("success", "Datos actualizados correctamente.")
            return HttpResponseRedirect(reverse("normativaJurisdiccionalEdit", args=[normativa_jurisdiccional_id]))
        else:
            request.set_flash("warning", "Ocurrió un error actualizando los datos.")
    else:
        form = NormativaJurisdiccionalForm(instance=normativa_jurisdiccional, initial={"estado": estado_actual_id})

        form.fields["estado"].empty_label = None
    return my_render(request, "titulos/normativa_jurisdiccional/edit.html", {"form": form, "is_new": False})
def create(request):
    " Crear nueva normativa "

    if request.method == "POST":
        form = NormativaJurisdiccionalForm(request.POST)
        if form.is_valid():
            normativa_jurisdiccional = form.save(commit=False)
            normativa_jurisdiccional.jurisdiccion = request.get_perfil().jurisdiccion()
            normativa_jurisdiccional.save()

            normativa_jurisdiccional.registrar_estado()

            request.set_flash("success", "Datos guardados correctamente.")

            # redirigir a edit
            return HttpResponseRedirect(reverse("normativaJurisdiccionalEdit", args=[normativa_jurisdiccional.id]))
        else:
            request.set_flash("warning", "Ocurrió un error guardando los datos.")
    else:
        form = NormativaJurisdiccionalForm()

    return my_render(request, "titulos/normativa_jurisdiccional/new.html", {"form": form, "is_new": True})