Esempio n. 1
0
def cargar_imagenes_animal(request):
    print "carga de imagenes animal"
    try:
        datos = json.loads(request.POST['data'])
        try:
            if comprobar_usuario(datos):
                animal_id = datos.get('animal')
                try:
                    animal_detalle = get_object_or_None(Animal, pk=animal_id)
                    protectora_id = animal_detalle.protectora
                    objeto_protectora = get_object_or_None(Protectora,
                                                           pk=protectora_id.pk)
                except:
                    response_data = {
                        'result': 'error',
                        'message': 'Animal no encontrado'
                    }
                    return http.HttpResponse(json.dumps(response_data),
                                             content_type="application/json")

                fotos = []
                for foto in animal_detalle.imagenanimal_set.all():
                    fotos.append(str(foto.imagen))

                protectora = {
                    "pk": objeto_protectora.pk,
                    "nombre": objeto_protectora.nombre,
                    "provincia": objeto_protectora.provincia.provincia,
                    "direccion": objeto_protectora.direccion,
                    "codigo_postal": objeto_protectora.cod_postal,
                    "descripcion": objeto_protectora.descripcion
                }
                response_data = {
                    'result': 'ok',
                    'message': 'listado de animales',
                    "foto": fotos,
                    "protectora": protectora
                }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }
        print response_data
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 2
0
def cargar_imagenes_protectora(request):
    print "carga de imagenes protectora"
    try:
        datos = json.loads(request.POST['data'])
        try:
            if comprobar_usuario(datos):
                protectora_id = datos.get('protectora')
                try:
                    protectora_detalle = get_object_or_None(Protectora,
                                                            pk=protectora_id)
                except:
                    response_data = {
                        'result': 'error',
                        'message': 'Protectora no encontrado'
                    }
                    return http.HttpResponse(json.dumps(response_data),
                                             content_type="application/json")

                fotos = []
                for foto in protectora_detalle.imagenprotectora_set.all():
                    fotos.append(str(foto.imagen))

                redes = []
                for red in protectora_detalle.redsocial_set.all():
                    redes.append({
                        'pk': red.pk,
                        'red': red.tipo,
                        'valor': red.valor
                    })

                print redes
                response_data = {
                    'result': 'ok',
                    'message': 'listado de imagenes de protectora',
                    "foto": fotos,
                    "redes": redes
                }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }
        print response_data
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 3
0
def cargar_conversaciones(request):
    print "carga de conversaciones"
    try:
        datos = json.loads(request.POST['data'])

        try:
            if comprobar_usuario(datos):
                usuario_id = datos.get("usuario_id")
                usuario = get_object_or_None(User, pk=usuario_id)
                conversaciones = Conversacion.objects.filter(
                    usuario=usuario).order_by('-pk')

                lista_conversaciones = []
                for conversacion in conversaciones:
                    protectora = conversacion.protectora.protectora_set.all()
                    protectora_objeto = get_object_or_None(Protectora,
                                                           pk=protectora)
                    print protectora_objeto

                    lista_conversaciones.append({
                        'pk': str(conversacion.pk),
                        'protectora': {
                            "pk": protectora_objeto.pk,
                            "nombre": protectora_objeto.nombre,
                            "direccion": protectora_objeto.direccion,
                            "codigo_postal": protectora_objeto.cod_postal,
                            "provincia": protectora_objeto.provincia.provincia,
                            "descripcion": protectora_objeto.descripcion
                        }
                    })

                response_data = {
                    'result': 'ok',
                    'message': 'listado de conversaciones',
                    "lista_conversaciones": lista_conversaciones
                }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }

        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 4
0
def enviar_mensaje_protectora_de_usuario(request):
    print "enviando mensaje a la protectora y devuelvo mensaje"
    try:
        datos = json.loads(request.POST['data'])
        try:
            if comprobar_usuario(datos):
                protectora_id = datos.get('protectora')
                usuario_id = datos.get('usuario_id')
                mensaje = datos.get('message')
                print mensaje
                try:
                    protectora_objeto = get_object_or_None(Protectora,
                                                           pk=protectora_id)
                    usuario_objeto = get_object_or_None(User, pk=usuario_id)
                except:
                    response_data = {
                        'result': 'error',
                        'message': 'Protectora o Usuario no encontrados'
                    }
                    return http.HttpResponse(json.dumps(response_data),
                                             content_type="application/json")

                admin_protectora = protectora_objeto.admin.pk

                usuario_objeto2 = get_object_or_None(User, pk=admin_protectora)

                conversacion = Conversacion.objects.filter(
                    usuario=usuario_objeto)
                if conversacion is not None:
                    conversacion = conversacion.filter(
                        protectora=usuario_objeto2)
                    if conversacion is not None:
                        conversacion = get_object_or_None(
                            Conversacion,
                            protectora=usuario_objeto2,
                            usuario=usuario_objeto)
                    else:
                        conversacion = Conversacion.objects.create(
                            protectora=usuario_objeto2, usuario=usuario_objeto)
                        conversacion.save()
                else:
                    conversacion = Conversacion.objects.create(
                        protectora=usuario_objeto2, usuario=usuario_objeto)
                    conversacion.save()

                mensaje = Mensaje.objects.create(usuario=usuario_objeto,
                                                 mensaje=mensaje,
                                                 conversacion=conversacion)
                mensaje.save()

                if mensaje.usuario.username == usuario_objeto.username:
                    emisario = "usuario"
                else:
                    emisario = "protectora"

                lista_conversaciones = []
                lista_conversaciones.append({
                    'pk': mensaje.pk,
                    'usuario': {
                        'username': usuario_objeto.username,
                        'nombre': usuario_objeto.first_name,
                        'apellidos': usuario_objeto.last_name,
                        'email': usuario_objeto.email,
                        'telefono': usuario_objeto.datosextrauser.telefono,
                        'direccion': usuario_objeto.datosextrauser.direccion,
                        'codigo_postal':
                        usuario_objeto.datosextrauser.cod_postal,
                        'provincia':
                        usuario_objeto.datosextrauser.provincia.provincia,
                        'foto': str(usuario_objeto.datosextrauser.imagen)
                    },
                    'protectora': {
                        'pk': protectora_objeto.pk,
                        'nombre': protectora_objeto.nombre,
                        'direccion': protectora_objeto.direccion,
                        'codigo_postal': protectora_objeto.cod_postal,
                        'provincia': protectora_objeto.provincia.provincia,
                        'descripcion': protectora_objeto.descripcion
                    },
                    'mensaje': mensaje.mensaje,
                    'emisario': emisario,
                    'hora': str(mensaje.hora)
                })

                response_data = {
                    'result': 'ok',
                    'message': 'mensaje enviado',
                    'lista_conversaciones': lista_conversaciones
                }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }
        print response_data
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 5
0
def cargar_mensajes(request):
    print "carga de mensajes"
    try:
        datos = json.loads(request.POST['data'])
        print datos
        try:
            if comprobar_usuario(datos):
                usuario_id = datos.get("usuario_id")
                usuario = get_object_or_None(User, pk=usuario_id)

                protectora_id = datos.get("id_protectora")
                protectora = get_object_or_None(Protectora, pk=protectora_id)
                protectora_usuario = protectora.admin.pk
                protectora_usuario = get_object_or_None(User,
                                                        pk=protectora_usuario)

                conversacion = Conversacion.objects.filter(usuario=usuario)
                lista_conversaciones = []
                if conversacion is not None:
                    conversacion = conversacion.filter(
                        protectora=protectora_usuario)
                    if conversacion is not None:
                        mensajes = Mensaje.objects.filter(
                            conversacion=conversacion)
                        for mensaje in mensajes:
                            if mensaje.usuario.pk == usuario.pk:
                                emisario = "usuario"
                            else:
                                emisario = "protectora"

                            lista_conversaciones.append({
                                'pk':
                                mensaje.pk,
                                'usuario': {
                                    'username': usuario.username,
                                    'nombre': usuario.first_name,
                                    'apellidos': usuario.last_name,
                                    'email': usuario.email,
                                    'telefono':
                                    usuario.datosextrauser.telefono,
                                    'direccion':
                                    usuario.datosextrauser.direccion,
                                    'codigo_postal':
                                    usuario.datosextrauser.cod_postal,
                                    'provincia':
                                    usuario.datosextrauser.provincia.provincia,
                                    'foto': str(usuario.datosextrauser.imagen)
                                },
                                'protectora': {
                                    'pk': protectora.pk,
                                    'nombre': protectora.nombre,
                                    'direccion': protectora.direccion,
                                    'codigo_postal': protectora.cod_postal,
                                    'provincia':
                                    protectora.provincia.provincia,
                                    'descripcion': protectora.descripcion
                                },
                                'mensaje':
                                mensaje.mensaje,
                                'emisario':
                                emisario,
                                'hora':
                                str(mensaje.hora)
                            })

                response_data = {
                    'result': 'ok',
                    'message': 'listado de conversaciones',
                    "lista_conversaciones": lista_conversaciones
                }

            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
            print response_data
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }

        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 6
0
def enviar_mensaje_protectora(request):
    print "enviando mensaje a la protectora"
    try:
        datos = json.loads(request.POST['data'])
        try:
            if comprobar_usuario(datos):
                protectora_id = datos.get('protectora')
                usuario_id = datos.get('usuario_id')
                mensaje = datos.get('message')
                print mensaje
                try:
                    protectora_objeto = get_object_or_None(Protectora,
                                                           pk=protectora_id)
                    usuario_objeto = get_object_or_None(User, pk=usuario_id)
                except:
                    response_data = {
                        'result': 'error',
                        'message': 'Protectora o Usuario no encontrados'
                    }
                    return http.HttpResponse(json.dumps(response_data),
                                             content_type="application/json")

                admin_protectora = protectora_objeto.admin.pk

                usuario_objeto2 = get_object_or_None(User, pk=admin_protectora)

                conversacion = get_object_or_None(Conversacion,
                                                  protectora=usuario_objeto2,
                                                  usuario=usuario_objeto)
                print conversacion

                if conversacion is None:
                    conversacion = Conversacion.objects.create(
                        protectora=usuario_objeto2, usuario=usuario_objeto)
                    conversacion.save()
                    print conversacion
                else:
                    conversacion = get_object_or_None(
                        Conversacion,
                        protectora=usuario_objeto2,
                        usuario=usuario_objeto)
                    print conversacion

                mensaje = Mensaje.objects.create(usuario=usuario_objeto,
                                                 mensaje=mensaje,
                                                 conversacion=conversacion)
                mensaje.save()

                response_data = {'result': 'ok', 'message': 'mensaje enviado'}
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }
        print response_data
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 7
0
def dar_mg(request):
    print "dar/quitar mg"
    try:
        datos = json.loads(request.POST['data'])

        try:
            usuario_id = datos.get('usuario_id')
            token = datos.get('token')
            animal_id = datos.get('animal')
            megusta = datos.get('me_gusta')
            print usuario_id
            print token
            if comprobar_usuario(datos):
                usuario = get_object_or_None(User, pk=usuario_id)
                animal = get_object_or_None(Animal, pk=animal_id)
                if animal is not None:
                    if megusta == "true":
                        mg = MeGusta.objects.filter(usuario=usuario)
                        if mg is not None:
                            mg = mg.filter(animal=animal)
                            if mg is not None:
                                mg.delete()
                                response_data = {
                                    'result': 'ok',
                                    'message': 'Se ha quitado mg correctamente'
                                }

                    else:
                        mg = MeGusta.objects.create(animal=animal,
                                                    usuario=usuario)
                        mg.save()
                        response_data = {
                            'result': 'ok',
                            'message': 'Se ha dado mg correctamente'
                        }
                else:
                    response_data = {
                        'result': 'ok',
                        'message': 'no hay animal'
                    }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }

        print response_data
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 8
0
def cargar_animales_me_gusta(request):
    print "carga de animales que gustan"
    try:
        datos = json.loads(request.POST['data'])

        try:
            token = datos.get('token')
            usuario_id = datos.get('usuario_id')
            if comprobar_usuario(datos):
                usuario = get_object_or_None(User, pk=usuario_id)
                animales = MeGusta.objects.filter(usuario=usuario)
                lista_animales = []
                lista_mg = []
                for mg in animales:
                    lista_mg.append(mg.animal)

                for animal in lista_mg:
                    fotos = []
                    for foto in animal.imagenanimal_set.all():
                        fotos.append(str(foto.imagen))

                    meGusta = False

                    animales = MeGusta.objects.filter(animal=animal)
                    if animales.count() > 0:
                        animales = animales.filter(usuario=usuario)
                        if animales.count() > 0:
                            meGusta = True

                    lista_animales.append({
                        "pk": animal.pk,
                        "nombre": animal.nombre,
                        "raza": animal.raza.nombre,
                        "mascota": animal.mascota,
                        "color": animal.color,
                        "edad": animal.edad,
                        "pelaje": animal.tipo_pelaje,
                        "sexo": animal.sexo,
                        "tamano": animal.tamano,
                        "peso": animal.peso,
                        "enfermedad": animal.enfermedad,
                        "vacuna": animal.vacuna,
                        "chip": animal.chip,
                        "descripcion": animal.descripcion,
                        # "fecha": animal.fecha,
                        "estado": animal.estado,
                        "id_protectora": animal.protectora.pk,
                        "foto": fotos[0],
                        "me_gusta": meGusta
                    })

                    if len(lista_animales) == 0:
                        response_data = {
                            'result': 'ok_sin_animales',
                            'message': 'no hay animales con dichos filtros'
                        }
                    else:
                        response_data = {
                            'result': 'ok',
                            'message': 'listado de animales',
                            "lista_animales": lista_animales
                        }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }

        print response_data
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")
Esempio n. 9
0
def cargar_protectoras(request):
    print "carga de protectoras"
    try:
        datos = json.loads(request.POST['data'])

        try:
            if comprobar_usuario(datos):
                protectoras = Protectora.objects.all()

                try:
                    comunidad = datos.get('comunidad_autonoma')
                    if comunidad:
                        objeto_comunidad = get_object_or_None(
                            ComunidadAutonoma, comunidad_autonoma=comunidad)
                        protectoras = protectoras.filter(
                            provincia__comunidad_autonoma=objeto_comunidad)
                        print protectoras
                except:
                    pass

                try:
                    provincia = datos.get('provincia')
                    if provincia:
                        objeto_provincia = get_object_or_None(
                            Provincia, provincia=provincia)
                        protectoras = protectoras.filter(
                            provincia=objeto_provincia)
                except:
                    pass

                lista_protectoras = []
                for protectora in protectoras:
                    lista_protectoras.append({
                        "pk":
                        protectora.pk,
                        "nombre":
                        protectora.nombre,
                        "direccion":
                        protectora.direccion,
                        "codigo_postal":
                        protectora.cod_postal,
                        "provincia":
                        protectora.provincia.provincia,
                        "descripcion":
                        protectora.descripcion
                    })

                if len(lista_protectoras) == 0:
                    response_data = {
                        'result': 'ok_sin_protectoras',
                        'message': 'no hay protectoras con dichos filtros'
                    }
                else:
                    response_data = {
                        'result': 'ok',
                        'message': 'listado de protectoras',
                        "lista_protectoras": lista_protectoras
                    }
            else:
                response_data = {
                    'result': 'error',
                    'message': 'error de token o usuario'
                }
            print response_data
        except:
            response_data = {
                'result': 'error',
                'message': 'error de token o usuario'
            }

        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")

    except Exception as e:
        response_data = {
            'errorcode': 'U0002',
            'result': 'error',
            'message': str(e)
        }
        return http.HttpResponse(json.dumps(response_data),
                                 content_type="application/json")