def new_product(): error = None form = AddProductForm(request.form) if request.method == 'POST': if form.validate_on_submit(): new_product = Product( form.donor_Id.data, form.product_Code.data, form.blood_Group.data, form.exp_Date.data, form.product_Vol.data, '1', session['user_id'] ) db.session.add(new_product) db.session.commit() flash('New entry was successfully posted. Thanks.') return redirect(url_for('products')) else: flash('All fields are required') return redirect(url_for('products')) return render_template( 'products.html', form=form, error=error, open_products=open_products(), closed_products=closed_products )
def add_product(): form = AddProductForm() if form.validate_on_submit(): new_product = Product(name = form.name.data, description=form.description.data, price=form.price.data, category_id=form.category.data, stock=form.stock.data) db.session.add(new_product) db.session.commit() flash('You have successfully added a new product.') return redirect(url_for('admin.add_product')) return render_template('admin/add_product.html', form=form, title="Add Product")
def addProduct(): form = AddProductForm() makers = Maker.query.all() if makers: form.maker.choices = [(a.id, a.name) for a in makers] if form.validate_on_submit(): product = Product() product.code = form.code.data product.maker_id = form.maker.data product.maker_code = form.maker_code.data product.desc_CS = form.desc_CS.data product.desc_JP = form.desc_JP.data product.long_desc = form.long_desc.data product.detailed_desc = form.detailed_desc.data product.subcategory_desc = form.subcategory_desc.data product.keywords = form.keywords.data product.price_unit = form.price_unit.data product.price_retail = form.price_retail.data product.qty_stock = form.qty_stock.data product.limited_flg = form.limited_flg.data product.axm_node = form.axm_node.data if form.package_size.data == '': product.package_size = None else: product.package_size = form.package_size.data category_id = Maker.query.filter_by(id=product.maker_id).first().category_id if category_id: product.category_id = category_id db.session.add(product) db.session.commit() term_ids_str = request.form.getlist('term') for id in term_ids_str: t = CatalogedProducts() t.product_id = product.id t.catalog_id = int(id) db.session.add(t) db.session.commit() flash(gettext("New product successfully added.")) return redirect(url_for("editProduct", id=product.id)) catalog = prepare_catalog() return render_template("product/addProduct.html", title=gettext('Add new product'), catalog=catalog, form=form)
def add_product(referrer): form = AddProductForm() search_bar = search() if form.validate_on_submit(): user_id = form.user_id.data name = form.name.data.strip() asin = form.asin.data.strip() category_id = form.category_id.data default_photo = form.default_photo.data.strip() custom_photo = form.custom_photo.data new_product = model.Product(name=name, asin=asin, category_id=category_id, default_photo=default_photo, custom_photo=custom_photo) new_product_id = new_product.id if referrer == 'new': model.session.add(new_product) model.session.commit() add_to_lib = model.Library(user_id=user_id, product_id=new_product_id, product_desc=name, status=1) model.session.add(add_to_lib) model.session.commit() return jsonify(msg='Success') else: if referrer == 'new': return render_template("add_product.html", title="Add a Product", form=form, search=search_bar) else: return 'Fail'
def edit_product(id): products = Product.query.get(id) # if current_user.id != issue.user_id: # abort(403) form = AddProductForm(obj=products) if form.validate_on_submit(): products.name = form.name.data products.description = form.description.data products.category_id = form.category.data products.price = form.price.data products.stock = form.stock.data db.session.add(products) db.session.commit() return redirect(url_for('admin.view')) form.name.data = products.name form.description.data = products.description form.price.data = products.price form.category.data= products.category_id form.stock= products.stock #flash('You have successfully updated product.') return render_template('admin/edit_product.html', form=form, title="Edit Product")
def welcome_admin(): print(admin) product_list = [] for i in Products.query.with_entities( Products.category, func.count(Products.category)).group_by(Products.category).all(): product_list.append(list(i)) form = AddProductForm() if form.validate_on_submit(): product = Products(name=form.name.data, description=form.description.data, price=form.price.data, category=form.category.data) db.session.add(product) db.session.commit() flash("added successfully") return redirect(url_for('view_products')) return render_template("welcome_admin.html", form=form, admin=admin, product_list=product_list)
def add_product(referrer): form = AddProductForm() search_bar = search() if form.validate_on_submit(): user_id = form.user_id.data name = form.name.data.strip() asin = form.asin.data.strip() category_id = form.category_id.data default_photo = form.default_photo.data.strip() custom_photo = form.custom_photo.data new_product = model.Product(name = name, asin = asin, category_id=category_id, default_photo = default_photo, custom_photo=custom_photo) new_product_id = new_product.id if referrer == 'new': model.session.add(new_product) model.session.commit() add_to_lib = model.Library(user_id=user_id, product_id=new_product_id, product_desc=name, status=1) model.session.add(add_to_lib) model.session.commit() return jsonify(msg='Success') else: if referrer=='new': return render_template("add_product.html", title="Add a Product", form=form, search=search_bar) else: return 'Fail'
def editProduct(id=0): # for stock: return to the same page stock_page = request.args.get('stock_page') if request.args.get('stock_page') else 1 product = Product.query.filter_by(id=id).first() if product == None: flash(gettext('Product not found.')) return redirect(url_for('stock', page=stock_page)) form = AddProductForm(obj=product) makers = Maker.query.all() if makers: form.maker.choices = [(a.id, a.name) for a in makers] #for existing code validation form.request = request if form.validate_on_submit(): #delete product if 'delete' in request.form: product.active_flg = False db.session.add(product) db.session.commit() flash(gettext('Product has been deleted.')) return redirect(url_for("stock", page=stock_page)) #update catalog terms new_ids_str = request.form.getlist('term') new_ids = [] for id in new_ids_str: new_ids.append(int(id)) old_ids = [] for term in product.catalog_terms: old_ids.append(term.catalog_id) for id in old_ids: if id not in new_ids: t = CatalogedProducts.query\ .filter_by(catalog_id=id)\ .filter_by(product_id=product.id)\ .first() db.session.delete(t) for id in new_ids: if id not in old_ids: t = CatalogedProducts() t.product_id = product.id t.catalog_id = id db.session.add(t) db.session.commit() #update product product.code = form.code.data product.maker_id = form.maker.data product.maker_code = form.maker_code.data product.desc_CS = form.desc_CS.data product.desc_JP = form.desc_JP.data product.long_desc = form.long_desc.data product.detailed_desc = form.detailed_desc.data product.subcategory_desc = form.subcategory_desc.data product.keywords = form.keywords.data product.price_unit = form.price_unit.data product.price_retail = form.price_retail.data product.qty_stock = form.qty_stock.data product.limited_flg = form.limited_flg.data product.axm_node = form.axm_node.data if form.package_size.data == '': product.package_size = None else: product.package_size = form.package_size.data category_id = Maker.query.filter_by(id=product.maker_id).first().category_id if category_id: product.category_id = category_id db.session.add(product) db.session.commit() flash(gettext("Product successfully changed.")) return redirect(url_for("stock", page=stock_page)) selected_maker = product.maker_id imgUrls = getImgUrls(product.id) catalog = prepare_catalog() terms = product.catalog_terms terms.sort(key=lambda x: x.catalog.order) selected_catalog_terms = [] for term in terms: if term.catalog.super_id == None: level = 0 else: level = 1 selected_catalog_terms.append([term.catalog.id, level, unicode(term.catalog.name_CS)]) return render_template('product/editProduct.html', title=gettext("Edit Product"), product=product, catalog=catalog, imgUrls=imgUrls, selected_maker=selected_maker, selected_catalog_terms=selected_catalog_terms, stock_page=stock_page, form=form)