Esempio n. 1
0
def newItem():
    categories = session.query(Category).order_by(asc(Category.name))
    if request.method == 'POST':
        tmp_category = request.form['category']
        new_c = session.query(Category).filter_by(name=tmp_category).one()
        newItem = Item(name=request.form['title'],
                       category_id=new_c.id,
                       user_id=login_session['user_id'],
                       description=request.form['description'])
        session.add(newItem)
        session.commit()
        flash(
            str(newItem.name) + "(" + str(newItem.category.name) + ")" +
            " has been created!")
        return redirect(
            url_for('showItem',
                    category_name=newItem.category.name,
                    item_name=newItem.name))
    else:
        return render_template('newItem.html', categories=categories)
Esempio n. 2
0
def newCategoryItem(category_id):
    if 'username' not in login_session:
        return redirect('/login')
    category = session.query(Category).filter_by(id=category_id).one()
    if login_session['user_id'] != category.user_id:
        return """<script>function myFunction() {alert('You
        are not authorized to add items to this category.
        Please create your own category in order to add items.');}
        </script><body onload='myFunction()'>"""
    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       category_id=category_id,
                       user_id=category.user_id)
        session.add(newItem)
        session.commit()
        flash('New Item,  %s, Successfully Created' % (newItem.name))
        return redirect(url_for('showCategory', category_id=category_id))
    else:
        return render_template('newitem.html', category_id=category_id)
Esempio n. 3
0
def itemsJSON():
    if request.method == 'GET':
        items = session.query(Item).all()
        return jsonify(Items=[i.serialize for i in items])
    elif request.method == 'POST':
        category_id = request.args.get('category_id')
        name = request.args.get('item_name')
        email = request.args.get('email')
        description = request.args.get('item_description')
        category_info = session.query(Category).filter_by(id=category_id).first()
        if(category_info is not None and getUserEmail(email) and name is not None):
            if(name ==""):
                jsonify({"error":"Invalid name"})
            else:
                item = Item(name = name, description = description,category_id = category_id, user_email = email)
                session.add(item)
                session.commit()
                return jsonify(item = item.serialize)
        else:
            jsonify({"error":"Invalid category_id or email"})
Esempio n. 4
0
def addItem():
    """For GET request, return 'Add Item' page. For POST request, add new item to database."""
    if request.method == 'POST':
        category = request.form['category']
        category_result = session.query(Category).filter_by(
            name=category).one()
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       category_id=category_result.id)
        # need to protect against manually entered bad data

        session.add(newItem)
        session.commit()

        flash("Item added: {} / {}".format(category, newItem.name))

        return redirect(url_for('showCatalog'))
    else:
        categories = session.query(Category).all()
        return render_template('addItem.html', categories=categories)
Esempio n. 5
0
def newfromscratch():
    if 'username' not in login_session:
        return redirect('/login')
    user_id = login_session['user_id']
    categories = session.query(Category).all()
    if request.method == 'POST':
        cid = request.form['category']
        addNewItem = Item(name=request.form['name'],
                          description=request.form['description'],
                          price=request.form['price'],
                          cid=request.form['category'],
                          user_id=login_session['user_id'])
        session.add(addNewItem)
        session.commit()
        flash("New catalog item created!", 'success')
        return redirect(url_for('showItems', cid=cid))
    else:
        return render_template('newitem.html',
                               categories=categories,
                               user_id=user_id)
Esempio n. 6
0
def addItem():
    if 'username' not in login_session:
        return redirect(url_for('showLogin'))
    if request.method == 'POST':
        newItem = Item(title=request.form['title'],
                       description=request.form['description'],
                       cat_name=request.form['cat_name'],
                       user_id=login_session['user_id'])
        if session.query(Item).filter_by(title=newItem.title).all():
            flash("Item {} already exists. Please try editing.".format(
                newItem.title))
            return redirect(url_for('index'))
        else:
            session.add(newItem)
            session.commit()
            flash("New item {} created.".format(newItem.title))
            return redirect(url_for('index'))
    else:
        categories = session.query(Category).all()
        return render_template('addItem.html', categories=categories)
Esempio n. 7
0
    def post(self):
        if 'email' not in login_session:
            return redirect('/login')

        user = session.query(User).filter_by(
            email=login_session['email']).first()
        category_name = request.form.get('category', '')
        category = session.query(Category).filter_by(
            name=category_name).first()
        name = request.form.get('name', '')
        description = request.form.get('description', '')

        item = Item(user_id=user.id,
                    category_id=category.id,
                    name=name,
                    description=description)
        session.add(item)
        session.commit()

        return redirect('/catalog/{0}/items'.format(category.name))
Esempio n. 8
0
def newItem(category_id):

    if request.method == 'POST':
        category = session.query(Category).filter_by(id=category_id).one()
        if category.user_id != login_session['user_id']:
            return """<script>function myFunction() {
                      alert('You are not authorized to edit this category ');}
                      </script><body onload='myFunction()'>"""
        if request.form['name'] != '' and request.form['description'] != '':
            new_item = Item(name=request.form['name'],
                            description=request.form['description'],
                            category_id=category_id)
            session.add(new_item)
            session.commit()
            flash("new item added")
            return redirect(url_for('items', category_id=category_id))

    elif request.method == 'GET':
        category = session.query(Category).filter_by(id=category_id).one()
        return render_template('newItem.html', category=category)
Esempio n. 9
0
def newItem(genre_id):
    """
    Add new anime item in list 
    """
    if 'username' in login_session:
        genre = session.query(Genre).filter_by(id=genre_id).one()
        # POST request
        if request.method == 'POST':
            if request.form['name']:
                item = Item(name=request.form['name'], genre_id=genre_id)
                session.add(item)
                session.commit()
                return redirect(url_for('showItems', genre_id=genre_id))
            else:
                return render_template('newItem.html', genre=genre)
        # GET request
        else:
            return render_template('newItem.html', genre=genre)
    else:
        return redirect(url_for('showItems', genre_id=genre_id))
Esempio n. 10
0
def newItem(category_id):

    DBSession = sessionmaker(bind=engine)
    session = DBSession()

    user_id = login_session['user_id']

    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       category_id=category_id,
                       user_id=user_id)
        session.add(newItem)
        session.commit()
        flash('%s Successfully Created' % (newItem.name))
        return redirect(url_for('showItem', category_id=category_id))
    else:
        return render_template('item_new.html', category_id=category_id)

    return render_template('item_new.html', category_id=category_id)
def item_add():
    if 'user_id' not in login_session:
        flash('User must login to complete the given action.')
        return redirect(url_for('login'))
    if request.method == 'POST':
        # Get the category ID from the name
        category = session.query(Category).filter_by(
            name=request.form['category']).one()
        new_item = Item(name=bleach.clean(request.form['name']),
                        category_id=category.id,
                        description=bleach.clean(request.form['description']),
                        user_id=login_session['user_id'])
        session.add(new_item)
        session.commit()
        flash('Item added.')
        return redirect(url_for('catalog_main'))
    else:
        categories = session.query(Category).all()
        return render_template('itemAdd.html', login_session=login_session,
                               categories=categories)
Esempio n. 12
0
def newItem():
    ''' Create a new item in a category '''
    if 'username' not in login_session:
        return redirect('/login')
    else:
        if request.method == 'POST':
            name = request.form['name']
            description = request.form['description']
            cat_id = request.form['category']
            print cat_id
            newItem = Item(name=name,
                           description=description,
                           cat_id=cat_id,
                           user_id=login_session['user_id'])
            session.add(newItem)
            session.commit()
            return redirect(url_for('showHome'))
        else:
            categories = session.query(Category).all()
            return render_template('newitem.html', categories=categories)
Esempio n. 13
0
def new_item(cat_id):
    '''
       Allow you to create a new item
    '''
    if 'username' not in login_session:
        return redirect('/login')
    id_session = login_session['user_id']
    nameCategory = session.query(Category).filter_by(id=cat_id).one()
    categories = session.query(Category).all()
    if request.method == 'POST':
        newItem = Item(title=request.form['name'],
                       description=request.form['description'],
                       cat_id=cat_id,
                       user_id=id_session)
        session.add(newItem)
        session.commit()
        flash('O novo item %s foi criado com sucesso!' % (newItem.title))
        return redirect(url_for('show_category', cat_id=cat_id))
    else:
        return render_template('novo_item.html', nameCategory=nameCategory)
Esempio n. 14
0
def newMenuItem(catalog_id):
    print("ADD MENU ITEM")
    if 'username' not in login_session:
        return redirect('/login')
    catalog = session.query(Catalog).filter_by(id=catalog_id).one()
    print("ADD MENU ITEM 1")

    if login_session['user_id'] != catalog.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 = Item(name=request.form['name'],
                       description=request.form['description'],
                       catalog_id=catalog_id,
                       user_id=catalog.user_id)
        session.add(newItem)
        session.commit()
        flash('New Menu %s Item Successfully Created' % (newItem.name))
        return redirect(url_for('showMenu', catalog_id=catalog_id))
    else:
        return render_template('newmenuitem.html', catalog_id=catalog_id)
Esempio n. 15
0
def newItem(category_id):
    if 'username' not in login_session:
        return redirect('/login')
    category = session.query(Category).filter_by(id=category_id).one()
    if category.user_id != login_session['user_id']:
        return render_template('alert.html')
    else:
        if request.method == 'POST':
            item = Item(name=request.form['name'],
                        category_id=category_id,
                        user_id=login_session['user_id'])
            if item.name != '':
                session.add(item)
                session.commit()
                flash('new item is added!')
            else:
                flash('Empty is not allowed!')
            return redirect(url_for('listCategory', category_id=category_id))
        else:
            return render_template('newItem.html', category_id=category_id)
Esempio n. 16
0
def addItem():
    if 'email' in login_session:
        if request.method == 'POST':
            email = login_session['email']
            user = session.query(User).filter_by(email=email).one()
            category = session.query(Category).filter_by(
                name=request.form['category']).one()
            new_item = Item(name=request.form['name'],
                            description=request.form['description'],
                            category_id=category.id,
                            user_id=user.id)
            session.add(new_item)
            session.commit()
            return redirect(url_for('showCatalog'))
        else:
            categories = session.query(Category).order_by(asc(
                Category.name)).all()
            return render_template('add_item.html', categories=categories)
    else:
        return render_template('/login.html')
Esempio n. 17
0
def addItem(category_id):
    category = session.query(Category).filter_by(id=category_id).one()
    if 'username' not in login_session:
        return redirect('/login')
    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       image=request.form['image'],
                       user_id=login_session['user_id'],
                       category_id=category_id)
        session.add(newItem)
        session.commit()
        flash("New Item Added!")
        return redirect(url_for('showCategory',
                                category=category,
                                category_id=category_id))
    else:
        return render_template('addItem.html',
                               category=category,
                               category_id=category_id)
Esempio n. 18
0
def newCategoryItem():
    print('in new category item')
    #Grant access only to logged users
    if 'user_id' not in login_session:
        return redirect('/login')

    if request.method == 'POST':
        #Create the new item in the category selected
        newItem = Item(title=request.form['title'], \
                       description=request.form['description'], \
                       category_id=request.form['category_id'], \
                       user_id=login_session.get('user_id'))
        session.add(newItem)
        session.commit()
        flash('New Item "%s" Successfully Created' % (newItem.title))
        return redirect(url_for('showCategoryItems', \
                        category_id=request.form['category_id']))
    else:
        categories = session.query(Category).order_by(asc(Category.name))
        return render_template('newCategoryItem.html', categories=categories)
Esempio n. 19
0
def addNewItem():
##    if 'username' not in login_session:
##        return redirect('/login')
    if request.method == 'POST':
        if request.form['name']:
            category = request.form['q']
            category_id = session.query(Category).filter_by(
                name=category).one()
            newItem = Item(name=request.form['name'],
                           description=request.form['description'],
                           category_id=category_id.id,
                           user_id=login_session['user_id'])
            session.add(newItem)
            session.commit()
            return redirect(url_for('showItem', category_id=category_id.id,
                                    item_id=newItem.id))
    else:
        categories = session.query(Category).all()
        return render_template('newitem.html', categories=categories,
                               session=login_session)
Esempio n. 20
0
def newItem(category_id):
    if 'username' not in login_session:
        #return redirect('/login')
        pass

    category = session.query(Category).filter_by(id=category_id).one()
    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       owner=login_session['email'],
                       category_id=category.id)
        session.add(newItem)
        session.commit()
        flash("New Item {} has been created".format(newItem.name))
        return redirect(url_for('showContentCategory',
                                category_id=category_id))
    else:
        return render_template('newItem.html',
                               category_id=category_id,
                               user=login_session)
def addNewItem():
    if 'username' not in login_session:
        return redirect('/login')

    if request.method == 'POST':
        newItem = Item(title=request.form['name'],
                       user_id=login_session['user_id'],
                       description=request.form['description'],
                       category_id=request.form['category'])
        session.add(newItem)
        session.commit()
        flash('New Item %s Successfully Created' % newItem.title)
        return redirect(url_for('showCatalog'))
    else:
        # fetch the list of categories for the drop-down list
        categories = session.query(Category).all()
        # render the form for adding a new item
        return render_template('newItem.html',
                               username=login_session['username'],
                               categories=categories)
Esempio n. 22
0
def addItem(category_id):
    if request.method == 'POST':
        category = session.query(Category).filter_by(id=category_id).one()
        if category is not None:
            print "dsfsdfsd"
            name = request.form['itemName']
            desc = request.form['itemDesc']
            pic = request.form['itemPic']
            user = getUserInfo(login_session['user_id'])
            item = Item(name=name,
                        category_id=category_id,
                        description=desc,
                        picture=pic,
                        category=category,
                        owner_id=user.id,
                        owner=user)
            session.add(item)
            session.commit()
        redirect_url = "/categories/%s" % category.id
        return redirect(redirect_url, code=302)
Esempio n. 23
0
def newItem(category_id):
    if 'username' not in login_session:
        return redirect('/login')
    category = session.query(Category).filter_by(id=category_id).one()
    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       price=request.form['price'],
                       color=request.form['color'],
                       image=request.form['image'],
                       category_id=category_id,
                       userid='user_id')
        session.add(newItem)
        session.commit()
        flash('New Menu %s Item Successfully Created' % (newItem.name))
        return redirect(url_for('showMenu', category_id=category_id))
    else:
        return render_template('newitem.html',
                               category_id=category_id,
                               login_session=login_session)
Esempio n. 24
0
def addNewItem():
    """Method - Add new item

    This method has two methods
    GET - opens add new item page
    POST - adds new item in database
    """

    if request.method == 'POST':
        newItem = Item(title=request.form['title'],
                       description=request.form['desc'],
                       categoryId=request.form['categoryId'])
        s.add(newItem)
        s.commit()
        flash(u'new menu item created', 'success')
        return redirect(url_for('categoriesList'))
    else:
        categories = s.query(Category).all()
        return render_template('addItem.html',
                               categories=categories)
Esempio n. 25
0
def newItem():
    credentials = login_session.get('credentials')
    if credentials is None:
        return redirect('/')
    category_list = session.query(Category).all()
    if request.method == 'POST':
        selectedCategory = name = request.form['category']
        category = session.query(Category).filter_by(id=selectedCategory).one()
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       category=category,
                       user_id=login_session['user_id'])
        session.add(newItem)
        session.commit()
        flash('%s item successfully added!' % newItem.name)
        return redirect(url_for('homePage'))
    else:
        return render_template('addItem.html',
                               category_list=category_list,
                               login_session=login_session)
def newItem(category_id):
    '''
    if GET: go to newItem.html
    if POST: create the new item
    '''
    if 'username' not in login_session:
        return redirect('/login')
    category = session.query(Category).filter_by(id=category_id).one()
    if login_session['user_id'] != category.user_id:
        return "<script>function myFunction() {alert('You are not authorized to add items to this category. Please create your own category in order to add items.');}</script><body onload='myFunction()''>"
    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       category_id=category_id)
        session.add(newItem)
        session.commit()
        flash("A new Item, Dude!")
        return redirect(url_for('showItems', category_id=category_id))
    else:
        return render_template('newItem.html', category_id=category_id)
Esempio n. 27
0
def addItem():
    """Create a new item under a category."""
    if request.method == 'POST':
        if validForm(request.form["name"], request.form["description"]):
            print("finished valid form")
            newItem = Item(name=request.form["name"],
                           description=request.form["description"],
                           category_id=request.form['select'],
                           user_id=session['user_id'])
            db_session.add(newItem)
            db_session.commit()
            flash('New Item Successfully Created')
            return redirect(url_for('showLatestItems'))
        else:
            flash("failed add. Check data")
            categories = db_session.query(Category).all()
            return render_template('addItem.html', categories=categories)
    else:
        categories = db_session.query(Category).all()
        return render_template('addItem.html', categories=categories)
Esempio n. 28
0
def newItem(category_id):
    category = session.query(Category).filter_by(id=category_id).one()
    if request.method == 'POST':
        newItem = Item(air_date=request.form['air_date'],
                       question=request.form['question'],
                       value=request.form['value'],
                       answer=request.form['answer'],
                       game_round=request.form['game_round'],
                       show_number=request.form['show_number'],
                       category_id=category_id,
                       user_id=login_session['user_id'])
        session.add(newItem)
        session.commit()
        flash('New %s Item Successfully Created' % (newItem.air_date))
        return redirect(url_for('categoryItemsList', category_id=category_id))
    else:
        currentUser = getUserInfo(login_session['user_id'])
        return render_template('newitem.html',
                               category_id=category_id,
                               currentUser=currentUser)
Esempio n. 29
0
def newItem(category_id):
    """Add new Item"""
    if 'username' not in login_session:
        return redirect('/login')

    user_id = login_session['user_id']

    if request.method == 'POST':
        newItem = Item(name=request.form['name'],
                       description=request.form['description'],
                       category_id=category_id,
                       user_id=user_id)
        session.add(newItem)
        session.commit()
        flash('%s Successfully Created' % (newItem.name))
        return redirect(url_for('showItem', category_id=category_id))
    else:
        return render_template('item_new.html', category_id=category_id)

    return render_template('item_new.html', category_id=category_id)
Esempio n. 30
0
def addItem():
    logged_in = True
    categories = session.query(Category).all()
    if request.method == 'POST':
        #Check is user is logged in. If not, redirect to login page
        if 'username' not in login_session:
            logged_in = False
            return redirect('/login')
        else:
            categoryName = request.form['category']
            category = session.query(Category).filter_by(name=categoryName).one()
            #Get item created user ID and create item
            item_creator_username = login_session['email']
            item_creator_id = session.query(User).filter_by(username=item_creator_username).one()
            newItem = Item(name=request.form['name'], description=request.form['description'], category_id=category.id, user_id=item_creator_id.id)
            session.add(newItem)
            session.commit()
            return redirect(url_for('showItems', category_id=category.id))
    else:
        return render_template('addItem.html', categories=categories, allowed=logged_in)