# -*- coding: utf-8 -*- """ Sistema Automatizado de Planificación Integral Comunal SAPIC Copyleft (@) 2017 CENDITEL nodo Mérida - Copyleft (@) 2017 CENDITEL nodo Mérida - https://planificacion.cenditel.gob.ve/trac/wiki/WikiStart#a5.-SistemaAutomatizadodePlanificaciónIntegralComunalSAPIC """ ## @package explicacion_situacional.ajax # # Ajax correspondientes a la explicacion situacional # @author Ing. Leonel Paolo Hernandez Macchiarulo (lhernandez at cenditel.gob.ve) # @author Centro Nacional de Desarrollo e Investigación en Tecnologías Libres # (CENDITEL) nodo Mérida - Venezuela # @copyright GNU Public License versión 2 (GPLv2) # @version 1.0 import json from django.shortcuts import render, redirect from django.core.urlresolvers import reverse_lazy from django.http import JsonResponse, HttpResponse from django.core.serializers import serialize from explicacion_situacional.modelsEncuestas.modelsParticipacion import ( RespuestaSino, RespuestaOpciones, RespuestaAbierta, RespuestaUbicacion ) from explicacion_situacional.modelsExplicacion.modelsExplicacionesSituacional import ExplicacionSituacional def validar_participacion(request): """! Función que valida si un usuario ya participó en la consulta con un ente en particular @author Rodrigo Boet (rboet at cenditel.gob.ve) @copyright GNU/GPLv2 @date 21-04-2017 @param request {object} Objeto que contiene la petición @return Retorna un json con la respuesta """ if not request.is_ajax(): return JsonResponse({'mensaje': False, 'error': str('La solicitud no es ajax')}) user = request.GET.get('user', None) consulta = request.GET.get('consulta', None) if(user and consulta): respuesta_sino = RespuestaSino.objects.filter(pregunta__consulta=consulta,user=user) respuesta_abierta = RespuestaAbierta.objects.filter(pregunta__consulta=consulta,user=user) respuesta_opciones = RespuestaOpciones.objects.filter(opcion__pregunta__consulta=consulta,user=user) if(respuesta_sino or respuesta_abierta or respuesta_opciones): return JsonResponse({'mensaje': True,'participacion':True}) return JsonResponse({'mensaje': True,'participacion':False}) else: return JsonResponse({'mensaje': False, 'error': str('No envío el \ usuario y/o el numero de la encuesta')}) def cargar_geometria(request): try: comunidad_id = request.GET.get('comunidad_id') explicacion = ExplicacionSituacional.objects.filter( fk_organizacion=comunidad_id ) if (explicacion): organizacion_social = ExplicacionSituacional.objects.get( fk_organizacion=comunidad_id ) ## Retorna los datos de la organización social return HttpResponse(json.dumps({ 'result': True, 'coordenadas': str(organizacion_social.coordenadas.geojson), 'comunidad': organizacion_social.fk_organizacion.nombre })) ## Retorna falso si no encuentra información return HttpResponse(json.dumps({'resultado': False})) except Exception as e: return HttpResponse(json.dumps({'resultado': False, 'error': e}))