from foro.models import * from django.http import HttpResponse from django.contrib.auth.decorators import login_required from django.template.response import TemplateResponse def informes(request): usr = request.user propositos = BuzonProposito.objects.all() foros = MesaTematica.objects.all() return TemplateResponse(request, 'informes.html', { 'user' : usr, 'foros' : foros, 'propositos' : propositos}) def grafica_inscripcion_mesa(request, foro_id): mesas = Mesa.objects.filter(foro__id=foro_id) data = [] for m in mesas: data.append({'nombre' : m.nombre, 'cuenta' : InscripcionForo.objects.filter(mesa=m).count()}) return TemplateResponse(request, 'grafica.html', {'data' : data, 'proposito' : 'Inscripcion Foro - Mesa Tematica'}) def grafica(request, proposito): proposito = BuzonProposito.objects.get(pk=proposito) usr = request.user soluciones = BuzonSolucion.objects.all() data = [] for s in soluciones: data.append({'nombre': s.descripcion, 'cuenta' : BuzonSugerencia.objects.filter(proposito=proposito,solucion=s).count()}) return TemplateResponse(request, 'grafica.html', { 'user' : usr, 'data' : data, 'proposito' : proposito}) def grafica_ejes_proposito(request): usr = request.user ejes = Eje.objects.all() data = [] for e in ejes: data.append({'nombre': e.nombre, 'cuenta' : BuzonSugerencia.objects.filter(proposito__in=e.proposito.all()).count()}) return TemplateResponse(request, 'grafica.html', { 'user' : usr, 'data' : data, 'proposito' : 'Ejes - Proposito'}) def grafica_ejes_propuesta(request): usr = request.user ejes = Eje.objects.all() data = [] for e in ejes: data.append({'nombre': e, 'cuenta' : e.buzonciudadano_set.all().count()}) return TemplateResponse(request, 'grafica.html', { 'user' : usr, 'data' : data, 'proposito' : 'Ejes - Propuesta'}) def search(request): if 'q' in request.GET: message = 'You searched for: %r' % request.GET['q'] else: message = 'You submitted an empty form.' return HttpResponse(message) def foros(request): catforos = MesaTematica.objects.all() catmesas = Mesa.objects.all() mesat = MesaTematica.objects.all() foros = None mensaje = '' s='' campo='' if request.GET: if 's' in request.GET: s = request.GET['s'] if 'campo' in request.GET: campo = request.GET['campo'] if campo == 'g1': foros = InscripcionForo.objects.all().filter(mesa__foro__nombre__icontains = s) if campo == 'g2': foros = InscripcionForo.objects.all().filter(mesa__nombre__icontains = s) if campo == 'g3': foros = InscripcionForo.objects.all().filter(subtitulo__icontains = s) if campo == 'i1': foros = InscripcionForo.objects.all().filter( nombre__icontains = s) if foros.count() == 0: foros = InscripcionForo.objects.all().filter( apellidos__icontains = s) if campo == 'i2': foros = InscripcionForo.objects.all().filter(correo_electronico__icontains = s) if campo == 'i3': foros = InscripcionForo.objects.all().filter(telefono__icontains = s) if campo == 'i4': foros = InscripcionForo.objects.all().filter(institucion__nombre__icontains = s) if campo == 'i5': foros = InscripcionForo.objects.all().filter(procedencia__nombre__icontains = s) if campo == 'i6': foros = InscripcionForo.objects.all().filter(cargo__nombre__icontains = s) if campo == 'i7': foros = InscripcionForo.objects.all().filter(fuente__descripcion__icontains = s) if campo == 'in1': foros = InscripcionForo.objects.all().filter(introduccion__icontains = s) if campo == 'c1': foros = InscripcionForo.objects.all().filter(problematica__descripcion__icontains = s) if campo == 'c2': foros = InscripcionForo.objects.all().filter(causa__descripcion__icontains = s) if campo == 'c3': foros = InscripcionForo.objects.all().filter(efecto__descripcion__icontains = s) if campo == 'c4': foros = InscripcionForo.objects.all().filter(propuesta__descripcion__icontains = s).distinct() if campo == 'e1': foros = InscripcionForo.objects.all().filter(mesa__foro__eje__nombre__icontains = s) return TemplateResponse(request, 'foros.html', {'foros':foros, 'catforos':catforos,'catmesas':catmesas,'mesat':mesat, 'mensaje':mensaje, 'campo':campo, 's':s}) def introduccion(request, inscripcionforo_id): foro = InscripcionForo.objects.get(pk = inscripcionforo_id) contenido = '
  1. ' contenido += foro.introduccion contenido += '
    1. ' contenido += 'Regresar' return HttpResponse(contenido) def generatemplate(request, inscripcionforo_id, tipo): consulta = None if tipo == 'introduccion': consulta = InscripcionForo.objects.filter(pk = inscripcionforo_id).values_list('introduccion') elif tipo == 'problematicas': consulta = Problematica.objects.filter(inscripcion_foro_id = inscripcionforo_id).values_list('descripcion').order_by('id') elif tipo == 'causas': consulta = Causa.objects.filter(id_inscripcion_foro = inscripcionforo_id).values_list('descripcion').order_by('id') elif tipo == 'efectos': consulta = Efecto.objects.filter(id_inscripcion_foro = inscripcionforo_id).values_list('descripcion').order_by('id') elif tipo == 'propuestas': consulta = Propuesta.objects.filter(id_inscripcion_foro = inscripcionforo_id).values_list('descripcion').order_by('id') elif tipo == 'ejes': iF = InscripcionForo.objects.get(pk = inscripcionforo_id)#.mesa.foro.eje_set.values_list('nombre') ejes = iF.mesa.foro.eje_set.values_list('nombre') consulta = ejes return TemplateResponse(request, 'listado.html', {'consulta':consulta}) def ponencia(request, inscripcionforo_id): foro = InscripcionForo.objects.get(pk = inscripcionforo_id) problematicas = Problematica.objects.filter(inscripcion_foro_id = inscripcionforo_id).order_by('id') causas = Causa.objects.filter(id_inscripcion_foro = inscripcionforo_id).order_by('id') efectos = Efecto.objects.filter(id_inscripcion_foro = inscripcionforo_id).order_by('id') propuestas = Propuesta.objects.filter(id_inscripcion_foro = inscripcionforo_id).order_by('id') return TemplateResponse(request, 'ponencia.html', { 'foro': foro, 'problematicas':problematicas, 'causas':causas, 'efectos':efectos, 'propuestas':propuestas })