def modificar_cue(request, extension_aulica_id):
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    if request.method == 'POST':
        form = ExtensionAulicaModificarCueForm(request.POST, instance=extension_aulica)
        if form.is_valid():
            extension_aulica = form.save()
           
            MailHelper.notify_by_email(MailHelper.EXTENSION_AULICA_UPDATE, extension_aulica)
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaModificarCueForm(instance=extension_aulica)

    parts = extension_aulica.get_cue_parts()
    form.initial['codigo_jurisdiccion'] = parts['codigo_jurisdiccion']
    form.initial['cue'] = parts['cue']
    form.initial['codigo_tipo_unidad_educativa'] = parts['codigo_tipo_unidad_educativa']

    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_modificar_cue.html',
        'extension_aulica': extension_aulica,
        'page_title': 'Modificar CUE',
        'actual_page': 'datos_basicos',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def completar_datos_basicos(request, extension_aulica_id):
    """
    Edición de los datos de una extensión áulica.
    """
    ext = __get_extension_aulica(request, extension_aulica_id)
    if request.method == 'POST' and request.has_credencial('reg_extension_aulica_modificar'):
        form = ExtensionAulicaDatosBasicosForm(request.POST, instance=ext)
        if form.is_valid():
            ext = form.save()
            if __puede_verificar_datos(request):
                v = ext.get_verificacion_datos()
                v.datos_basicos = form.cleaned_data['verificado']
                v.save()
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaDatosBasicosForm(instance=ext)

    form.initial['verificado'] = ext.get_verificacion_datos().datos_basicos
    
    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_datos_basicos.html',
        'extension_aulica': ext,
        'page_title': 'Datos básicos',
        'actual_page': 'datos_basicos',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': ext.get_verificacion_datos().get_datos_verificados()
    })    
def completar_funciones(request, extension_aulica_id):
    ext = __get_extension_aulica(request, extension_aulica_id)

    if request.method == 'POST' and request.has_credencial('reg_extension_aulica_modificar'):
        form = ExtensionAulicaFuncionesForm(request.POST, instance=ext)
        if form.is_valid():
            funciones = form.save()
            if __puede_verificar_datos(request):
                v = ext.get_verificacion_datos()
                v.funciones = form.cleaned_data['verificado']
                v.save()
            #MailHelper.notify_by_email(MailHelper.ESTABLECIMIENTO_UPDATE, establecimiento)
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaFuncionesForm(instance=ext)
    form.initial['verificado'] = ext.get_verificacion_datos().funciones

    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_funciones.html',
        'extension_aulica': ext,
        'page_title': 'Funciones',
        'actual_page': 'funciones',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': ext.get_verificacion_datos().get_datos_verificados()
    })
Beispiel #4
0
def completar_contacto(request, extension_aulica_id):
    ext = ExtensionAulica.objects.get(pk=extension_aulica_id)

    if not __extension_aulica_dentro_del_ambito(request, ext):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')

    if request.method == 'POST' and request.has_credencial('reg_extension_aulica_modificar'):
        form = ExtensionAulicaContactoForm(request.POST, instance=ext)
        if form.is_valid():
            ext = form.save()
            if __puede_verificar_datos(request):
                v = ext.get_verificacion_datos()
                v.contacto = form.cleaned_data['verificado']
                v.save()
            #MailHelper.notify_by_email(MailHelper.ESTABLECIMIENTO_UPDATE, establecimiento)
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaContactoForm(instance=ext)
    form.initial['verificado'] = ext.get_verificacion_datos().contacto

    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_contacto.html',
        'extension_aulica': ext,
        'page_title': 'Contacto',
        'actual_page': 'contacto',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': ext.get_verificacion_datos().get_datos_verificados()
    })
Beispiel #5
0
def index(request, extension_aulica_id):
    
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    """
    Búsqueda de extensiones
    """
    if request.method == 'GET':
        form_filter = ExtensionAulicaAutoridadFormFilters(request.GET, extension_aulica_id=extension_aulica.id)
    else:
        form_filter = ExtensionAulicaFormFilters(extension_aulica_id=extension_aulica.id)

    q = build_query(form_filter, 1, request)
    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list

    alta_habilitada = objects.count() == 0

    return my_render(request, 'registro/extension_aulica/autoridades/index.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'extension_aulica': extension_aulica,
        'alta_habilitada': alta_habilitada,
        'verificado': extension_aulica.get_verificacion_datos().autoridades,
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados(),
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'actual_page': 'autoridades',
        'form_verificacion': VerificacionDatosExtensionAulicaForm(
			dato_verificacion='autoridades', 
			unidad_educativa_id=extension_aulica.id, 
			return_url='extensionAulicaAutoridadesIndex', 
			verificado=extension_aulica.get_verificacion_datos().autoridades),
    })
def ver_autoridades(request, extension_aulica_id):
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    if not __extension_aulica_dentro_del_ambito(request, extension_aulica):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')
    verificado = extension_aulica.get_verificacion_datos().autoridades
    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_autoridades.html',
        'verificado': verificado,
        'extension_aulica': extension_aulica,
        'autoridades': extension_aulica.autoridades.all(),
        'page_title': 'Autoridades',
        'actual_page': 'autoridades',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
Beispiel #7
0
def configurar_solapas_extension_aulica(request):
  solapas_config = ConfiguracionSolapasExtensionAulica.get_instance()
  if request.method == 'POST':
    form = ConfiguracionSolapasExtensionAulicaForm(request.POST, instance=solapas_config)
    if form.is_valid():
      form.save()
      request.set_flash('success', 'Datos guardados correctamente.')
    else:
      request.set_flash('warning', 'Ocurrió un error guardando los datos.')
  else:
      form = ConfiguracionSolapasExtensionAulicaForm(instance=solapas_config)
  
  return my_render(request, 'backend/solapas_extension_aulica.html', {
      'form': form,
  })
def ver_matricula(request, extension_aulica_id):
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    if not __extension_aulica_dentro_del_ambito(request, extension_aulica):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')
    verificado = extension_aulica.get_verificacion_datos().matricula

    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_matricula.html',
        'verificado': verificado,
        'extension_aulica': extension_aulica,
        'matricula': extension_aulica.extensionaulicamatricula_set.all().order_by('anio'),
        'page_title': 'Matrícula',
        'actual_page': 'matricula',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def ver_conexion_internet(request, extension_aulica_id):
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    if not __extension_aulica_dentro_del_ambito(request, extension_aulica):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')
    verificado = extension_aulica.get_verificacion_datos().conectividad

    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_conexion_internet.html',
        'verificado': verificado,
        'extension_aulica': extension_aulica,
        'conexion_internet': extension_aulica.extensionaulicaconexioninternet_set.get(),
        'page_title': 'Conexión Internet',
        'actual_page': 'conexion_internet',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def ver_informacion_edilicia(request, extension_aulica_id):
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    if not __extension_aulica_dentro_del_ambito(request, extension_aulica):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')
    verificado = extension_aulica.get_verificacion_datos().info_edilicia

    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_informacion_edilicia.html',
        'verificado': verificado,
        'extension_aulica': extension_aulica,
        'informacion_edilicia': extension_aulica.extensionaulicainformacionedilicia_set.get(),
        'page_title': 'Información Edilicia',
        'actual_page': 'informacion_edilicia',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def ver_turnos(request, extension_aulica_id):
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    if not __extension_aulica_dentro_del_ambito(request, extension_aulica):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')

    verificado = extension_aulica.get_verificacion_datos().turnos
    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_turnos.html',
        'verificado': verificado,
        'extension_aulica': extension_aulica,
        'turnos': ExtensionAulicaTurno.objects.filter(extension_aulica=extension_aulica).order_by('turno__nombre'),
        'page_title': 'Turnos',
        'actual_page': 'turnos',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
Beispiel #12
0
def ver_contacto(request, extension_aulica_id):
    """
    Visualización de los datos de contacto de un extension_aulica.
    """
    extension_aulica = ExtensionAulica.objects.get(pk=extension_aulica_id)

    if not __extension_aulica_dentro_del_ambito(request, extension_aulica):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')
		
    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_contacto.html',
        'extension_aulica': extension_aulica,
        'page_title': 'Contacto',
        'actual_page': 'contacto',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def completar_informacion_edilicia(request, extension_aulica_id):
    """
    CU 26
    """
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    try:
        informacion_edilicia = ExtensionAulicaInformacionEdilicia.objects.get(extension_aulica=extension_aulica)
    except:
        informacion_edilicia = ExtensionAulicaInformacionEdilicia()
        informacion_edilicia.extension_aulica = extension_aulica

    if request.method == 'POST' and request.has_credencial('reg_extension_aulica_modificar'):
        form = ExtensionAulicaInformacionEdiliciaForm(request.POST, instance=informacion_edilicia)
        if form.is_valid():
            informacion_edilicia = form.save()
            if __puede_verificar_datos(request):
                v = extension_aulica.get_verificacion_datos()
                v.info_edilicia = form.cleaned_data['verificado']
                v.save()
            #MailHelper.notify_by_email(MailHelper.ESTABLECIMIENTO_UPDATE, establecimiento)
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaInformacionEdiliciaForm(instance=informacion_edilicia)

    es_dominio_compartido_id = TipoDominio.objects.get(descripcion='Compartido').id
    comparte_otro_nivel_id = TipoCompartido.objects.get(descripcion=TipoCompartido.TIPO_OTRA_INSTITUCION).id
    form.initial['verificado'] = extension_aulica.get_verificacion_datos().info_edilicia
    
    if not extension_aulica.get_verificacion_datos().completo():
        request.set_flash('warning', 'Las solapas cuyos datos todavía no han sido verificados se verán en color rojo. Por favor, verifique los datos.')
		
    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_informacion_edilicia.html',
        'extension_aulica': extension_aulica,
        'es_dominio_compartido_id': es_dominio_compartido_id,
        'comparte_otro_nivel_id': comparte_otro_nivel_id,
        'page_title': 'Información edilicia',
        'actual_page': 'informacion_edilicia',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def ver_datos_basicos(request, extension_aulica_id):
    """
    Visualización de los datos básicos de un extension_aulica.
    """
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)      

    try:
        codigo = Establecimiento.get_parts_from_cue(extension_aulica.cue)['codigo_tipo_unidad_educativa']
    except TypeError:
        codigo = ''
		
    return my_render(request, 'registro/extension_aulica/ver_datos.html', {
        'template': 'registro/extension_aulica/ver_datos_basicos.html',
        'codigo': codigo,
        'extension_aulica': extension_aulica,
        'page_title': 'Datos básicos',
        'actual_page': 'datos_basicos',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def completar_conexion_internet(request, extension_aulica_id):
    """
    CU 26
    """
    extension_aulica = __get_extension_aulica(request, extension_aulica_id)
    try:
        conexion = ExtensionAulicaConexionInternet.objects.get(extension_aulica=extension_aulica)
    except:
        conexion = ExtensionAulicaConexionInternet()
        conexion.extension_aulica = extension_aulica

    if request.method == 'POST' and request.has_credencial('reg_extension_aulica_modificar'):
        form = ExtensionAulicaConexionInternetForm(request.POST, instance=conexion)
        if form.is_valid():
            conexion = form.save()
            if __puede_verificar_datos(request):
                v = extension_aulica.get_verificacion_datos()
                v.conectividad = form.cleaned_data['verificado']
                v.save()
            #MailHelper.notify_by_email(MailHelper.ESTABLECIMIENTO_UPDATE, establecimiento)
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaConexionInternetForm(instance=conexion)
    form.initial['verificado'] = extension_aulica.get_verificacion_datos().conectividad
    
    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_conexion_internet.html',
        'extension_aulica': extension_aulica,
        'page_title': 'Conectividad',
        'actual_page': 'conexion_internet',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': extension_aulica.get_verificacion_datos().get_datos_verificados()
    })
def completar_contacto(request, extension_aulica_id):
    ext = ExtensionAulica.objects.get(pk=extension_aulica_id)

    if not __extension_aulica_dentro_del_ambito(request, ext):
        raise Exception('La extensión áulica no se encuentra en su ámbito.')

    if request.method == 'POST' and request.has_credencial('reg_extension_aulica_modificar'):
        form = ExtensionAulicaContactoForm(request.POST, instance=ext)
        if form.is_valid():
            ext = form.save()
            if __puede_verificar_datos(request):
                v = ext.get_verificacion_datos()
                v.contacto = form.cleaned_data['verificado']
                v.save()
            #MailHelper.notify_by_email(MailHelper.ESTABLECIMIENTO_UPDATE, establecimiento)
            request.set_flash('success', 'Datos actualizados correctamente.')
        else:
            request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
    else:
        form = ExtensionAulicaContactoForm(instance=ext)
    form.initial['verificado'] = ext.get_verificacion_datos().contacto
    
    """
    
    Se unifica con autoridades
    
    """    
    from apps.registro.forms.ExtensionAulicaAutoridadFormFilters import ExtensionAulicaAutoridadFormFilters
    from apps.registro.views.extension_aulica_autoridad import build_query as build_query_autoridades

    form_filter = ExtensionAulicaAutoridadFormFilters(extension_aulica_id=ext.id)

    q = build_query_autoridades(form_filter, 1, request)
    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    alta_habilitada = objects.count() == 0
    return my_render(request, 'registro/extension_aulica/completar_datos.html', {
        'form': form,
        'form_template': 'registro/extension_aulica/form_contacto.html',
        'extension_aulica': ext,
        'page_title': 'Contacto',
        'actual_page': 'contacto',
        'configuracion_solapas': ConfiguracionSolapasExtensionAulica.get_instance(),
        'datos_verificados': ext.get_verificacion_datos().get_datos_verificados(),
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'alta_habilitada': alta_habilitada,
    })