Example #1
0
def get_album(user_name, album_title):
    log_request(request, current_user)
    logger.debug('{View|Edit} get_album(%s, %s)', user_name, album_title)

    if not is_allowed(current_user, user_name):
        return jsonify({})

    return load_album(current_user, user_name, album_title)
Example #2
0
def upload_image(user_name, album_title):
    log_request(request, current_user)
    logger.debug('{View|Edit} upload_image(%s, %s)', user_name, album_title)

    if not is_allowed(current_user, user_name):
        return abort(404)

    if request.method == 'POST':
        f = request.files['file']
        result = store_image(f, user_name, album_title)
        return jsonify({'success': result})
Example #3
0
def set_item_visibility(user_name, album_title):
    log_request(request, current_user)
    logger.debug('{View|Edit} set_item_visibility(%s, %s)', user_name, album_title)

    if not is_allowed(current_user, user_name):
        return abort(404)

    if request.method == 'POST':
        data = json.loads(request.data)
        id_item = data['item-id'] if 'item-id' in data else None
        item_visibility = data['item-visibility'] if 'item-visibility' in data else None
        result = change_item_visibility(user_name, album_title, id_item, item_visibility)
        return jsonify({'success': result})
Example #4
0
def index(user_name, album_title):
    log_request(request, current_user)
    logger.debug('{View|Edit} index(%s, %s)', user_name, album_title)

    if not is_allowed(current_user, user_name):
        return abort(404)

    env = {
        'module': 'Edit %s/%s' % (user_name, album_title),
        'user_name': user_name,
        'album_title': album_title,
    }
    return render_template('edit.html', **env)
Example #5
0
def save_items(user_name, album_title):
    log_request(request, current_user)
    logger.debug('{View|Edit} save_items(%s, %s)', user_name, album_title)

    if not is_allowed(current_user, user_name):
        return jsonify({'success': False})

    result = False
    if request.method == 'POST':
        data = request.get_json()
        del data['_csrf_token']
        result = store_items(user_name, album_title, data)

    return jsonify({'success': result})
Example #6
0
def index(user_name):
    log_request(request, current_user)
    logger.debug('{View|User} index(%s)', user_name)

    albums = get_albums(user_name, current_user)

    env = {
        'module': 'User | %s' % escape(user_name),
        'is_current_user': is_current_user(user_name, current_user),
        'header': True,
        'user': user_name,
        'albums': albums,
    }
    return render_template('user.html', **env)
Example #7
0
def index(user_name, album_title):
    log_request(request, current_user)
    logger.debug('{View|Share} index(%s, %s)', user_name, album_title)

    if not is_allowed(current_user, user_name):
        return abort(404)

    if request.method == 'POST':
        share_type = escape(request.form['share_type']) if 'share_type' in request.form else 'Private'
        result = share_album(user_name, album_title, share_type)
        flash(result['msg'], 'info')
        return redirect(url_for('user.index', user_name=user_name))

    env = {
        'module': 'Share album',
        'title': album_title,
        'share_type': get_share_type(escape(user_name), escape(album_title)),
        'share_types': get_share_types()
    }
    return render_template('share.html', **env)
Example #8
0
def login():
    log_request(request, current_user)
    logger.debug('{View|Login}')

    if current_user.is_authenticated:
        return redirect(url_for('user.index', user_name=current_user.name))

    if request.method == 'POST':
        user_name = escape(
            request.form['user_name']) if 'user_name' in request.form else ''
        pw = escape(
            request.form['password']) if 'password' in request.form else ''
        u = db.User(user_name)
        u.set_authenticated(pw)
        if u.is_authenticated():
            login_user(u)
            return redirect(url_for('user.index', user_name=user_name))
        else:
            flash('Login failed!', 'danger')

    env = {'module': 'Login'}
    return render_template('login.html', **env)
Example #9
0
def delete_item(user_name, album_title, id_item):
    log_request(request, current_user)
    logger.debug('{View|Edit} delete_item(%s, %s, %s)', user_name, album_title, id_item)

    if not is_allowed(current_user, user_name):
        return abort(404)

    if request.method == 'POST':
        result = delete_one_item(get_user_id(user_name), album_title, id_item)
        if result['success']:
            if result['success']:
                flash('Successfully deleted item', 'success')
                return redirect(url_for('edit.index', user_name=user_name, album_title=album_title))
            else:
                flash('Can\'t delete item!', 'danger')

    env = {
        'user_name': user_name,
        'album_title': album_title,
        'id_item': id_item
    }
    return render_template('item_delete.html', **env)
Example #10
0
def images(filename):
    log_request(request, current_user)
    logger.debug('{View|Image} images(%s)', filename)

    return send_from_directory(config['storage-engine']['path'], filename)
Example #11
0
def page_not_found(e):
    log_request(request, current_user)
    logger.debug('{Not found}')
    env = {'header': True}
    return render_template('404.html', **env), 404
Example #12
0
def logout():
    log_request(request, current_user)
    logger.debug('{View|Logout}')

    logout_user()
    return redirect(url_for('index.index'))
Example #13
0
def index():
    log_request(request, current_user)
    logger.debug('{View|Index}')

    env = {'module': 'Home'}
    return render_template('index.html', **env)
Example #14
0
 def route():
     log_request(request, current_user)
     logger.debug('{View|%s}' % page)
     env = {'module': page.capitalize(), 'header': True}
     return render_template('footer/%s.html' % page, **env)