Пример #1
0
def get_follower_list(data, username, db_session):
    logger.info(LogMsg.START, username)

    result = []

    user = check_user(username, db_session)
    if user is None:
        raise Http_error(400, Message.INVALID_USER)

    if user.person_id is None:
        logger.error(LogMsg.USER_HAS_NO_PERSON, username)
        raise Http_error(400, Message.Invalid_persons)

    validate_person(user.person_id, db_session)
    logger.debug(LogMsg.PERSON_EXISTS)

    if data.get('sort') is None:
        data['sort'] = ['creation_date-']

    if data.get('filter') is None:
        data.update({'filter': {'following_id': user.person_id}})
    else:
        data['filter'].update({'following_id': user.person_id})

    res = Follow.mongoquery(db_session.query(Follow)).query(**data).end().all()
    for item in res:
        result.append(follow_to_dict(item))
    logger.debug(LogMsg.FOLLOWER_LIST, result)
    logger.info(LogMsg.END)

    return result