def completar_funciones(request, establecimiento_id): """ CU 26 """ establecimiento = __get_establecimiento(request, establecimiento_id) if request.method == "POST" and request.has_credencial("reg_establecimiento_completar"): form = EstablecimientoFuncionesForm(request.POST, instance=establecimiento) if form.is_valid(): funciones = form.save() if __puede_verificar_datos(request): v = establecimiento.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 = EstablecimientoFuncionesForm(instance=establecimiento) form.initial["verificado"] = establecimiento.get_verificacion_datos().funciones return my_render( request, "registro/establecimiento/completar_datos.html", { "form": form, "form_template": "registro/establecimiento/form_funciones.html", "establecimiento": establecimiento, "page_title": "Funciones", "actual_page": "funciones", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def completar_funciones(request, establecimiento_id): """ CU 26 """ establecimiento = __get_establecimiento(request, establecimiento_id) if request.method == 'POST' and request.has_credencial('reg_establecimiento_completar'): form = EstablecimientoFuncionesForm(request.POST, instance=establecimiento) if form.is_valid(): funciones = form.save() if __puede_verificar_datos(request): v = establecimiento.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 = EstablecimientoFuncionesForm(instance=establecimiento) form.initial['verificado'] = establecimiento.get_verificacion_datos().funciones return my_render(request, 'registro/establecimiento/completar_datos.html', { 'form': form, 'form_template': 'registro/establecimiento/form_funciones.html', 'establecimiento': establecimiento, 'page_title': 'Funciones', 'actual_page': 'funciones', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def modificar_cue(request, establecimiento_id): """ CU 26 """ establecimiento = __get_establecimiento(request, establecimiento_id) if request.method == 'POST': form = EstablecimientoModificarCueForm(request.POST, instance=establecimiento) if form.is_valid(): establecimiento = form.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 = EstablecimientoModificarCueForm(instance=establecimiento) parts = establecimiento.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/establecimiento/completar_datos.html', { 'form': form, 'form_template': 'registro/establecimiento/form_modificar_cue.html', 'establecimiento': establecimiento, 'page_title': 'Modificar CUE', 'actual_page': 'datos_basicos', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def completar_datos(request): """ CU 26 XXX: Por ahora no usamos esta vista, pero puede que más adelante la necesitemos para mostrar info del establecimiento """ establecimiento = __get_establecimiento(request, establecimiento_id) return my_render(request, 'registro/establecimiento/completar_datos.html', { 'establecimiento': establecimiento, 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance() })
def index(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) return HttpResponseRedirect(reverse('establecimientoCompletarContacto', args=[establecimiento.id])) """ Búsqueda de establecimientos """ if request.method == 'GET': form_filter = EstablecimientoAutoridadFormFilters(request.GET, establecimiento_id=establecimiento.id) else: form_filter = EstablecimientoAutoridadFormFilters(establecimiento_id=establecimiento.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/establecimiento/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, 'establecimiento': establecimiento, 'alta_habilitada': alta_habilitada, 'verificado': establecimiento.get_verificacion_datos().autoridades, 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados(), 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'actual_page': 'contacto', 'form_verificacion': VerificacionDatosEstablecimientoForm( dato_verificacion='autoridades', unidad_educativa_id=establecimiento.id, return_url='establecimientoAutoridadesIndex', verificado=establecimiento.get_verificacion_datos().autoridades), })
def matricula(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) """ Búsqueda de establecimientos """ if request.method == "GET": form_filter = EstablecimientoMatriculaFormFilters(request.GET, establecimiento_id=establecimiento.id) else: form_filter = EstablecimientoMatriculaFormFilters(establecimiento_id=establecimiento.id) q = build_query_matricula(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 return my_render( request, "registro/establecimiento/matricula/matricula.html", { "establecimiento": establecimiento, "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, "verificado": establecimiento.get_verificacion_datos().matricula, "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "actual_page": "matricula", "form_verificacion": VerificacionDatosEstablecimientoForm( dato_verificacion="matricula", unidad_educativa_id=establecimiento.id, return_url="establecimientoMatriculaIndexEstablecimiento", verificado=establecimiento.get_verificacion_datos().matricula, ), }, )
def configurar_solapas_establecimiento(request): solapas_config = ConfiguracionSolapasEstablecimiento.get_instance() if request.method == 'POST': form = ConfiguracionSolapasEstablecimientoForm(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 = ConfiguracionSolapasEstablecimientoForm(instance=solapas_config) return my_render(request, 'backend/solapas_establecimiento.html', { 'form': form, })
def ver_autoridades(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') verificado = establecimiento.get_verificacion_datos().autoridades return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_autoridades.html', 'verificado': verificado, 'establecimiento': establecimiento, 'autoridades': establecimiento.autoridades.all(), 'page_title': 'Autoridades', 'actual_page': 'autoridades', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def ver_matricula(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') verificado = establecimiento.get_verificacion_datos().matricula return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_matricula.html', 'verificado': verificado, 'establecimiento': establecimiento, 'matricula': establecimiento.establecimientomatricula_set.all().order_by('anio'), 'page_title': 'Matrícula', 'actual_page': 'matricula', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def ver_conexion_internet(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') verificado = establecimiento.get_verificacion_datos().conectividad return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_conexion_internet.html', 'verificado': verificado, 'establecimiento': establecimiento, 'conexion_internet': establecimiento.establecimientoconexioninternet_set.get(), 'page_title': 'Conexión Internet', 'actual_page': 'conexion_internet', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def ver_informacion_edilicia(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') verificado = establecimiento.get_verificacion_datos().info_edilicia return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_informacion_edilicia.html', 'verificado': verificado, 'establecimiento': establecimiento, 'informacion_edilicia': establecimiento.establecimientoinformacionedilicia_set.get(), 'page_title': 'Información Edilicia', 'actual_page': 'informacion_edilicia', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def ver_turnos(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') verificado = establecimiento.get_verificacion_datos().turnos return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_turnos.html', 'verificado': verificado, 'establecimiento': establecimiento, 'turnos': EstablecimientoTurno.objects.filter(establecimiento=establecimiento).order_by('turno__nombre'), 'page_title': 'Turnos', 'actual_page': 'turnos', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def ver_datos_basicos(request, establecimiento_id): """ Visualización de los datos básicos de un establecimiento. """ establecimiento = __get_establecimiento(request, establecimiento_id) parts = establecimiento.get_cue_parts() return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_datos_basicos.html', 'establecimiento': establecimiento, 'page_title': 'Datos básicos', 'actual_page': 'datos_basicos', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def completar_informacion_edilicia(request, establecimiento_id): """ CU 26 """ establecimiento = __get_establecimiento(request, establecimiento_id) try: informacion_edilicia = EstablecimientoInformacionEdilicia.objects.get(establecimiento=establecimiento) except: informacion_edilicia = EstablecimientoInformacionEdilicia() informacion_edilicia.establecimiento = establecimiento if request.method == "POST" and request.has_credencial("reg_establecimiento_completar"): form = EstablecimientoInformacionEdiliciaForm(request.POST, instance=informacion_edilicia) if form.is_valid(): informacion_edilicia = form.save() if __puede_verificar_datos(request): v = establecimiento.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 = EstablecimientoInformacionEdiliciaForm(instance=informacion_edilicia) 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 form.initial["verificado"] = establecimiento.get_verificacion_datos().info_edilicia return my_render( request, "registro/establecimiento/completar_datos.html", { "form": form, "form_template": "registro/establecimiento/form_informacion_edilicia.html", "establecimiento": establecimiento, "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": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def index(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) """ Búsqueda de establecimientos """ if request.method == 'GET': form_filter = EstablecimientoDomicilioFormFilters(request.GET, establecimiento_id=establecimiento.id) else: form_filter = EstablecimientoDomicilioFormFilters(establecimiento_id=establecimiento.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 return my_render(request, 'registro/establecimiento/domicilios/index.html', { 'establecimiento': establecimiento, '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, 'verificado': establecimiento.get_verificacion_datos().domicilios, 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados(), 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'actual_page': 'domicilios', 'form_verificacion': VerificacionDatosEstablecimientoForm( dato_verificacion='domicilios', unidad_educativa_id=establecimiento.id, return_url='establecimientoDomiciliosIndex', verificado=establecimiento.get_verificacion_datos().domicilios), })
def ver_contacto(request, establecimiento_id): """ Visualización de los datos de contacto de un establecimiento. """ establecimiento = Establecimiento.objects.get(pk=establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') return my_render(request, 'registro/establecimiento/ver_datos.html', { 'template': 'registro/establecimiento/ver_contacto.html', 'establecimiento': establecimiento, 'page_title': 'Contacto', 'actual_page': 'contacto', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados(), 'autoridades': establecimiento.autoridades.all(), })
def completar_datos_basicos(request, establecimiento_id): """ Edición de los datos básicos de un establecimiento. """ establecimiento = __get_establecimiento(request, establecimiento_id) if request.method == "POST" and request.has_credencial("reg_establecimiento_completar"): form = EstablecimientoDatosBasicosForm(request.POST, instance=establecimiento) if form.is_valid(): establecimiento = form.save() if __puede_verificar_datos(request): v = establecimiento.get_verificacion_datos() v.datos_basicos = 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 = EstablecimientoDatosBasicosForm(instance=establecimiento) parts = establecimiento.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"] form.initial["verificado"] = establecimiento.get_verificacion_datos().datos_basicos if request.get_perfil().jurisdiccion() is not None: form.fields["dependencia_funcional"].queryset = DependenciaFuncional.objects.filter( jurisdiccion=request.get_perfil().jurisdiccion() ) return my_render( request, "registro/establecimiento/completar_datos.html", { "form": form, "form_template": "registro/establecimiento/form_datos_basicos.html", "establecimiento": establecimiento, "page_title": "Datos básicos", "actual_page": "datos_basicos", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_autoridades(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") verificado = establecimiento.get_verificacion_datos().autoridades return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_autoridades.html", "verificado": verificado, "establecimiento": establecimiento, "autoridades": establecimiento.autoridades.all(), "page_title": "Autoridades", "actual_page": "autoridades", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def completar_informacion_edilicia(request, establecimiento_id): """ CU 26 """ establecimiento = __get_establecimiento(request, establecimiento_id) try: informacion_edilicia = EstablecimientoInformacionEdilicia.objects.get(establecimiento=establecimiento) except: informacion_edilicia = EstablecimientoInformacionEdilicia() informacion_edilicia.establecimiento = establecimiento if request.method == 'POST' and request.has_credencial('reg_establecimiento_completar'): form = EstablecimientoInformacionEdiliciaForm(request.POST, instance=informacion_edilicia) if form.is_valid(): informacion_edilicia = form.save() if __puede_verificar_datos(request): v = establecimiento.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 = EstablecimientoInformacionEdiliciaForm(instance=informacion_edilicia) 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 form.initial['verificado'] = establecimiento.get_verificacion_datos().info_edilicia return my_render(request, 'registro/establecimiento/completar_datos.html', { 'form': form, 'form_template': 'registro/establecimiento/form_informacion_edilicia.html', 'establecimiento': establecimiento, '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': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def completar_contacto(request, establecimiento_id): """ Edición de los datos de contacto de un establecimiento. """ establecimiento = Establecimiento.objects.get(pk=establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") if establecimiento.estado.nombre == EstadoEstablecimiento.PENDIENTE: if "reg_editar_establecimiento_pendiente" not in request.get_credenciales(): raise Exception("Usted no tiene permisos para editar los datos del establecimiento pendiente") if request.method == "POST": form = EstablecimientoContactoForm(request.POST, instance=establecimiento) if form.is_valid(): establecimiento = form.save() if __puede_verificar_datos(request): v = establecimiento.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 = EstablecimientoContactoForm(instance=establecimiento) form.initial["verificado"] = establecimiento.get_verificacion_datos().contacto return my_render( request, "registro/establecimiento/completar_datos.html", { "form": form, "form_template": "registro/establecimiento/form_contacto.html", "establecimiento": establecimiento, "page_title": "Contacto", "actual_page": "contacto", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_matricula(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") verificado = establecimiento.get_verificacion_datos().matricula return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_matricula.html", "verificado": verificado, "establecimiento": establecimiento, "matricula": establecimiento.establecimientomatricula_set.all().order_by("anio"), "page_title": "Matrícula", "actual_page": "matricula", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_conexion_internet(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") verificado = establecimiento.get_verificacion_datos().conectividad return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_conexion_internet.html", "verificado": verificado, "establecimiento": establecimiento, "conexion_internet": establecimiento.establecimientoconexioninternet_set.get(), "page_title": "Conexión Internet", "actual_page": "conexion_internet", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_informacion_edilicia(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") verificado = establecimiento.get_verificacion_datos().info_edilicia return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_informacion_edilicia.html", "verificado": verificado, "establecimiento": establecimiento, "informacion_edilicia": establecimiento.establecimientoinformacionedilicia_set.get(), "page_title": "Información Edilicia", "actual_page": "informacion_edilicia", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_turnos(request, establecimiento_id): establecimiento = __get_establecimiento(request, establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") verificado = establecimiento.get_verificacion_datos().turnos return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_turnos.html", "verificado": verificado, "establecimiento": establecimiento, "turnos": EstablecimientoTurno.objects.filter(establecimiento=establecimiento).order_by("turno__nombre"), "page_title": "Turnos", "actual_page": "turnos", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_datos_basicos(request, establecimiento_id): """ Visualización de los datos básicos de un establecimiento. """ establecimiento = __get_establecimiento(request, establecimiento_id) parts = establecimiento.get_cue_parts() return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_datos_basicos.html", "establecimiento": establecimiento, "page_title": "Datos básicos", "actual_page": "datos_basicos", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def ver_contacto(request, establecimiento_id): """ Visualización de los datos de contacto de un establecimiento. """ establecimiento = Establecimiento.objects.get(pk=establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception("La sede no se encuentra en su ámbito.") return my_render( request, "registro/establecimiento/ver_datos.html", { "template": "registro/establecimiento/ver_contacto.html", "establecimiento": establecimiento, "page_title": "Contacto", "actual_page": "contacto", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def completar_datos_basicos(request, establecimiento_id): """ Edición de los datos básicos de un establecimiento. """ establecimiento = __get_establecimiento(request, establecimiento_id) if request.method == 'POST' and request.has_credencial('reg_establecimiento_completar'): form = EstablecimientoDatosBasicosForm(request.POST, instance=establecimiento) if form.is_valid(): establecimiento = form.save() if __puede_verificar_datos(request): v = establecimiento.get_verificacion_datos() v.datos_basicos = 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 = EstablecimientoDatosBasicosForm(instance=establecimiento) parts = establecimiento.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'] form.initial['verificado'] = establecimiento.get_verificacion_datos().datos_basicos if request.get_perfil().jurisdiccion() is not None: form.fields['dependencia_funcional'].queryset = DependenciaFuncional.objects.filter(jurisdiccion=request.get_perfil().jurisdiccion()) return my_render(request, 'registro/establecimiento/completar_datos.html', { 'form': form, 'form_template': 'registro/establecimiento/form_datos_basicos.html', 'establecimiento': establecimiento, 'page_title': 'Datos básicos', 'actual_page': 'datos_basicos', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.get_verificacion_datos().get_datos_verificados() })
def modificar_cue(request, establecimiento_id): """ CU 26 """ establecimiento = __get_establecimiento(request, establecimiento_id) if request.method == "POST": form = EstablecimientoModificarCueForm(request.POST, instance=establecimiento) if form.is_valid(): establecimiento = form.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 = EstablecimientoModificarCueForm(instance=establecimiento) parts = establecimiento.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/establecimiento/completar_datos.html", { "form": form, "form_template": "registro/establecimiento/form_modificar_cue.html", "establecimiento": establecimiento, "page_title": "Modificar CUE", "actual_page": "datos_basicos", "configuracion_solapas": ConfiguracionSolapasEstablecimiento.get_instance(), "datos_verificados": establecimiento.get_verificacion_datos().get_datos_verificados(), }, )
def completar_contacto(request, establecimiento_id): """ Edición de los datos de contacto de un establecimiento. """ establecimiento = Establecimiento.objects.get(pk=establecimiento_id) if not __establecimiento_dentro_del_ambito(request, establecimiento): raise Exception('La sede no se encuentra en su ámbito.') if establecimiento.estado.nombre == EstadoEstablecimiento.PENDIENTE: if 'reg_editar_establecimiento_pendiente' not in request.get_credenciales(): raise Exception('Usted no tiene permisos para editar los datos del establecimiento pendiente') if request.method == 'POST': form = EstablecimientoContactoForm(request.POST, instance=establecimiento) if form.is_valid(): establecimiento = form.save() if __puede_verificar_datos(request): v = establecimiento.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 = EstablecimientoContactoForm(instance=establecimiento) form.initial['verificado'] = establecimiento.get_verificacion_datos().contacto """ Se unifica con autoridades """ from apps.registro.forms.EstablecimientoAutoridadFormFilters import EstablecimientoAutoridadFormFilters from apps.registro.views.establecimiento_autoridad import build_query as build_query_autoridades form_filter = EstablecimientoAutoridadFormFilters(establecimiento_id=establecimiento.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/establecimiento/completar_datos.html', { 'form': form, 'form_template': 'registro/establecimiento/form_contacto.html', 'establecimiento': establecimiento, 'page_title': 'Contacto', 'actual_page': 'contacto', 'configuracion_solapas': ConfiguracionSolapasEstablecimiento.get_instance(), 'datos_verificados': establecimiento.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, })