def editMenuItem(category, item): Item = q.get_menuitem(category, item) owner = (Item and Item.user_id == login_session.get('user_id', False)) if not owner: flash("You are not authorized to edit this Item.\ Please create your own Item in order to edit.") return redirect("/catalog") Categories = q.get_catalog() status = False if Item and owner: if request.method == 'POST': newtitle = str(request.form['title']).strip() newdescription = str(request.form['description']).strip() newcategory = str(request.form['category']).strip() user_id = login_session['user_id'] exists = q.get_menuitem(newcategory, newtitle) # delete item from old category and add to the new category if newcategory != category: # make sure item doe not exist on the new caegory if not exists: status = \ q.addMenuItem(newtitle,newdescription,newcategory,user_id) else: flash("Item already exists in %s " % newcategory) # delete item from old existing category if Successfully already # added to the new existing category if status: q.deleteMenuItem(Item) flash("Item successfully edited onto %s " % newcategory) return redirect(url_for('catalogMenu')) elif Item.title == newtitle and Item.description == newdescription: flash("Item could not be edited. No changes detected!") return render_template('edititem.html', categories=Categories, target=category, title=newtitle, description=newdescription) else: status = q.editMenuItem(Item, newtitle, newdescription) if status: flash("Item Successfully Edited.") return redirect(url_for('catalogMenu')) return render_template('edititem.html', categories=Categories, target=category, title=Item.title, description=Item.description) else: return render_template('opps.html')
def addMenuItem(): Categories = q.get_catalog() if request.method == 'POST': newtitle = str(request.form['title']).strip() newdescription = str(request.form['description']).strip() category = str(request.form['category']).strip() user_id = login_session['user_id'] # check if item exists exists = q.get_menuitem(category, newtitle) if not exists: status = q.addMenuItem(newtitle, newdescription, category, user_id) if status: flash("Item Successfully Added.") return redirect(url_for('catalogMenu')) flash("Item could not be added. Item already exists!") # Returns users last input return render_template('additem.html', categories=Categories, target=category, title=newtitle, description=newdescription, navadd="active") return render_template('additem.html', categories=Categories, navadd="active")
def categoryItemDetail(category, item): Item = q.get_menuitem(category, item) if Item: owner = (Item.user_id == login_session.get('user_id', False)) return render_template('item.html', menuitem=Item, creator=owner, category=category) else: return render_template('opps.html')
def deleteMenuItem(restaurant_id, menu_id): if request.method == 'POST': # delete menu item r.set_deletemenuitem(menu_id) flash("Menu item delete!") return redirect(url_for('restaurantMenu', restaurant_id=restaurant_id)) else: menu = r.get_menuitem(menu_id) # return dict return render_template('deletemenuitem.html', restaurant_id=restaurant_id, menu_name=menu.name, menu_id=menu_id)
def editMenuItem(restaurant_id, menu_id): if request.method == 'POST': # edit menu item name = request.form['name'] if name != "": r.set_editmenuitem(name, menu_id) flash("Menu item edit edited!") return redirect(url_for('restaurantMenu', restaurant_id=restaurant_id)) else: menu = r.get_menuitem(menu_id) # return dict return render_template('editmenuitem.html', restaurant_id=restaurant_id, menu_name=menu.name, menu_id=menu_id)
def deleteMenuItem(category, item): Item = q.get_menuitem(category, item) owner = (Item and Item.user_id == login_session.get('user_id', False)) if not owner: flash("You are not authorized to delete this Item.\ Please create your own Item in order to delete.") return redirect("/catalog") status = False if Item and owner: if request.method == 'POST': q.deleteMenuItem(Item) flash("Menu Item Successfully Delete") return redirect(url_for('catalogMenu')) else: return render_template('deleteitem.html', category=category, item=item) else: return render_template('opps.html', category=category, item=item)
def menuItemJSON(restaurant_id, menu_id): item = r.get_menuitem(menu_id) return jsonify(MenuItem=item.serialize)