Beispiel #1
0
def editItem(category_name, item_name):
    db = DBConnect()
    item = db.getItemByName(item_name)
    if request.method == 'POST':
        name = request.form['name']
        description = request.form['description']
        categoryName = request.form['category']
        if name and description and categoryName:
            category = db.getCategoryByName(categoryName)
            db.editItem(item, name, description, category.id)
            return redirect(
                url_for('showItem',
                        category_name=category.name,
                        item_name=name))

    if request.method == 'GET':
        # Authorization check before serving the edit page
        userEmail = session.get('email')
        userID = db.getUserIDByEmail(userEmail)
        if userID != item.user.id:
            return redirect(
                url_for('error',
                        error='You are not\
            authorized to edit this item'))
        categories = db.getAllCategories()
        return render_template('editItem.html',
                               selectedItem=item,
                               categories=categories)
Beispiel #2
0
def catalog():
    db = DBConnect()
    categories = db.getAllCategories()
    recentItems = db.getAllRecentItems()
    return render_template('categories.\
html',
                           categories=categories,
                           recentItems=recentItems)
Beispiel #3
0
def showCategory(category_name):
    db = DBConnect()
    categories = db.getAllCategories()
    items = db.getItemsByCategory(category_name)
    count = db.getItemCountByCategory(category_name)
    return render_template('showCategory.html',
                           categories=categories,
                           items=items,
                           categoryName=category_name,
                           numberOfItems=count)
Beispiel #4
0
def catalogJSON():
    user = session.get('username')
    if user is None:
        return redirect(url_for('showLogin'))
    db = DBConnect()
    categories = db.getAllCategories()
    # Building the json object to be returned
    total = {'Category': []}
    for c in categories:
        items = db.getItemsByCategory(c.name)
        total['Category'].append({
            'id': c.id,
            'name': c.name,
            'items': [i.serialize for i in items]
        })
    return jsonify(total)