Пример #1
0
def create(request, extension_aulica_id):
    
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    """
    Alta de autoridad.
    """

    if request.method == 'POST':
        form = ExtensionAulicaAutoridadForm(request.POST)
        if form.is_valid():
            autoridad = form.save(commit=False)
            autoridad.extension_aulica_id = extension_aulica.id
            autoridad.save()

            request.set_flash('success', 'Datos guardados correctamente.')
            return HttpResponseRedirect(reverse('extensionAulicaAutoridadEdit', args=[autoridad.id]))
        else:
            request.set_flash('warning', 'Ocurrió un error guardando los datos.')
    else:
        form = ExtensionAulicaAutoridadForm()

    # Chequear si se puede dar de alta
    # XXX: sólo se puede dar de alta un registro por ahora
    alta_habilitada = ExtensionAulicaAutoridad.objects.filter(extension_aulica__id = extension_aulica.id).count() == 0    
    if not alta_habilitada:  # no debería estar en esta pantalla
        request.set_flash('warning', 'No puede dar de alta más de una autoridad.')
        return HttpResponseRedirect(reverse('extensionAulicaAutoridadesIndex', args=[extension_aulica.id]))
    
    return my_render(request, 'registro/extension_aulica/autoridades/new.html', {
        'form': form,
        'extension_aulica': extension_aulica,
    })
Пример #2
0
def edit(request, autoridad_id):
    """
    Edición de los datos de una autoridad.
    """    
    autoridad = ExtensionAulicaAutoridad.objects.get(pk=autoridad_id)
    extension_aulica = __get_extension_aulica(request, autoridad.extension_aulica_id)

    if request.method == 'POST':
        form = ExtensionAulicaAutoridadForm(request.POST, instance=autoridad)
        if form.is_valid():
            autoridad = form.save()

            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaAutoridadForm(instance=autoridad)

    return my_render(request, 'registro/extension_aulica/autoridades/edit.html', {
        'form': form,
        'autoridad': autoridad,
        'extension_aulica': extension_aulica,
    })