示例#1
0
def item_details_add():
    """
    item_details_add: add item to selected category
    :return: html create item or redirect in case of POST (item creation)
    """
    if request.method == 'POST':
        item = CatalogItem()
        item.name = request.form['name']
        item.description = request.form['description']
        item.category = session.query(Category).filter(
            func.lower(Category.name) == func.lower(
                request.form['category_name'])).first()

        item.user = session.query(CatalogUser).filter_by(
            id=login_session['user_id']).one()

        session.add(item)

        session.commit()

        return redirect(url_for('home'), code=301)

    else:
        categories = session.query(Category).all()
        item = CatalogItem()

        item.name = ''
        item.description = ''

        return render_template(
            'item_details_add.html',
            item=item,
            categories=categories,
            username=login_session.get("username", None),
        )
示例#2
0
def newItem(catalog_id):
    if 'username' not in login_session:
        return redirect('/login')
    catalog = session.query(Catalog).filter_by(id=catalog_id).one()
 
    if login_session['user_id'] != catalog.user_id:
                                               
        return '''<script>function myFunction() {alert('You are not authorized to add items to this catalog.');}
                  </script><body onload='myFunction()''>
               '''
    if request.method == 'POST':
        if request.form['name'] == []:
            flash("Name needed!")
            return render_template('newitem.html', catalog_id = catalog_id)  
        newItem = CatalogItem(name = request.form['name'])
        newItem.description = request.form['description']
        newItem.price = request.form['price']
        newItem.catalog_id = catalog_id
        newItem.user_id = catalog.user_id

        session.add(newItem)
        session.commit()
  
        flash("New item created!")
        items = session.query(CatalogItem).filter_by(catalog_id=catalog_id).all()
        return  render_template('Items.html', catalog = catalog, items = items)
       
    else:
        return render_template('newitem.html', catalog_id = catalog_id)  
示例#3
0
def newMenuItem(categories_id):
    categories = session.query(Categories).filter_by(id=categories_id).one()
    if login_session['user_id'] != categories.user_id:
        return """
        <script>
        function myFunction() {alert(
            'You are not authorized to add menu items to this restaurant.
            Please create your own restaurant in order to add items.')}
            </script> < body onload = 'myFunction()''>"""
    if request.method == 'POST':
        newItem = CatalogItem(categories_id=categories_id,
                              user_id=categories.user_id)
        if request.form['name'] == "" or request.form[
                'description'] == "" or request.form['price'] == "":
            flash('All input fields required')
        else:
            newItem.name = request.form['name']
            newItem.description = request.form['description']
            newItem.price = request.form['price']
            session.add(newItem)
            session.commit()
            flash('New Catalog %s Item Successfully Created' % (newItem.name))
        return redirect(url_for('showMenu', categories_id=categories_id))
    else:
        return render_template('newmenuitem.html', categories_id=categories_id)
示例#4
0
def newItem():
    if 'username' not in login_session:
        flash('You are not logged in!')
        return redirect('/catalog')

    categories = session.query(Category).order_by(asc(Category.name))

    if request.method == 'GET':
        return render_template('newItem.html', categories=categories)
    else:
        newItem = CatalogItem()
        if request.form['title']:
            newItem.title = request.form['title']
            # FriendlyTitle is used for an items route URL.
            # Removes spaces and transforms to lowercase
            friendlyTitle = request.form['title'].lower()
            friendlyTitle = friendlyTitle.replace(' ', '')
            newItem.friendlyTitle = friendlyTitle
        if request.form['description']:
            newItem.description = request.form['description']
        if request.form['category']:
            category = session.query(Category).filter_by(
                name=request.form['category']).one()
            newItem.category_id = category.id
        newItem.user_id = login_session['user_id']
        session.add(newItem)
        session.commit()
        flash('Item successfully added!')
        return redirect(url_for('catalog'))
示例#5
0
def addItem(item_name, item_desc, cat_id):
    catitem = CatalogItem()
    catitem.item_name = item_name
    catitem.description = item_desc
    catitem.cat_id = cat_id
    catitem.user_id = login_session['userid']
    db_session.add(catitem)
    db_session.commit()