diff --git a/addons/website_sale/controllers/main.py b/addons/website_sale/controllers/main.py index 62018d7f7ca..8669b6ee536 100644 --- a/addons/website_sale/controllers/main.py +++ b/addons/website_sale/controllers/main.py @@ -403,10 +403,10 @@ class Ecommerce(http.Controller): return request.website.render("website_sale.product", values) @website.route(['/shop/add_product/', '/shop/category//add_product/'], type='http', auth="user", multilang=True, methods=['POST']) - def add_product(self, cat_id=0, **post): + def add_product(self, name="New Product", cat_id=0, **post): Product = request.registry.get('product.product') product_id = Product.create(request.cr, request.uid, { - 'name': 'New Product', 'public_categ_id': cat_id + 'name': name, 'public_categ_id': cat_id }, context=request.context) product = Product.browse(request.cr, request.uid, product_id, context=request.context) diff --git a/addons/website_sale/static/src/js/website_sale.editor.js b/addons/website_sale/static/src/js/website_sale.editor.js index 582b2df2ac7..366b4fadce5 100644 --- a/addons/website_sale/static/src/js/website_sale.editor.js +++ b/addons/website_sale/static/src/js/website_sale.editor.js @@ -3,4 +3,20 @@ var website = openerp.website; website.add_template_file('/website_sale/static/src/xml/website_sale.xml'); + + website.EditorBar.include({ + events: _.extend({}, website.EditorBar.prototype.events, { + 'click a[data-action=new_product]': function (ev) { + ev.preventDefault(); + website.prompt({ + window_title: "New Product", + input: "Product Name", + }).then(function (name) { + website.form('/shop/add_product', 'POST', { + name: name + }); + }); + } + }), + }); })(); diff --git a/addons/website_sale/static/src/xml/website_sale.xml b/addons/website_sale/static/src/xml/website_sale.xml index ef50a46502e..01ac14c8f74 100644 --- a/addons/website_sale/static/src/xml/website_sale.xml +++ b/addons/website_sale/static/src/xml/website_sale.xml @@ -1,7 +1,7 @@ -
  • New Product
  • +
  • New Product