示例#1
0
def bookmark():
    data = get_json_or_400()
    assert data.get('items')
    update_action_list(data.get('items'), 'bookmarks', item_type='agenda')
    push_user_notification(
        'saved_items',
        count=get_resource_service('agenda').get_saved_items_count())
    return flask.jsonify(), 200
示例#2
0
def bookmark():
    """Bookmark an item.

    Stores user id into item.bookmarks array.
    Uses mongodb to update the array and then pushes updated array to elastic.
    """
    data = get_json_or_400()
    assert data.get('items')
    update_action_list(data.get('items'), 'bookmarks', item_type='items')
    user_id = get_user_id()
    push_user_notification('saved_items', count=get_bookmarks_count(user_id, 'media_releases'))
    return flask.jsonify(), 200
示例#3
0
def item(_id):
    item = get_entity_or_404(_id, 'agenda')
    if is_json_request(flask.request):
        return flask.jsonify(item)

    if 'print' in flask.request.args:
        template = 'agenda_item_print.html'
        update_action_list([_id], 'prints', force_insert=True)
        return flask.render_template(template, item=item)

    data = get_view_data()
    data['item'] = item
    return flask.render_template('agenda_index.html',
                                 data=data,
                                 title=item.get('name', item.get('headline')))
示例#4
0
def item(_id):
    item = get_entity_or_404(_id, 'items')
    set_permissions(item)
    if is_json_request(flask.request):
        return flask.jsonify(item)
    if not item.get('_access'):
        return flask.render_template('wire_item_access_restricted.html',
                                     item=item)
    previous_versions = get_previous_versions(item)
    if 'print' in flask.request.args:
        template = 'wire_item_print.html'
        update_action_list([_id], 'prints', force_insert=True)
    else:
        template = 'wire_item.html'
    return flask.render_template(template,
                                 item=item,
                                 previous_versions=previous_versions)
示例#5
0
def item(_id):
    item = get_entity_or_404(_id, 'items')
    set_permissions(item, 'media_releases')
    display_char_count = get_resource_service('ui_config').getSectionConfig('media_releases').get('char_count', False)
    if is_json_request(flask.request):
        return flask.jsonify(item)
    if not item.get('_access'):
        return flask.render_template('wire_item_access_restricted.html', item=item)
    previous_versions = get_previous_versions(item)
    if 'print' in flask.request.args:
        template = 'wire_item_print.html'
        update_action_list([_id], 'prints', force_insert=True)
    else:
        template = 'wire_item.html'
    return flask.render_template(
        template,
        item=item,
        previous_versions=previous_versions,
        display_char_count=display_char_count)
示例#6
0
def copy(_id):
    item_type = get_type()
    get_entity_or_404(_id, item_type)
    update_action_list([_id], 'copies', item_type=item_type)
    return flask.jsonify(), 200