Ejemplo n.º 1
0
def list_issues():
    cur = issues.find()
    data = paginate_cursor(cur)

    add_motions(data['results'])

    return jsonify(data)
Ejemplo n.º 2
0
def list_issues():
    cur = issues.find()
    data = paginate_cursor(cur)

    add_motions(data['results'])

    return jsonify(data)
Ejemplo n.º 3
0
def update_issue(id):
    issue = request.json
    issue['_id'] = ObjectId(id)

    validate_issue(issue)

    issues.save(issue)
    return jsonify(issue)
Ejemplo n.º 4
0
def update_issue(id):
    issue = request.json
    issue['_id'] = ObjectId(id)

    validate_issue(issue)

    issues.save(issue)
    return jsonify(issue)
Ejemplo n.º 5
0
def motions_index():
    q = request.args.get("q", "").strip()
    query = {}
    if len(q):
        regex = ".*%s.*" % q
        query = {"$or": [{"text": {"$regex": regex}}, {"title": {"$regex": regex}}]}
    cur = motions.find(query, {"vote_events.votes": False})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 6
0
def motions_index():
    q = request.args.get('q', '').strip()
    query = {}
    if len(q):
        regex = '.*%s.*' % q
        query = {'$or': [{'text': {'$regex': regex}},
                         {'title': {'$regex': regex}}]}
    cur = motions.find(query, {'vote_events.votes': False})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 7
0
def create_issue():
    issue = request.json
    if '_id' in issue:
        del issue['_id']

    validate_issue(issue)

    issue_id = issues.insert(issue)
    issue['_id'] = issue_id
    return jsonify(issue, status=201)
Ejemplo n.º 8
0
def create_issue():
    issue = request.json
    if '_id' in issue:
        del issue['_id']

    validate_issue(issue)

    issue_id = issues.insert(issue)
    issue['_id'] = issue_id
    return jsonify(issue, status=201)
Ejemplo n.º 9
0
def aggregate_get():
    blocs = request.args.getlist("bloc")
    motion_args = request.args.getlist("motion")
    filters = {}
    for criterion in request.args.getlist("filter"):
        if not ":" in criterion:
            continue
        field, value = criterion.split(":", 1)
        filters[field] = value
    aggregates = generate_aggregate(blocs, motion_args, filters)
    data = {"request": {"blocs": blocs, "filters": filters, "motions": motion_args}, "aggregate": aggregates}
    return jsonify(data)
Ejemplo n.º 10
0
def stances_get():
    blocs = request.args.getlist("bloc")
    issue_args = request.args.getlist("issue")
    filters = {}
    for criterion in request.args.getlist("filter"):
        if not ":" in criterion:
            continue
        field, value = criterion.split(":", 1)
        filters[field] = value
    stances = generate_stances(blocs, issue_args, filters)
    data = {
        "request": {"blocs": blocs, "filters": filters, "issues": issue_args},
        "stances": stances,
        "num_stances": len(stances),
    }
    return jsonify(data)
Ejemplo n.º 11
0
def aggregate_get():
    blocs = request.args.getlist('bloc')
    motion_args = request.args.getlist('motion')
    filters = {}
    for criterion in request.args.getlist('filter'):
        if not ':' in criterion:
            continue
        field, value = criterion.split(':', 1)
        filters[field] = value
    aggregates = generate_aggregate(blocs, motion_args, filters)
    data = {
        'request': {
            'blocs': blocs,
            'filters': filters,
            'motions': motion_args
        },
        'aggregate': aggregates
    }
    return jsonify(data)
Ejemplo n.º 12
0
def stances_get():
    blocs = request.args.getlist('bloc')
    issue_args = request.args.getlist('issue')
    filters = {}
    for criterion in request.args.getlist('filter'):
        if not ':' in criterion:
            continue
        field, value = criterion.split(':', 1)
        filters[field] = value
    stances = generate_stances(blocs, issue_args, filters)
    data = {
        'request': {
            'blocs': blocs,
            'filters': filters,
            'issues': issue_args
        },
        'stances': stances,
        'num_stances': len(stances)
    }
    return jsonify(data)
Ejemplo n.º 13
0
def persons_get(id):
    obj = persons.find_one({'id': id})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 14
0
def persons_index():
    cur = persons.find({})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 15
0
def parties_get(id):
    obj = parties.find_one({'id': id})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 16
0
def vote_events_get(identifier):
    obj = vote_events.find_one({'identifier': identifier})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 17
0
def vote_events_index():
    cur = vote_events.find({}, {'votes': False})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 18
0
def votes_index():
    cur = votes.find({})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 19
0
def vote_events_get(identifier):
    obj = vote_events.find_one({"identifier": identifier})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 20
0
def motions_get(motion_id):
    obj = motions.find_one({"motion_id": motion_id})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 21
0
def api_index():
    return jsonify({"status": "ok"})
Ejemplo n.º 22
0
def parties_get(id):
    obj = parties.find_one({"id": id})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 23
0
def get_issue(id):
    issue = issues.find_one({'_id': ObjectId(id)})
    add_motions([issue])
    return jsonify(issue)
Ejemplo n.º 24
0
def vote_events_index():
    cur = vote_events.find({}, {"votes": False})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 25
0
def api_index():
    return jsonify({'status': 'ok'})
Ejemplo n.º 26
0
def persons_get(id):
    obj = persons.find_one({"id": id})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 27
0
def parties_index():
    cur = parties.find({})
    data = paginate_cursor(cur)
    return jsonify(data)
Ejemplo n.º 28
0
def motions_get(motion_id):
    obj = motions.find_one({'motion_id': motion_id})
    obj = obj_or_404(obj)
    return jsonify(obj)
Ejemplo n.º 29
0
def get_issue(id):
    issue = issues.find_one({'_id': ObjectId(id)})
    add_motions([issue])
    return jsonify(issue)