def new_item(category_id): if not standard_rights(): return redirect(url_for('show_items', category_id=category_id)) category = get_category_or_abort(category_id) if request.method == 'POST': if not validate_new_item_form(): flash("Form fields cannot be blank") return redirect(url_for('new_item', category_id=category_id)) item_name = request.form['name'] item_id = slugify(item_name) item_desc = request.form['description'] item_short_desc = request.form['short_description'] item_price = request.form['price'] item = Item(id=item_id, name=item_name, description=item_desc, short_description=item_short_desc, price=item_price, category_id=category.id, user_id=session['user_id']) item.save_image(request.files['image_file']) catalog.add(item) catalog.commit() flash("Item created: %s" % item.name) return redirect(url_for('show_item', category_id=category.id, item_id=item_id)) else: return render_template('new_item.html', category=category)
def newItem(category_id): if (not checkLoggedIn()): flash("Must login to access this functionality") return redirect('/login') if (not checkTokenValid()): flash("Login session expired") return redirect(url_for('logout')) category = session.query(Category).filter_by(id=category_id).first() if (category.user_id != login_session['id']): flash("Insufficient Priviledges") return redirect(url_for('getCategory', category_id=category_id)) if (request.method == 'GET'): return render_template('newitem.html', category=category) if (request.method == 'POST'): newItemTitle = request.form['title'] newItemDesc = request.form['description'] if ((newItemTitle is None) or (newItemTitle == '')): flash("New item must have a valid title") return redirect(url_for('newItem', category_id=category_id)) else: newItem = Item(title=newItemTitle, description=newItemDesc, category=category, user_id=login_session['id']) session.add(newItem) session.commit() flash(newItemTitle + " item has been created") return redirect(url_for('getCategory', category_id=category_id))
def createItem(): """ All user can create a new item. """ if not userLoggedIn(): flash('Must be logged in to Create Item') return redirect(url_for('showCatalog')) categories = session.query(Category).all() if request.method == 'POST': user = session.query(User).filter( User.email == login_session['email']).one() image = request.files['image'] imagepath = None if image and allowed_file(image.filename): filename = secure_filename(image.filename) filename = unquieName(filename) imagepath = os.path.join(app.config['UPLOAD_FOLDER'], filename) image.save(imagepath) newItem = Item(name=request.form['name'], description=request.form['description'], price=request.form['price'], category_id=request.form['category_id'], user_id=user.id, image=imagepath) session.add(newItem) session.flush() session.commit() flash(newItem.name + ' Successfully created') return redirect( url_for('showItem', category_name=newItem.category.name, item=newItem.id)) return render_template('update.html', categories=categories, new=True)
def addItem(): categories = session.query(Category.name) if request.method == 'GET': # check if a user is logged in if 'username' not in login_session: return redirect(url_for('showCatalog')) return render_template('addItem.html', categories=categories) else: title = request.form['title'] description = request.form['description'] category = request.form['category'] # only allows item to be added if all forms have been filled out if title is None or description is None or category is None: return redirect(url_for('showCatalog')) else: # create new item from name item = Item(name=title) # add description and cateogory to item item.description = description item.category_name = category session.add(item) session.commit() return redirect(url_for('showCatalog'))
def new_item(): """Create a new item in the database via a form and return a webpage.""" # Find categories categories = session.query(Category).all() # If user submits form to create new item if request.method == 'POST': # Check that user doesn't enter an empty string if request.form['newItemName'] == '': # Give an error message flash("The item wasn't added! You need to type a name!") # Return to new item page return render_template('item-new.html', categories=categories) # Check if user selected "New Category" in dropdown if request.form['categoryName'] == 'newCategory': # Create new category in database from user input categoryName = request.form['newCat'] newCategory = Category(name=categoryName) session.add(newCategory) session.commit() else: categoryName = request.form['categoryName'] # Get category id for new item cat_id = (session.query(Category) .filter_by(name=categoryName).first().id) newItem = Item(name=request.form['newItemName'], description=request.form['newItemDesc'], date_added=date.today(), image=request.form['newItemURL'], category_id=cat_id) session.add(newItem) session.commit() # Go back to main page return redirect(url_for('item', item_name=request.form['newItemName'], category_name=categoryName)) # Present new item form else: return render_template('item-new.html', categories=categories)
"chess", "archery", "roulette", "water polo" } user = User(name="admin", email="*****@*****.**", admin=True) session.add(user) session.commit() for sport in sports: category = Category(name=sport) session.add(category) session.commit() for i in range(random.randint(1, 20)): name = sport + ' item ' + str(i + 1) price = random.randint(1, 100) item = Item( name=name, description= "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi cursus luctus dapibus. Aenean ut quam eu sapien malesuada porta ut non quam. Etiam cursus maximus eros eu pharetra. Fusce finibus turpis ipsum, quis vehicula libero molestie sed. Aenean cursus viverra nulla, vel venenatis dui vulputate in. Morbi et aliquet erat. Duis eget lacus quis lorem iaculis ornare ut quis dui. Vivamus euismod, sapien nec varius sodales, justo lacus mattis erat, non pellentesque arcu nulla ut neque. Aenean sagittis consectetur sem eu tristique. Donec consectetur turpis tincidunt risus euismod tincidunt. Sed lacus turpis, iaculis nec nulla eget, varius pretium magna. Aliquam vitae magna vitae elit eleifend suscipit eget eu arcu. Nunc dolor ex, bibendum id purus quis, tempus bibendum augue. Praesent consequat sapien risus, quis fermentum velit tincidunt imperdiet. Cras lacinia tempus libero, sed mollis ante tincidunt non.", price=price + .99, category=category, user=user) session.add(item) session.commit() item = session.query(Item).first() item.image = "images/test_image.jpg" session.add(item) session.commit() print "Added items!"
from catalog import Item from catalog import Catalog item1 = Item("12 Angry Men", "Drama") item2 = Item("The Godfather", "Crime") item3 = Item("Schindler's List", "Biography") item4 = Item("Pulp Fiction", "Crime") catalog = Catalog('Films') catalog.add(item1) catalog.add(item2) catalog.add(item3) catalog.add(item4) #print(catalog) assert catalog.__str__() == "Catalog Films:\n\tName: 12 Angry Men, Category: Drama\n\tName: The Godfather, Category: Crime\n\tName: Schindler's List, Category: Biography\n\tName: Pulp Fiction, Category: Crime" print('Complete')
sports = {"soccer", "basketball", "tennis", "polo", "track", "swimming", "racing", "football", "baseball", "golf", "skydiving", "poker", "video games", "chess", "archery", "roulette", "water polo"} user = User(name="admin", email="*****@*****.**", admin=True) session.add(user) session.commit() for sport in sports: category = Category(name=sport) session.add(category) session.commit() for i in range(random.randint(1, 20)): name = sport + ' item ' + str(i+1) price = random.randint(1, 100) item = Item(name=name, description="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi cursus luctus dapibus. Aenean ut quam eu sapien malesuada porta ut non quam. Etiam cursus maximus eros eu pharetra. Fusce finibus turpis ipsum, quis vehicula libero molestie sed. Aenean cursus viverra nulla, vel venenatis dui vulputate in. Morbi et aliquet erat. Duis eget lacus quis lorem iaculis ornare ut quis dui. Vivamus euismod, sapien nec varius sodales, justo lacus mattis erat, non pellentesque arcu nulla ut neque. Aenean sagittis consectetur sem eu tristique. Donec consectetur turpis tincidunt risus euismod tincidunt. Sed lacus turpis, iaculis nec nulla eget, varius pretium magna. Aliquam vitae magna vitae elit eleifend suscipit eget eu arcu. Nunc dolor ex, bibendum id purus quis, tempus bibendum augue. Praesent consequat sapien risus, quis fermentum velit tincidunt imperdiet. Cras lacinia tempus libero, sed mollis ante tincidunt non.", price=price + .99, category=category, user=user) session.add(item) session.commit() item = session.query(Item).first() item.image = "images/test_image.jpg" session.add(item) session.commit() print "Added items!"
from catalog import Item from catalog import Catalog # Main program starts here item1 = Item("Green Book", "Biography") print(item1) item2 = Item("The God", "Crime") print(item2) item2.set_name("The Godfather") print(item2) item3 = Item("Schindler's List", "Biography") print(item3) item3.set_category("Drama") print(item3) catalog = Catalog('Films') catalog.add(item1) catalog.add(item2) catalog.add(item3) print(catalog) catalog.remove(item2) print(catalog) catalog.set_name("Favorite Movies") print(catalog) print(catalog.find_item_by_name("Green Book")) print(catalog.find_item_by_name("The Godfather"))
from catalog import Item from catalog import Catalog # Main program starts here item1 = Item("12 Angry Men", "Blabla") item1.set_category("Drama") print(item1) item2 = Item("The God", "Crime") print(item2) item2.set_name("The Godfather") print(item2) item3 = Item("Schindler's List", "Biography") print(item3) item4 = Item("Pulp Fiction", "Crime") print(item4) catalog = Catalog('Films') catalog.add(item1) catalog.add(item2) catalog.add(item3) catalog.add(item4) print(catalog) catalog.remove(item3) catalog.set_name("My Favorites") print(catalog) print(catalog.find_item_by_name("Green Book")) print(catalog.find_item_by_name("The Godfather"))
'Bat'] categories = [ soccer,soccer,soccer,snowboarding,snowboarding,hockey,baseball] itemsWithCategories = zip(items,categories): images = {'Shinguards':"http://ep.yimg.com/ay/yhst-96316601417599/nike-usa-mercurial-lite-shinguards-royal-5.jpg", 'Jersey':"http://image.made-in-china.com/4f0j00JMetfqWlCVog/2012-New-Style-Football-Jersey-Sport-Jersey-Soccer-Shirt.jpg", 'Soccer Cleats':"https://s-media-cache-ak0.pinimg.com/236x/66/0e/61/660e61232c8f3ac243a56ad013087b50.jpg", 'Goggles':"http://www.gooutdoors.co.uk/Lib/Img/ski-goggles.jpg", 'Snowboard':"", 'Stick':"", 'Bat':"" } def CreateDescription(nameStr,categoryEntry): categoryStr = categoryEntry.name descriptionStr = "%s: used in the sport of %s" %(nameStr,categoryStr) return descriptionStr def CreateRandomDate(): today = datetime.date.today() days_ago = randint(0,540) date = today - datetime.timedelta(days = days_ago) return date for i,c in itemsWithCategories: new_item = Item( name = i, category_id = c.id, image=images[i], description = CreateDescription(i,c), date_added = CreateRandomDate() ) session.add(new_item) session.commit()