def create(request, establecimiento_id):
    
    establecimiento = __get_establecimiento(request, establecimiento_id)
    """
    Alta de autoridad.
    """

    if request.method == 'POST':
        form = EstablecimientoAutoridadForm(request.POST)
        if form.is_valid():
            autoridad = form.save(commit=False)
            autoridad.establecimiento_id = establecimiento.id
            autoridad.save()

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

    # Chequear si se puede dar de alta
    # XXX: sólo se puede dar de alta un registro por ahora
    alta_habilitada = EstablecimientoAutoridad.objects.filter(establecimiento__id = establecimiento.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('establecimientoCompletarContacto', args=[establecimiento.id]))
    
    return my_render(request, 'registro/establecimiento/autoridades/new.html', {
        'form': form,
        'establecimiento': establecimiento,
    })
def edit(request, autoridad_id):
    """
    Edición de los datos de una autoridad.
    """    
    autoridad = EstablecimientoAutoridad.objects.get(pk=autoridad_id)
    establecimiento = __get_establecimiento(request, autoridad.establecimiento_id)

    if request.method == 'POST':
        form = EstablecimientoAutoridadForm(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 = EstablecimientoAutoridadForm(instance=autoridad)

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