コード例 #1
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def expresion_vbg(request, tipo):
    """Vista sobre: De que manera cree usted que se expresa la VBG"""
    titulo = '¿De que manera cree usted que se expresa la VBG?'
    resultados = _query_set_filtrado(request, tipo=tipo)
    tabla = {}
    campos = [
        field for field in ExpresionVBG._meta.fields
        if field.get_internal_type() == 'CharField'
    ]
    for field in campos:
        tabla[field.verbose_name] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for field in campos:
            tabla[field.verbose_name].append(
                ExpresionVBG.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    **{
                        field.name: 'si'
                    }).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #2
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def nivel_educativo(request, tipo):
    from trocaire.encuesta.models import NIVEL_EDUCATIVO
    titulo = u'¿Cuál es su nivel educativo más alto?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    opciones = NIVEL_EDUCATIVO

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op[1]].append(
                InformacionSocioEconomica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    nivel_educativo=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #3
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def frecuencia(request, tipo):
    from trocaire.encuesta.models import FRECUENCIA2, FRECUENCIA    
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    
    if tipo == 'mujeres':
        opciones = FRECUENCIA
        titulo = u'¿Con que frecuencia ha vivido VBG este último año?'
    elif tipo == 'hombres':
        titulo = u'¿Con que frecuencia ha ejercido VBG este último año?'
        opciones = FRECUENCIA2
        
    for op in opciones:
        tabla[op[1]] = []
    
    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
       
        for op in opciones:
            if tipo == 'mujeres':
                tabla[op[1]].append(PrevalenciaVBG.objects.filter(content_type=get_content_type(tipo), 
                                                                    object_id__in=lista, 
                                                                    frecuencia=op[0]).count())
            elif tipo == 'hombres':
                tabla[op[1]].append(PrevalenciaVBGHombre.objects.filter(content_type=get_content_type(tipo), 
                                                                    object_id__in=lista, 
                                                                    frecuencia=op[0]).count())    
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #4
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def donde_buscar_ayuda(request, tipo):
    titulo = '¿Donde debe buscar ayuda una mujer que vive VBG?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = BuscarAyuda.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                AccionVBG.objects.filter(content_type=get_content_type(tipo),
                                         object_id__in=lista,
                                         donde_buscar=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #5
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def participacion_en_espacios(request, tipo):
    titulo = u"¿En que organización o espacios comunitarios te encuentras integrada/o actualmente?"
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = Espacio.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                ParticipacionPublica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    espacio=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #6
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def tipo_vbg_ejercido(request, tipo):
    titulo = u"¿Qué tipo de VBG ha ejercido?"
    resultados = _query_set_filtrado(request, 'hombres')
    tabla = {}
    opciones = TipoVBG.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                PrevalenciaVBGHombre.objects.filter(
                    content_type=get_content_type('hombres'),
                    object_id__in=lista,
                    que_tipo=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) == 0:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #7
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def vbg_resolver_con(request, tipo):
    titulo = u'¿Considera que la VBG es un asunto que debe ser resuelto con la participación de?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = ResolverVBG.objects.all()
    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                AsuntoPublicoVBG.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    resolverse_con=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #8
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def hombres_violentos(request, tipo):
    titulo = "¿Cree usted que los hombres son violentos debido a?"
    resultados = _query_set_filtrado(request, tipo=tipo)
    tabla = {}
    campos = [
        field for field in CausaVBG._meta.fields
        if field.get_internal_type() == 'CharField'
    ]

    for field in campos:
        tabla[field.verbose_name] = []

        for key, grupo in resultados.items():
            lista = []
            [lista.append(encuesta.id) for encuesta in grupo]

            tabla[field.verbose_name].append(
                CausaVBG.objects.filter(content_type=get_content_type(tipo),
                                        object_id__in=lista,
                                        **{
                                            field.name: 'si'
                                        }).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #9
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def donde_buscar_ayuda(request, tipo):
    titulo = '¿Donde debe buscar ayuda una mujer que vive VBG?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = BuscarAyuda.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in opciones:
            tabla[op].append(AccionVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, donde_buscar=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #10
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def hablan_de(request, tipo='mujeres'):
    titulo = "¿Cuando alguien le habla de VBG usted cree que le estan hablando de?"
    resultados = _query_set_filtrado(request, tipo=tipo)
    tabla = {}
    opciones = HablanDe.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for opcion in opciones:
            query = ConceptoViolencia.objects.filter(
                content_type=get_content_type(tipo),
                object_id__in=lista,
                hablande=opcion,
                respuesta='si')
            tabla[opcion].append(query.count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 15:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #11
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def hablan_de(request, tipo='mujeres'):    
    titulo = "¿Cuando alguien le habla de VBG usted cree que le estan hablando de?"
    resultados = _query_set_filtrado(request, tipo=tipo)
    tabla = {}
    opciones = HablanDe.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]       

        for opcion in opciones:
            query = ConceptoViolencia.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, hablande=opcion, respuesta='si')
            tabla[opcion].append(query.count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 15:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #12
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def como_afecta(request, tipo):
    titulo = u'¿Como afecta la VBG a las mujeres, comunidad y la familia?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = ComoAfecta.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(EfectoVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, como_afecta=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #13
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def como_afecta(request, tipo):
    titulo = u'¿Como afecta la VBG a las mujeres, comunidad y la familia?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = ComoAfecta.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                EfectoVBG.objects.filter(content_type=get_content_type(tipo),
                                         object_id__in=lista,
                                         como_afecta=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #14
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def negociacion_pareja(request, tipo):
    """Que se debe hacer para que una negociacion de pareja sea exitosa"""
    titulo = u'¿Que se debe hacer para que una negociacion de pareja sea exitosa?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = NegociacionExitosa.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                ComunicacionAsertiva.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    negociacion_exitosa=op).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #15
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def que_acciones_realizar(request, tipo):
    titulo = "¿Cuando una mujer vive VBG cuales acciones deberia realizar?"
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = Decision.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                TomaDecision.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    decision=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #16
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def motivo_participacion(request, tipo):
    titulo = u'¿Qué le motiva a participar en esta organización?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = MotivoParticipacion.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                ParticipacionPublica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    motivo=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) == 0:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #17
0
ファイル: views.py プロジェクト: kailIII/trocaire
def generic_view_hm(request, tipo=None, **params):
    titulo = params['titulo']
    template = params.get('template_name', 'monitoreo/generica_1.html')
    if tipo == None:
        tipo = params.get('tipo', '')

    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = params['options']
    modelo = get_model('encuesta', params['modelo'])

    for op in opciones:
        key, val = checkOpt(op, params['options'])
        tabla[key] = []

    for key, grupo in resultados.items():
        for op in opciones:
            key, val = checkOpt(op, params['options'])
            tabla[key].append(
                modelo.objects.filter(content_type=get_content_type(tipo),
                                      object_id__in=grupo.values_list(
                                          'id', flat=True),
                                      **{
                                          params['field']: val
                                      }).count())

    checkvalue = lambda x: sum(x)
    #mandar a chequear si la suma de valores es menos de 10 (opcional)
    if not params.get('nocheck', False) == True:
        for key, value in tabla.items():
            if checkvalue(value) < 10:
                del tabla[key]

    #mandar a chequear si la suma de valores es cero (opcional)
    if params.get('checkcero', False) == True:
        for key, value in tabla.items():
            if sum(value) == 0:
                del tabla[key]

    totales = get_total(resultados)
    if tipo in ['mujeres', 'hombres']:
        tabla = get_list_with_total(tabla, totales)
    else:
        tabla = get_prom_lista_func(tabla, totales)

    #de no necesitar los grafos, activar esta variable nografo
    nografo = params.get('nografo', False)
    return render_to_response(template, locals(), RequestContext(request))
コード例 #18
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def ayuda_mujer_violencia(request, tipo):    
    titulo = u'¿En el último año ha ayudado usted a alguna mujer que ha vivido VBG?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in ['si', 'no']:
            tabla[op.title()].append(AccionVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, ha_ayudado=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #19
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def mujeres_representan(request, tipo):    
    titulo = u'¿En su comunidad existen mujeres que representan a otras mujeres?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in ['si', 'no']:
            tabla[op.title()].append(IncidenciaPolitica.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, existen_mujeres=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #20
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def mujeres_vbg(request, tipo):    
    titulo = '¿Conoce usted si en su comunidad existen mujeres que han vivido VBG?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in ['si', 'no']:
            tabla[op.title()].append(SituacionVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, conoce_mujeres=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #21
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def ha_ejercido_vbg(request, tipo):
    titulo = u'Considera usted que ejercido VBG contra una mujer el ultimo año?'
    resultados = _query_set_filtrado(request, 'hombres')
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(PrevalenciaVBGHombre.objects.filter(content_type=get_content_type('hombres'), object_id__in=lista, ha_vivido_vbg=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #22
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def trabaja_fuera(request, tipo):
    titulo = u'¿Trabaja usted fuera del hogar?'
    resultados = _query_set_filtrado(request, tipo)
    tabla ={}
    
    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in ['si', 'no']:
            tabla[op.title()].append(InformacionSocioEconomica.objects.filter(content_type=get_content_type(tipo), 
                                                                              object_id__in=lista, trabaja_fuera=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #23
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def viven_con_pareja(request, tipo):
    from trocaire.encuesta.models import SI_NO
    titulo = u'¿Actualmente tiene esposo/a o compañero/a?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in SI_NO:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in SI_NO:
            tabla[op[1]].append(ComposicionHogar.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, tiene_pareja=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #24
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def afeccion_vbg(request, tipo):    
    titulo = u'¿Cree usted que la VBG afecta a las mujeres, la familia y la comunidad?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(EfectoVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, afecta_mujeres=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #25
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def conoce_leyes(request, tipo):
    titulo = u'¿Sabe usted si en existe alguna ley que penaliza la violencia contra las mujeres?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in SI_NO_RESPONDE:
        tabla[op[1]] = []
    
    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in SI_NO_RESPONDE:
            tabla[op[1]].append(ConocimientoLey.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, existe_ley=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #26
0
ファイル: views.py プロジェクト: eos87/trocaire
def expresion_vbg(request, tipo):    
    titulo = '¿De que manera cree usted que se expresa la VBG?'
    resultados = _query_set_filtrado(request, tipo=tipo)
    tabla = {}
    campos = [field for field in ExpresionVBG._meta.fields if field.get_internal_type() == 'CharField']
    for field in campos:
        tabla[field.verbose_name] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for field in campos:
            tabla[field.verbose_name].append(ExpresionVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, ** {field.name: 'si'}).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #27
0
ファイル: views.py プロジェクト: eos87/trocaire
def generic_view_hm(request, tipo=None, ** params):
    titulo = params['titulo']
    template = params.get('template_name', 'monitoreo/generica_1.html')
    if tipo == None:
        tipo = params.get('tipo', '')
                    
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = params['options']
    modelo = get_model('encuesta', params['modelo'])

    for op in opciones:
        key, val = checkOpt(op, params['options'])
        tabla[key] = []

    for key, grupo in resultados.items():
        for op in opciones:
            key, val = checkOpt(op, params['options'])
            tabla[key].append(modelo.objects.filter(content_type=get_content_type(tipo), object_id__in=grupo.values_list('id', flat=True), 
                                                    ** {params['field']:val}).count())
    
    checkvalue = lambda x: sum(x)
    #mandar a chequear si la suma de valores es menos de 10 (opcional)
    if not params.get('nocheck', False) == True:        
        for key, value in tabla.items():
            if checkvalue(value) < 10:
                del tabla[key]
                
    #mandar a chequear si la suma de valores es cero (opcional)
    if params.get('checkcero', False) == True:
        for key, value in tabla.items():
            if sum(value) == 0:
                del tabla[key]

    totales = get_total(resultados)
    if tipo in ['mujeres', 'hombres']:
        tabla = get_list_with_total(tabla, totales)
    else:
        tabla = get_prom_lista_func(tabla, totales)
        
    #de no necesitar los grafos, activar esta variable nografo
    nografo = params.get('nografo', False)
    return render_to_response(template, locals(), RequestContext(request))
コード例 #28
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def hombres_violencia_mujeres(request, tipo):    
    titulo = '¿Para usted los hombres ejercen violencia hacia las mujeres porque?'
    resultados = _query_set_filtrado(request, tipo=tipo)
    tabla = {}
    campos = [field for field in JustificacionVBG._meta.fields if field.get_internal_type() == 'CharField']

    for field in campos:
        tabla[field.verbose_name] = []

        for key, grupo in resultados.items():
            lista = []
            [lista.append(encuesta.id) for encuesta in grupo]

            tabla[field.verbose_name].append(JustificacionVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, ** {field.name: 'si'}).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #29
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def persona_ejercido(request, tipo):
    titulo = u'¿Quién es la persona que ha ejercido VBG sobre usted?'
    resultados = _query_set_filtrado(request, 'mujeres')
    tabla = {}
    
    opciones = Quien.objects.all()
    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(PrevalenciaVBG.objects.filter(content_type=get_content_type('mujeres'), 
                                                                      object_id__in=lista, 
                                                                      quien=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))    
コード例 #30
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def decide_recursos(request, tipo):
    titulo = u'¿Mencione los recursos sobre los cuales ud decide?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = Recurso.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(AccesoControlRecurso.objects.filter(content_type=get_content_type(tipo), 
                                                                      object_id__in=lista, 
                                                                      recursos_decide=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #31
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def que_debe_hacer(request, tipo):    
    titulo = "¿Si un hombre le pega a su pareja que acciones deberia de tomar?"
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = QueDebeHacer.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(AccionVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, accion_tomar=op).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #32
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def negociacion_pareja(request, tipo):
    """Que se debe hacer para que una negociacion de pareja sea exitosa"""
    titulo = u'¿Que se debe hacer para que una negociacion de pareja sea exitosa?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = NegociacionExitosa.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(ComunicacionAsertiva.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, negociacion_exitosa=op).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #33
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def satisfaccion(request, tipo):
    titulo = u'¿Qué tan satisfechas están las mujeres con quienes las representan?'
    from trocaire.encuesta.models import SATISFECHAS    
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = SATISFECHAS
        
    for op in opciones:
        tabla[op[1]] = []
    
    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
       
        for op in opciones:            
            tabla[op[1]].append(IncidenciaPolitica.objects.filter(content_type=get_content_type(tipo), 
                                                                    object_id__in=lista, 
                                                                    satisfecha=op[0]).count())    
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #34
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def que_hace_dinero(request, tipo):
    from trocaire.encuesta.models import QUE_HACE_DINERO
    titulo = u'¿Que hace usted con el dinero que gana?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = QUE_HACE_DINERO

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op[1]].append(InformacionSocioEconomica.objects.filter(content_type=get_content_type(tipo), 
                                                                      object_id__in=lista, 
                                                                      hace_dinero=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #35
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def ayuda_mujer_violencia(request, tipo):
    titulo = u'¿En el último año ha ayudado usted a alguna mujer que ha vivido VBG?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(
                AccionVBG.objects.filter(content_type=get_content_type(tipo),
                                         object_id__in=lista,
                                         ha_ayudado=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #36
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def calidad_servicios(request, tipo):
    titulo = u'¿Cómo valora Ud los servicios que las intituciones ofrecen a las mujeres que viven VBG?'
    from trocaire.encuesta.models import SERVICIOS
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = SERVICIOS
        
    for op in opciones:
        tabla[op[1]] = []
    
    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
       
        for op in opciones:            
            tabla[op[1]].append(CalidadAtencion.objects.filter(content_type=get_content_type(tipo), 
                                                                    object_id__in=lista, 
                                                                    valor_servicio=op[0]).count())    
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html", RequestContext(request, locals()))
コード例 #37
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def aporte_ingresos(request, tipo):
    titulo = u'¿Quién a quienes aportan ingresos al hogar?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    
    opciones = Aporta.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(InformacionSocioEconomica.objects.filter(content_type=get_content_type(tipo), 
                                                                      object_id__in=lista, 
                                                                      aportan=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #38
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def mujeres_representan(request, tipo):
    titulo = u'¿En su comunidad existen mujeres que representan a otras mujeres?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(
                IncidenciaPolitica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    existen_mujeres=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #39
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def trabaja_fuera(request, tipo):
    titulo = u'¿Trabaja usted fuera del hogar?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(
                InformacionSocioEconomica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    trabaja_fuera=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #40
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def nivel_educativo(request, tipo):
    from trocaire.encuesta.models import NIVEL_EDUCATIVO
    titulo = u'¿Cuál es su nivel educativo más alto?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    
    opciones = NIVEL_EDUCATIVO

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op[1]].append(InformacionSocioEconomica.objects.filter(content_type=get_content_type(tipo), 
                                                                      object_id__in=lista, 
                                                                      nivel_educativo=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)    
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #41
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def afeccion_vbg(request, tipo):
    titulo = u'¿Cree usted que la VBG afecta a las mujeres, la familia y la comunidad?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(
                EfectoVBG.objects.filter(content_type=get_content_type(tipo),
                                         object_id__in=lista,
                                         afecta_mujeres=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #42
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def mujeres_vbg(request, tipo):
    titulo = '¿Conoce usted si en su comunidad existen mujeres que han vivido VBG?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(
                SituacionVBG.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    conoce_mujeres=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #43
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def ha_ejercido_vbg(request, tipo):
    titulo = u'Considera usted que ejercido VBG contra una mujer el ultimo año?'
    resultados = _query_set_filtrado(request, 'hombres')
    tabla = {}

    for op in ['si', 'no']:
        tabla[op.title()] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in ['si', 'no']:
            tabla[op.title()].append(
                PrevalenciaVBGHombre.objects.filter(
                    content_type=get_content_type('hombres'),
                    object_id__in=lista,
                    ha_vivido_vbg=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #44
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def conoce_leyes(request, tipo):
    titulo = u'¿Sabe usted si en existe alguna ley que penaliza la violencia contra las mujeres?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in SI_NO_RESPONDE:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in SI_NO_RESPONDE:
            tabla[op[1]].append(
                ConocimientoLey.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    existe_ley=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #45
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def persona_ejercido(request, tipo):
    titulo = u'¿Quién es la persona que ha ejercido VBG sobre usted?'
    resultados = _query_set_filtrado(request, 'mujeres')
    tabla = {}

    opciones = Quien.objects.all()
    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                PrevalenciaVBG.objects.filter(
                    content_type=get_content_type('mujeres'),
                    object_id__in=lista,
                    quien=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #46
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def viven_con_pareja(request, tipo):
    from trocaire.encuesta.models import SI_NO
    titulo = u'¿Actualmente tiene esposo/a o compañero/a?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    for op in SI_NO:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in SI_NO:
            tabla[op[1]].append(
                ComposicionHogar.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    tiene_pareja=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #47
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def decide_recursos(request, tipo):
    titulo = u'¿Mencione los recursos sobre los cuales ud decide?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = Recurso.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                AccesoControlRecurso.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    recursos_decide=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #48
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def vbg_resolver_con(request, tipo):    
    titulo = u'¿Considera que la VBG es un asunto que debe ser resuelto con la participación de?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = ResolverVBG.objects.all()
    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in opciones:
            tabla[op].append(AsuntoPublicoVBG.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, resolverse_con=op).count())
            
    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():        
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #49
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def que_debe_hacer(request, tipo):
    titulo = "¿Si un hombre le pega a su pareja que acciones deberia de tomar?"
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = QueDebeHacer.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                AccionVBG.objects.filter(content_type=get_content_type(tipo),
                                         object_id__in=lista,
                                         accion_tomar=op).count())

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)

    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #50
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def calidad_servicios(request, tipo):
    titulo = u'¿Cómo valora Ud los servicios que las intituciones ofrecen a las mujeres que viven VBG?'
    from trocaire.encuesta.models import SERVICIOS
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = SERVICIOS

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op[1]].append(
                CalidadAtencion.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    valor_servicio=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_pie.html",
                              RequestContext(request, locals()))
コード例 #51
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def satisfaccion(request, tipo):
    titulo = u'¿Qué tan satisfechas están las mujeres con quienes las representan?'
    from trocaire.encuesta.models import SATISFECHAS
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = SATISFECHAS

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op[1]].append(
                IncidenciaPolitica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    satisfecha=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #52
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def que_hace_dinero(request, tipo):
    from trocaire.encuesta.models import QUE_HACE_DINERO
    titulo = u'¿Que hace usted con el dinero que gana?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = QUE_HACE_DINERO

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op[1]].append(
                InformacionSocioEconomica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    hace_dinero=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #53
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def frecuencia(request, tipo):
    from trocaire.encuesta.models import FRECUENCIA2, FRECUENCIA
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    if tipo == 'mujeres':
        opciones = FRECUENCIA
        titulo = u'¿Con que frecuencia ha vivido VBG este último año?'
    elif tipo == 'hombres':
        titulo = u'¿Con que frecuencia ha ejercido VBG este último año?'
        opciones = FRECUENCIA2

    for op in opciones:
        tabla[op[1]] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            if tipo == 'mujeres':
                tabla[op[1]].append(
                    PrevalenciaVBG.objects.filter(
                        content_type=get_content_type(tipo),
                        object_id__in=lista,
                        frecuencia=op[0]).count())
            elif tipo == 'hombres':
                tabla[op[1]].append(
                    PrevalenciaVBGHombre.objects.filter(
                        content_type=get_content_type(tipo),
                        object_id__in=lista,
                        frecuencia=op[0]).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #54
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def aporte_ingresos(request, tipo):
    titulo = u'¿Quién a quienes aportan ingresos al hogar?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}

    opciones = Aporta.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(
                InformacionSocioEconomica.objects.filter(
                    content_type=get_content_type(tipo),
                    object_id__in=lista,
                    aportan=op).count())
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html",
                              RequestContext(request, locals()))
コード例 #55
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def tipo_vbg_ejercido(request, tipo):
    titulo = u"¿Qué tipo de VBG ha ejercido?"
    resultados = _query_set_filtrado(request, 'hombres')
    tabla = {}
    opciones = TipoVBG.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
       
        for op in opciones:
            tabla[op].append(PrevalenciaVBGHombre.objects.filter(content_type=get_content_type('hombres'), object_id__in=lista, que_tipo=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) == 0:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #56
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def que_acciones_realizar(request, tipo):
    titulo = "¿Cuando una mujer vive VBG cuales acciones deberia realizar?"
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = Decision.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]
        
        for op in opciones:
            tabla[op].append(TomaDecision.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, decision=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #57
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def participacion_en_espacios(request, tipo):
    titulo = u"¿En que organización o espacios comunitarios te encuentras integrada/o actualmente?"
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = Espacio.objects.all()

    for op in opciones:
        tabla[op] = []

    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(ParticipacionPublica.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, espacio=op).count())

    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) < 10:
            del tabla[key]

    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))
コード例 #58
0
ファイル: views.py プロジェクト: byroncorrales/trocaire
def motivo_participacion(request, tipo):
    titulo = u'¿Qué le motiva a participar en esta organización?'
    resultados = _query_set_filtrado(request, tipo)
    tabla = {}
    opciones = MotivoParticipacion.objects.all()
    
    for op in opciones:
        tabla[op] = []
        
    for key, grupo in resultados.items():
        lista = []
        [lista.append(encuesta.id) for encuesta in grupo]

        for op in opciones:
            tabla[op].append(ParticipacionPublica.objects.filter(content_type=get_content_type(tipo), object_id__in=lista, motivo=op).count())
    
    checkvalue = lambda x: sum(x)
    for key, value in tabla.items():
        if checkvalue(value) == 0:
            del tabla[key]
    
    totales = get_total(resultados)
    tabla = get_list_with_total(tabla, totales)
    return render_to_response("monitoreo/generica_1.html", RequestContext(request, locals()))