Example #1
0
def create(request):
    try:
        jurisdiccion_id = jurisdiccion_id=request.get_perfil().jurisdiccion().id
    except AttributeError:
        jurisdiccion_id = None
    if request.method == 'POST':
        form = SolicitudDatosBasicosForm(request.POST, jurisdiccion_id=jurisdiccion_id)
        if form.is_valid():
            solicitud = form.save(commit=False)
            solicitud.estado = EstadoSolicitud.objects.get(nombre=EstadoSolicitud.PENDIENTE)
            solicitud.jurisdiccion = request.get_perfil().jurisdiccion()
            solicitud.save()
            
            solicitud.registrar_estado()

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

            return HttpResponseRedirect(reverse('postituloSolicitudEdit', args=[solicitud.id]))
        else:
            request.set_flash('warning', 'Ocurrió un error guardando los datos.')
    else:
        form = SolicitudDatosBasicosForm(jurisdiccion_id=jurisdiccion_id)
    # Agrego el filtro por jurisdicción
    return my_render(request, 'postitulos/solicitud/new.html', {
        'form': form,
        'form_template': 'postitulos/solicitud/form_datos_basicos.html',
        'is_new': True,
        'page_title': 'Postítulo',
        'current_page': 'datos_basicos',
    })
Example #2
0
def edit(request, solicitud_id):
    """
    Edición de los datos de un título jurisdiccional.
    """
    solicitud = Solicitud.objects.get(pk=solicitud_id)
    
    if not __puede_editarse_solicitud(request, solicitud):
        request.set_flash('warning', 'No puede editarse la solicitud.')
        return HttpResponseRedirect(reverse('postituloSolicitudIndex'))
    
    estado_id = solicitud.estado_id
        
    if request.method == 'POST':
        form = SolicitudDatosBasicosForm(request.POST, instance=solicitud, jurisdiccion_id=solicitud.jurisdiccion_id)
        if form.is_valid():
            sol = form.save(commit=False)
            sol.id = solicitud.id
            sol.jurisdiccion_id = solicitud.jurisdiccion_id
            sol.estado_id = solicitud.estado_id
            form.save()

            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = SolicitudDatosBasicosForm(instance=solicitud, jurisdiccion_id=solicitud.jurisdiccion_id)
    return my_render(request, 'postitulos/solicitud/edit.html', {
        'form': form,
        'solicitud': solicitud,
        'form_template': 'postitulos/solicitud/form_datos_basicos.html',
        'is_new': False,
        'page_title': 'Postítulo',
        'current_page': 'datos_basicos',
    })