def edit(request, establecimiento_turno_id):
    """
    Edición de los datos de un turno.
    """
    establecimiento_turno = EstablecimientoTurno.objects.get(pk=establecimiento_turno_id)
    establecimiento = __get_establecimiento(request, establecimiento_turno.establecimiento_id)

    if request.method == 'POST':
        form = EstablecimientoTurnoForm(request.POST, instance=establecimiento_turno, establecimiento_id=establecimiento.id)
        if form.is_valid():
            establecimiento_turno = form.save()
            request.set_flash('success', 'Datos actualizados correctamente.')
            return HttpResponseRedirect(reverse('establecimientoTurnosIndex', args=[establecimiento_turno.establecimiento_id]))
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = EstablecimientoTurnoForm(instance=establecimiento_turno, establecimiento_id=establecimiento.id)

    es_dominio_compartido_id = TipoDominio.objects.get(descripcion=TipoDominio.TIPO_COMPARTIDO).id
    comparte_otro_nivel_id = TipoCompartido.objects.get(descripcion=TipoCompartido.TIPO_OTRA_INSTITUCION).id
    return my_render(request, 'registro/establecimiento/turnos/edit.html', {
        'form': form,
        'establecimiento_turno': establecimiento_turno,
        'establecimiento': establecimiento,
        'es_dominio_compartido_id': es_dominio_compartido_id,
        'comparte_otro_nivel_id': comparte_otro_nivel_id,
    })
def create(request, establecimiento_id):
    establecimiento = __get_establecimiento(request, establecimiento_id)
    """
    Alta de turno.
    """

    if request.method == 'POST':
        form = EstablecimientoTurnoForm(request.POST, establecimiento_id=establecimiento.id)
        if form.is_valid():
            establecimiento_turno = form.save(commit=False)
            establecimiento_turno.establecimiento_id = establecimiento_id
            establecimiento_turno.save()
            form.save_m2m()
            request.set_flash('success', 'Datos guardados correctamente.')
            return HttpResponseRedirect(reverse('establecimientoTurnosIndex', args=[establecimiento_turno.establecimiento_id]))
        else:
            request.set_flash('warning', 'Ocurrió un error guardando los datos.')
    else:
        form = EstablecimientoTurnoForm(establecimiento_id=establecimiento.id)
        
    es_dominio_compartido_id = TipoDominio.objects.get(descripcion=TipoDominio.TIPO_COMPARTIDO).id
    comparte_otro_nivel_id = TipoCompartido.objects.get(descripcion=TipoCompartido.TIPO_OTRA_INSTITUCION).id
    return my_render(request, 'registro/establecimiento/turnos/new.html', {
        'establecimiento': establecimiento,
        'form': form,
        'es_dominio_compartido_id': es_dominio_compartido_id,
        'comparte_otro_nivel_id': comparte_otro_nivel_id,
    })