Ejemplo n.º 1
0
    def post(self):
        json = request.json

        if json.get('token', False) and json.get('tipo', False) and json.get('interesse', False) \
            and json.get('texto', False):

            try:
                info_token = Token.validar_token(json['token'])

                nick = Database().get_document('usuarios', {'_id': info_token['id_usuario']}, {'nick': 1})[0]

                Database().set_document('postagens', {
                    'usuario': nick['nick'],
                    'tipo': json['tipo'],
                    'interesse': json['interesse'],
                    'texto': json['texto'],
                    'likes': [],
                    'comentarios': [] 
                })

                return Resposta.sucesso('Postagem enviada')
            except ExpiredSignatureError:
                return Resposta.nao_aceito('Token expirado')
            except Exception as e:
                return Resposta.error(str(e))
        else:
            return Resposta.error('JSON Inválido!')
Ejemplo n.º 2
0
    def put(self):
        json = request.json

        if json.get('token', False) and json.get('id_post', False) \
            and (json.get('comentario', False) or json.get('like', False)):

            try:
                info_token = Token.validar_token(json['token'])
                json['id_post'] = ObjectId(json['id_post'])

                if json.get('comentario', False):
                    Database().update_document('postagens', {'_id': json['id_post']}, {
                        '$push': {'comentarios': [info_token['id_usuario'], json['comentario']]}
                    })

                    return Resposta.sucesso('Comentário enviado')
                else:
                    Database().update_document('postagens', {'_id': json['id_post']},{
                        '$push': {'likes': info_token['id_usuario']}
                    })

                    return Resposta.sucesso('Curtida enviada')
            except ExpiredSignatureError:
                return Resposta.nao_aceito('Token expirado')
            except Exception as e:
                return Resposta.error(str(e))
        else:
            return Resposta.error('JSON Inválido!')
Ejemplo n.º 3
0
def set_bubble(token, dados, pai):
    __db = Database()
    infos = Token.validar_token(token)
    usuario = __db.get_document('usuarios', filter=
    {'$and':[{'_id':infos['id_usuario']}, {'senha':infos['pwd']}]})
    if usuario:
        __db.set_document('bubbles', dados)
    return "Sucesso!"
Ejemplo n.º 4
0
def cadastrar(infos):
    __db = Database()
    if __db.get_document('usuarios', {'nick':infos['nick']}):
        raise DuplicateKeyError('Nick já existe!')
    infos = {
        '_id':infos['email'], 
        'nick':infos['nick'], 
        'senha':Sha256(infos['senha']).hash,
        'interesses':list(),
        'tipo':list()
    }

    __db.set_document('usuarios', infos)
    return infos
Ejemplo n.º 5
0
    def post(self):
        json = request.json

        if json.get('email', False) and json.get('senha', False):
            senha = Sha256(json['senha']).hash
            usuario = Database().get_document('usuarios', {
                '_id': json['email'],
                'senha': senha
            })

            if usuario:
                usuario = usuario[0]
                logger.debug(f"{json['email']} - CONECTADO")

                try:
                    token = Token.gerar(usuario['senha'], usuario['_id'])
                    return Resposta.token_validado(token)
                except ExpiredSignatureError:
                    return Resposta.nao_aceito('Token expirado')
                except Exception as e:
                    return Resposta.error(str(e))
            else:
                logger.debug(f"{json['email']} - ERRO DE ACESSO")
                return Resposta.nao_aceito('Usuário ou senha inválido!')
        else:
            return Resposta.error('JSON Inválido!')
Ejemplo n.º 6
0
    def post(self):
        json = request.json

        if json.get('token', False) and json.get('interesses', False):
            try:
                info_token = Token.validar_token(json['token'])

                Database().update_document('usuarios', {'_id': info_token['id_usuario']}, {'interesses': json['interesses']})

                return Resposta.sucesso('Interesses cadastrados!')
            except ExpiredSignatureError:
                return Resposta.nao_aceito('Token expirado')
            except Exception as e:
                return Resposta.error(str(e))
        else:
            return Resposta.error('JSON Inválido!')
Ejemplo n.º 7
0
    def post(self):
        json = request.json

        if json.get('token', False):
            try:
                info_token = Token.validar_token(json['token'])

                usr = Database().get_document('usuarios', {'_id': info_token['id_usuario']}, {'senha': 0})[0]
                usr['email'] = usr['_id']
                del usr['_id']

                return Resposta.retorno([usr])
            except ExpiredSignatureError:
                return Resposta.nao_aceito('Token expirado')
            except Exception as e:
                return Resposta.error(str(e))
        else:
            return Resposta.error('JSON Inválido!')
Ejemplo n.º 8
0
    def post(self):
        json = request.json

        if json.get('token', False) and json.get('interesses', False):

            try:
                info_token = Token.validar_token(json['token'])

                resultado = Database().get_document('postagens', {
                    'interesse': {'$in': json['interesses']},
                })

                return Resposta.retorno(converter_objectid(resultado))
            except ExpiredSignatureError:
                return Resposta.nao_aceito('Token expirado')
            except Exception as e:
                return Resposta.error(str(e))
        else:
            return Resposta.error('JSON Inválido!')
Ejemplo n.º 9
0
def get_bubble(bubble_id):
    __db = Database()
    return __db.get_document('bubbles', filter={'_id':bubble_id})
Ejemplo n.º 10
0
 def get(self):
     return Resposta.retorno(converter_objectid(Database().get_document('postagens')))
Ejemplo n.º 11
0
 def get(self):
     return Resposta.retorno(Database().get_document('interesses')[0]['interesses'])