def newRestaurant(): """ New restaurant page Output: Render new restaurant creation page or populate entered info into DB and redirect to all restaurants page """ if request.method == 'POST': imgfile = request.files['imgfile'] if imgfile and allowed_file(imgfile.filename): filename = secure_filename(imgfile.filename) imgfile.save(os.path.join(UPLOAD_FOLDER, filename)) else: filename = 'resdummy.gif' newRestaurant = Restaurant(name=request.form['name'], address=request.form['address'], phone=request.form['phone'], website=request.form['website'], cousine=request.form['cousine'], img=filename, user_id=login_session['user_id']) session.add(newRestaurant) session.commit() flash("new restaurant created!") return redirect(url_for('showRestaurants')) else: return render_template('newRestaurant.html')
def newMenuItem(restaurant_id): """ New menu item page Input: restaurant_id - restaurant id for which we want to create new menu item Output: Render new menu item creation page or populate entered info into DB and redirect to this restaurant's menu page """ if request.method == 'POST': imgfile = request.files['imgfile'] if imgfile and allowed_file(imgfile.filename): filename = secure_filename(imgfile.filename) imgfile.save(os.path.join(UPLOAD_FOLDER, filename)) else: filename = 'midummy.gif' newItem = MenuItem(name=request.form['name'], description=request.form['description'], price=request.form['price'], course=request.form['course'], img=filename, restaurant_id=restaurant_id, user_id=login_session['user_id']) session.add(newItem) session.commit() flash("new menu item created!") return redirect(url_for('showMenu', restaurant_id=restaurant_id)) else: return render_template('newMenuItem.html', restaurant_id=restaurant_id)
def editRestaurant(restaurant_id): """ Edit restaurant info page Input: restaurant_id - restaurant id to edit Output: Render edit restaurant page or update entered info into DB and redirect to all restaurants page """ editedRestaurant = session.query(Restaurant).filter_by( id=restaurant_id).one() # Alert if logged in user doesn't have permission to edit restaurant (restaurant was created by some other user) if editedRestaurant.user_id != login_session['user_id']: return "<script>function myFunction() {alert('You are not authorized to edit this restaurant. \ Please create your own restaurant in order to edit.');}</script><body onload='myFunction()''>" if request.method == 'POST': # Check if particular field was changed if 'name' in request.form: editedRestaurant.name = request.form['name'] if 'address' in request.form: editedRestaurant.address = request.form['address'] if 'phone' in request.form: editedRestaurant.phone = request.form['phone'] if 'website' in request.form: editedRestaurant.website = request.form['website'] if 'cousine' in request.form: editedRestaurant.cousine = request.form['cousine'] if 'imgfile' in request.files: imgfile = request.files['imgfile'] if imgfile and allowed_file(imgfile.filename): filename = secure_filename(imgfile.filename) imgfile.save(os.path.join(UPLOAD_FOLDER, filename)) else: filename = 'resdummy.gif' editedRestaurant.img = filename session.add(editedRestaurant) session.commit() flash("restaurant edited!") return redirect(url_for('showRestaurants')) else: return render_template('editRestaurant.html', restaurant_id=restaurant_id, item=editedRestaurant)
def editMenuItem(restaurant_id, menu_id): """ Edit menu item info page Input: restaurant_id - restaurant id which menu item we want to edit menu_id - menu item id to edit Output: Render edit menu item page or update entered info into DB and redirect to this restaurant's menu page """ editedItem = session.query(MenuItem).filter_by(id=menu_id).one() # Alert if logged in user doesn't have permission to edit menu item (menu item was created by some other user) if editedItem.user_id != login_session['user_id']: return "<script>function myFunction() {alert('You are not authorized to edit this menu item. \ Please create your own in order to edit.');}</script><body onload='myFunction()''>" # Check if particular field was changed if request.method == 'POST': if 'name' in request.form: editedItem.name = request.form['name'] if 'description' in request.form: editedItem.description = request.form['description'] if 'price' in request.form: editedItem.price = request.form['price'] if 'course' in request.form: editedItem.course = request.form['course'] if 'imgfile' in request.files: imgfile = request.files['imgfile'] if imgfile and allowed_file(imgfile.filename): filename = secure_filename(imgfile.filename) imgfile.save(os.path.join(UPLOAD_FOLDER, filename)) else: filename = 'midummy.gif' editedItem.img = filename session.add(editedItem) session.commit() flash("menu item edited!") return redirect(url_for('showMenu', restaurant_id=restaurant_id)) else: return render_template('editMenuItem.html', restaurant_id=restaurant_id, menu_id=menu_id, item=editedItem)
def editRestaurant(restaurant_id): """ Edit restaurant info page Input: restaurant_id - restaurant id to edit Output: Render edit restaurant page or update entered info into DB and redirect to all restaurants page """ editedRestaurant = session.query(Restaurant).filter_by(id=restaurant_id).one() # Alert if logged in user doesn't have permission to edit restaurant (restaurant was created by some other user) if editedRestaurant.user_id != login_session['user_id']: return "<script>function myFunction() {alert('You are not authorized to edit this restaurant. \ Please create your own restaurant in order to edit.');}</script><body onload='myFunction()''>" if request.method == 'POST': # Check if particular field was changed if 'name' in request.form: editedRestaurant.name = request.form['name'] if 'address' in request.form: editedRestaurant.address=request.form['address'] if 'phone' in request.form: editedRestaurant.phone=request.form['phone'] if 'website' in request.form: editedRestaurant.website=request.form['website'] if 'cousine' in request.form: editedRestaurant.cousine=request.form['cousine'] if 'imgfile' in request.files: imgfile = request.files['imgfile'] if imgfile and allowed_file(imgfile.filename): filename = secure_filename(imgfile.filename) imgfile.save(os.path.join(UPLOAD_FOLDER, filename)) else: filename = 'resdummy.gif' editedRestaurant.img = filename session.add(editedRestaurant) session.commit() flash("restaurant edited!") return redirect(url_for('showRestaurants')) else: return render_template('editRestaurant.html', restaurant_id=restaurant_id, item=editedRestaurant)
def editMenuItem(restaurant_id, menu_id): """ Edit menu item info page Input: restaurant_id - restaurant id which menu item we want to edit menu_id - menu item id to edit Output: Render edit menu item page or update entered info into DB and redirect to this restaurant's menu page """ editedItem = session.query(MenuItem).filter_by(id=menu_id).one() # Alert if logged in user doesn't have permission to edit menu item (menu item was created by some other user) if editedItem.user_id != login_session['user_id']: return "<script>function myFunction() {alert('You are not authorized to edit this menu item. \ Please create your own in order to edit.');}</script><body onload='myFunction()''>" # Check if particular field was changed if request.method == 'POST': if 'name' in request.form: editedItem.name = request.form['name'] if 'description' in request.form: editedItem.description=request.form['description'] if 'price' in request.form: editedItem.price=request.form['price'] if 'course' in request.form: editedItem.course=request.form['course'] if 'imgfile' in request.files: imgfile = request.files['imgfile'] if imgfile and allowed_file(imgfile.filename): filename = secure_filename(imgfile.filename) imgfile.save(os.path.join(UPLOAD_FOLDER, filename)) else: filename = 'midummy.gif' editedItem.img = filename session.add(editedItem) session.commit() flash("menu item edited!") return redirect(url_for('showMenu', restaurant_id=restaurant_id)) else: return render_template('editMenuItem.html', restaurant_id=restaurant_id, menu_id=menu_id, item=editedItem)