Ejemplo n.º 1
0
async def session(request):
    token = request.headers.get('token', None)
    if token is not None:
        user = find_session(token)
        if user is not None:
            return json(encode_user(user))
        else:
            return response.json({'message': 'no such session'}, status=404)
    else:
        return response.json({'message': 'no session token'}, status=404)
Ejemplo n.º 2
0
async def contacts(request):
    token = request.headers.get('token', None)
    if token is not None:
        user = find_session(token)
        if user is not None:
            contacts = find_contacts(user)
            return json(encode_contacts(contacts))
        else:
            return response.json({'message': 'no such session'}, status=401)
    else:
        return response.json({'message': 'requires a session'}, status=401)
Ejemplo n.º 3
0
async def search(request):
    token = request.headers.get('token', None)
    if token is not None:
        user = find_session(token)
        if user is not None:
            params = ['keywords']
            data = with_body(request, params)
            if len(data) == len(params):
                contacts = search_contacts(user, data[0])
                return json(encode_contacts(contacts))
            else:
                return response.json({'message': 'missing keywords'},
                                     status=400)
        else:
            return response.json({'message': 'no such session'}, status=401)
    else:
        return response.json({'message': 'requires a session'}, status=401)
Ejemplo n.º 4
0
async def accept(request):
    token = request.headers.get('token', None)
    if token is not None:
        user = find_session(token)
        if user is not None:
            params = ['email']
            data = with_body(request, params)
            if len(data) == len(params):
                contact = user_by_email(data[0])
                if contact is not None:
                    if decline_follow(user, contact):
                        if decline_follow_request(user, contact):
                            contacts = find_contacts(user)
                            return json(encode_contacts(contacts))
                        else:
                            return response.json(
                                {
                                    'message':
                                    'cannot decline follow request in db'
                                },
                                status=500)
                    else:
                        return response.json(
                            {
                                'message':
                                'cannot decline follow request in opentact'
                            },
                            status=500)
                else:
                    return response.json({'message': 'no such contact'},
                                         status=404)
            else:
                return response.json({'message': 'missing email'}, status=400)
        else:
            return response.json({'message': 'no such session'}, status=401)
    else:
        return response.json({'message': 'requires a session'}, status=401)