def addItem(): """Create a new Item.""" if 'email' not in login_session: flash("You need to login to add items!") return redirect(url_for('getCatalog')) if request.method == 'POST': # set created user to current user user = session.query(User).filter_by( email=login_session['email']).one() name = request.form['name'] if name is not None and len(name) != 0: new_item = Item(name=request.form['name']) new_item.created_user = user category = request.form['category'] if category is not None and len(category) != 0: new_item.category_name = category description = request.form['description'] if description is not None and len(description) != 0: new_item.description = description session.add(new_item) session.commit() flash("New Book Added!") return redirect( url_for('getItem', category_name=new_item.category_name, item_name=new_item.name)) else: flash("Book name cannot be empty!") # if name is empty, load the page again categories = session.query(Category).order_by("name") user_loggedin = 'email' in login_session if user_loggedin: user_name = login_session['username'] picture = login_session['picture'] return render_template('additem.html', categories=categories, user_loggedin=user_loggedin, user_name=user_name, picture=picture) return render_template('additem.html', categories=categories)