source: sapic/explicacion_situacional/ajax.py @ 7522254

Last change on this file since 7522254 was 7522254, checked in by Ing. Roldan Vargas <roldandvg@…>, 6 años ago

agregada barra de depuración para entornos de desarrollo y correcciones en código fuente

  • Propiedad mode establecida a 100644
File size: 3.0 KB
Línea 
1# -*- coding: utf-8 -*-
2"""
3Sistema Automatizado de Planificación Integral Comunal SAPIC
4
5Copyleft (@) 2017 CENDITEL nodo Mérida - Copyleft (@) 2017 CENDITEL nodo Mérida - https://planificacion.cenditel.gob.ve/trac/wiki/WikiStart#a5.-SistemaAutomatizadodePlanificaciónIntegralComunalSAPIC
6"""
7## @package explicacion_situacional.ajax
8#
9# Ajax correspondientes a la explicacion situacional
10# @author Ing. Leonel Paolo Hernandez Macchiarulo (lhernandez at cenditel.gob.ve)
11# @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e Investigación en Tecnologías Libres
12# (CENDITEL) nodo Mérida - Venezuela</a>
13# @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
14# @version 1.0
15import json
16from django.shortcuts import render, redirect
17from django.core.urlresolvers import reverse_lazy
18from django.http import JsonResponse
19from explicacion_situacional.modelsEncuestas.modelsParticipacion import (
20    RespuestaSino, RespuestaOpciones,
21    RespuestaAbierta, RespuestaUbicacion
22)
23from explicacion_situacional.modelsExplicacion.modelsExplicacionesSituacional import ExplicacionSituacional
24
25
26def validar_participacion(request):
27    """!
28    Función que valida si un usuario ya participó en la consulta con un ente en particular
29
30    @author Rodrigo Boet (rboet at cenditel.gob.ve)
31    @copyright GNU/GPLv2
32    @date 21-04-2017
33    @param request <b>{object}</b> Objeto que contiene la petición
34    @return Retorna un json con la respuesta
35    """
36    if not request.is_ajax():
37        return JsonResponse({'mensaje': False, 'error': str('La solicitud no es ajax')})
38    user = request.GET.get('user', None)
39    consulta = request.GET.get('consulta', None)
40    if(user and consulta):
41        respuesta_sino = RespuestaSino.objects.filter(pregunta__consulta=consulta,user=user)
42        respuesta_abierta = RespuestaAbierta.objects.filter(pregunta__consulta=consulta,user=user)
43        respuesta_opciones = RespuestaOpciones.objects.filter(opcion__pregunta__consulta=consulta,user=user)
44        if(respuesta_sino or respuesta_abierta or respuesta_opciones):
45            return JsonResponse({'mensaje': True,'participacion':True})
46        return JsonResponse({'mensaje': True,'participacion':False})
47    else:
48        return JsonResponse({'mensaje': False, 'error': str('No envío el \
49                              usuario y/o el numero de la encuesta')})
50
51def cargar_geometria(request):
52    if not request.is_ajax():
53        return JsonResponse({'result': False, 'error': str('La solicitud no es ajax')})
54
55    comunidad_id = request.GET.get('comunidad_id')
56
57    if (ExplicacionSituacional.objects.filter(fk_organizacion=comunidad_id)):
58        organizacion_social = ExplicacionSituacional.objects.get(fk_organizacion=comunidad_id)
59
60        ## Retorna los datos de la organización social
61        return JsonResponse({'result': True, 'coordenadas': str(organizacion_social.coordenadas.geojson)})
62
63    ## Retorna falso si no encuentra información
64    return JsonResponse({'result': False})
65
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.