def delete_place(category_id, place_id): """Delete place page. User must have created place to delete.""" cat = db.get_cat(category_id) place = db.get_place(place_id) user_id = login_session['user_id'] if place.user_id != user_id: return redirect(url_for('main_page')) if creator.id != login_session['user_id']: flash("You cannot delete this Type.\ This Type belongs to % s" % creator.name) return redirect(url_for('show_place')) if request.method == 'POST': delete_confirmation = request.form['delete'] if delete_confirmation == 'yes': db.delete_place(place) flash('place entry deleted.') return redirect(url_for('show_category', category_id=cat.id)) else: return render_template( 'delete_place.html', category=cat, place=place )
def show_item(category_id, item_id): """Specific item page. Shows desc.""" categories = db.get_all_categories() cat = db.get_cat(category_id) item = db.get_item(item_id) return render_template('item.html', categories=categories, category=cat, item=item)
def show_place(category_id, place_id): """Specific place page. Shows desc.""" categories = db.get_all_categories() cat = db.get_cat(category_id) place = db.get_place(place_id) return render_template('place.html', categories=categories, category=cat, place=place)
def show_category(category_id): """Specific category page. Shows all titles.""" categories = db.get_all_categories() cat = db.get_cat(category_id) items = session.query(ItemTitle).filter_by(category_id=cat.id).order_by( asc(ItemTitle.name)) return render_template('category.html', categories=categories, category=cat, items=items)
def show_item(category_id, item_id): """Specific item page. Shows desc.""" categories = db.get_all_categories() cat = db.get_cat(category_id) item = db.get_item(item_id) return render_template( 'item.html', categories=categories, category=cat, item=item )
def show_category(category_id): """Specific category page. Shows all titles.""" categories = db.get_all_categories() cat = db.get_cat(category_id) items = session.query(ItemTitle).filter_by(category_id=cat.id).order_by(asc(ItemTitle.name)) return render_template( 'category.html', categories=categories, category=cat, items=items )
def edit_place(category_id, place_id): """Edit place page. User must have created the place to edit.""" categories = db.get_all_categories() cat = db.get_cat(category_id) place = db.get_place(place_id) user_id = login_session['user_id'] if place.user_id != user_id: return redirect(url_for('main_page')) if creator.id != login_session['user_id']: flash("You cannot edit this Type.\ This Type belongs to % s" % creator.name) return redirect(url_for('show_place')) if request.method == 'POST': name = request.form['name'] description = request.form['description'] category = request.form['category'] field_vals = {} if name and description: flash('place edited!') db.edit_place(place, name, description, db.get_cat_id(category)) time.sleep(1) return redirect(url_for( 'show_place', category_id=category_id, place_id=place_id ) ) else: field_vals['default_cat'] = category flash('Invalid input! Must enter values.') field_vals['input_name'] = name field_vals['input_description'] = description return render_template('new_place.html', categories=categories, **field_vals) else: return render_template( 'edit_place.html', category_id=category_id, place_id=place_id, categories=categories, input_name=place.name, input_description=place.description, default_cat=cat.name )
def new_place(category_id): """Add new place page. Requires logged in status.""" categories = db.get_all_categories() if request.method == 'POST': name = request.form['name'] description = request.form['description'] category = request.form['category'] field_vals = {} user_id = login_session['user_id'] if name and description and category != "None": print 'received inputs' flash('New place added!') cat_id = db.get_cat_id(category) new_place = db.create_place( name, description, cat_id, user_id ) return redirect(url_for( 'show_place', category_id=cat_id, place_id=new_place.id ) ) elif category == "None": flash('Must enter a category.') else: field_vals['default_cat'] = category flash('Invalid input! Must enter values.') field_vals['input_name'] = name field_vals['input_description'] = description return render_template('new_place.html', categories=categories, **field_vals) else: if category_id: cat_name = db.get_cat(category_id).name return render_template('new_place.html', categories=categories, default_cat=cat_name) else: return render_template('new_place.html', categories=categories)
def edit_item(category_id, item_id): """Edit item page. User must have created the item to edit.""" categories = db.get_all_categories() cat = db.get_cat(category_id) item = db.get_item(item_id) user_id = login_session['user_id'] if item.user_id != user_id: return redirect(url_for('main_page')) if request.method == 'POST': name = request.form['name'] description = request.form['description'] category = request.form['category'] field_vals = {} if name and description: flash('Item edited!') db.edit_item(item, name, description, db.get_cat_id(category)) time.sleep(1) return redirect(url_for( 'show_item', category_id=category_id, item_id=item_id ) ) else: field_vals['default_cat'] = category flash('Invalid input! Must enter values.') field_vals['input_name'] = name field_vals['input_description'] = description return render_template('new_item.html', categories=categories, **field_vals) else: return render_template( 'edit_item.html', category_id=category_id, item_id=item_id, categories=categories, input_name=item.name, input_description=item.description, default_cat=cat.name )
def new_item(category_id): """Add new item page. Requires logged in status.""" categories = db.get_all_categories() if request.method == 'POST': name = request.form['name'] description = request.form['description'] category = request.form['category'] field_vals = {} user_id = login_session['user_id'] if name and description and category != "None": print 'received inputs' flash('New item added!') cat_id = db.get_cat_id(category) new_item = db.create_item( name, description, cat_id, user_id ) return redirect(url_for( 'show_item', category_id=cat_id, item_id=new_item.id ) ) elif category == "None": flash('Must enter a category.') else: field_vals['default_cat'] = category flash('Invalid input! Must enter values.') field_vals['input_name'] = name field_vals['input_description'] = description return render_template('new_item.html', categories=categories, **field_vals) else: if category_id: cat_name = db.get_cat(category_id).name return render_template('new_item.html', categories=categories, default_cat=cat_name) else: return render_template('new_item.html', categories=categories)
def edit_item(category_id, item_id): """Edit item page. User must have created the item to edit.""" categories = db.get_all_categories() cat = db.get_cat(category_id) item = db.get_item(item_id) user_id = login_session['user_id'] if item.user_id != user_id: return redirect(url_for('main_page')) if request.method == 'POST': name = request.form['name'] description = request.form['description'] category = request.form['category'] field_vals = {} if name and description: flash('Item edited!') db.edit_item(item, name, description, db.get_cat_id(category)) time.sleep(1) return redirect( url_for('show_item', category_id=category_id, item_id=item_id)) else: field_vals['default_cat'] = category flash('Invalid input! Must enter values.') field_vals['input_name'] = name field_vals['input_description'] = description return render_template('new_item.html', categories=categories, **field_vals) else: return render_template('edit_item.html', category_id=category_id, item_id=item_id, categories=categories, input_name=item.name, input_description=item.description, default_cat=cat.name)
def delete_item(category_id, item_id): """Delete item page. User must have created item to delete.""" cat = db.get_cat(category_id) item = db.get_item(item_id) user_id = login_session['user_id'] if item.user_id != user_id: return redirect(url_for('main_page')) if request.method == 'POST': delete_confirmation = request.form['delete'] if delete_confirmation == 'yes': db.delete_item(item) flash('Item entry deleted.') return redirect(url_for('show_category', category_id=cat.id)) else: return render_template('delete_item.html', category=cat, item=item)
def delete_item(category_id, item_id): """Delete item page. User must have created item to delete.""" cat = db.get_cat(category_id) item = db.get_item(item_id) user_id = login_session['user_id'] if item.user_id != user_id: return redirect(url_for('main_page')) if request.method == 'POST': delete_confirmation = request.form['delete'] if delete_confirmation == 'yes': db.delete_item(item) flash('Item entry deleted.') return redirect(url_for('show_category', category_id=cat.id)) else: return render_template( 'delete_item.html', category=cat, item=item )
def category_items_json(category_id): item_list = db.get_items_in_category(category_id) category = db.get_cat(category_id) return jsonify(Category=category.name, Items=[item.serialize for item in item_list])
def category_places_json(category_id): place_list = db.get_places_in_category(category_id) category = db.get_cat(category_id) return jsonify(Category=category.name, Places=[place.serialize for place in place_list])