diff --git a/addons/mrp/data/mrp_demo.xml b/addons/mrp/data/mrp_demo.xml
index dd0a3d3f568..cf802539c11 100644
--- a/addons/mrp/data/mrp_demo.xml
+++ b/addons/mrp/data/mrp_demo.xml
@@ -169,6 +169,7 @@
Solid wood table.
FURN_9666
+ serial
@@ -470,18 +471,6 @@
0000000000030
-
- 0000000000031
-
-
-
- 0000000000032
-
-
-
- 0000000000033
-
-
@@ -503,7 +492,6 @@
40
-
@@ -511,7 +499,6 @@
50
-
@@ -519,7 +506,6 @@
50
-
diff --git a/addons/mrp/models/mrp_workorder.py b/addons/mrp/models/mrp_workorder.py
index cc7a98635ea..b58e5eb29f4 100644
--- a/addons/mrp/models/mrp_workorder.py
+++ b/addons/mrp/models/mrp_workorder.py
@@ -305,6 +305,9 @@ class MrpWorkorder(models.Model):
@api.multi
def record_production(self):
+ if not self:
+ return True
+
self.ensure_one()
if self.qty_producing <= 0:
raise UserError(_('Please set the quantity you are currently producing. It should be different from zero.'))
diff --git a/addons/point_of_sale/data/point_of_sale_data.xml b/addons/point_of_sale/data/point_of_sale_data.xml
index 24a0f58e400..eef8edee6ce 100644
--- a/addons/point_of_sale/data/point_of_sale_data.xml
+++ b/addons/point_of_sale/data/point_of_sale_data.xml
@@ -37,7 +37,7 @@
- Main
+ Shop
diff --git a/addons/pos_restaurant/data/pos_restaurant_demo.xml b/addons/pos_restaurant/data/pos_restaurant_demo.xml
index 69b39eafb63..55a20022b25 100644
--- a/addons/pos_restaurant/data/pos_restaurant_demo.xml
+++ b/addons/pos_restaurant/data/pos_restaurant_demo.xml
@@ -11,9 +11,47 @@
-
+
+
+ PoS
+
-
+
+ Drinks
+
+
+
+ True
+ 2.20
+ Coca-Cola
+
+
+
+
+
+
+ True
+ 2.20
+ Water
+
+
+
+
+
+
+ True
+ 2.20
+ Minute Maid
+
+
+
+
+
+
+
+ Bar
+
+
True
True
True
@@ -27,7 +65,7 @@
Main Floor
rgb(136,137,242)
-
+
@@ -167,7 +205,7 @@
Patio
rgb(130, 233, 171)
-
+
diff --git a/addons/pos_restaurant/static/img/th-coke.jpg b/addons/pos_restaurant/static/img/th-coke.jpg
new file mode 100644
index 00000000000..a8802d0bc83
Binary files /dev/null and b/addons/pos_restaurant/static/img/th-coke.jpg differ
diff --git a/addons/pos_restaurant/static/img/th-minute_maid.jpg b/addons/pos_restaurant/static/img/th-minute_maid.jpg
new file mode 100644
index 00000000000..c3f152db229
Binary files /dev/null and b/addons/pos_restaurant/static/img/th-minute_maid.jpg differ
diff --git a/addons/pos_restaurant/static/img/th-water.jpg b/addons/pos_restaurant/static/img/th-water.jpg
new file mode 100644
index 00000000000..e031e38ba4c
Binary files /dev/null and b/addons/pos_restaurant/static/img/th-water.jpg differ
diff --git a/addons/product/data/product_demo.xml b/addons/product/data/product_demo.xml
index 09756c5a28d..dd730d92904 100644
--- a/addons/product/data/product_demo.xml
+++ b/addons/product/data/product_demo.xml
@@ -159,7 +159,7 @@
- Desk Customizable
+ Customizable Desk
500.0
750.0
diff --git a/addons/product/tests/test_product_pricelist.py b/addons/product/tests/test_product_pricelist.py
index a2ed546cf39..43db6f7c49b 100644
--- a/addons/product/tests/test_product_pricelist.py
+++ b/addons/product/tests/test_product_pricelist.py
@@ -65,11 +65,11 @@ class TestProductPricelist(TransactionCase):
def test_10_calculation_price_of_products_pricelist(self):
"""Test calculation of product price based on pricelist"""
- # I check sale price of Desk Customizable
+ # I check sale price of Customizable Desk
context = {}
context.update({'pricelist': self.customer_pricelist.id, 'quantity': 1})
ipad_retina_display = self.ipad_retina_display.with_context(context)
- msg = "Wrong sale price: Desk Customizable. should be %s instead of %s" % (ipad_retina_display.price, (ipad_retina_display.lst_price-ipad_retina_display.lst_price*(0.10)))
+ msg = "Wrong sale price: Customizable Desk. should be %s instead of %s" % (ipad_retina_display.price, (ipad_retina_display.lst_price-ipad_retina_display.lst_price*(0.10)))
self.assertEqual(float_compare(ipad_retina_display.price, (ipad_retina_display.lst_price-ipad_retina_display.lst_price*(0.10)), precision_digits=2), 0, msg)
# I check sale price of Laptop.
diff --git a/addons/purchase_mrp/__manifest__.py b/addons/purchase_mrp/__manifest__.py
index ce84472e8d9..78e6636355f 100644
--- a/addons/purchase_mrp/__manifest__.py
+++ b/addons/purchase_mrp/__manifest__.py
@@ -15,8 +15,6 @@ from purchase order.
""",
'website': 'https://www.odoo.com/page/manufacturing',
'depends': ['mrp', 'purchase'],
- 'data': [],
- 'demo': [],
'installable': True,
'auto_install': True,
}
diff --git a/addons/purchase_stock/data/purchase_stock_demo.xml b/addons/purchase_stock/data/purchase_stock_demo.xml
index 42b66d63aae..9f61d5f181d 100644
--- a/addons/purchase_stock/data/purchase_stock_demo.xml
+++ b/addons/purchase_stock/data/purchase_stock_demo.xml
@@ -18,6 +18,9 @@
+
+
+
diff --git a/addons/stock/data/stock_demo2.xml b/addons/stock/data/stock_demo2.xml
index 43186a14195..eb181e16d21 100644
--- a/addons/stock/data/stock_demo2.xml
+++ b/addons/stock/data/stock_demo2.xml
@@ -52,18 +52,13 @@
-
+
0000000000017
-
- 0000000000024
-
-
-
- Inventory for icecream
+ Inventory for Cable Management Box
product
@@ -73,7 +68,6 @@
50.0
-
@@ -82,7 +76,6 @@
40.0
-
diff --git a/addons/stock/models/stock_production_lot.py b/addons/stock/models/stock_production_lot.py
index 5f0009e9504..c34451a73ee 100644
--- a/addons/stock/models/stock_production_lot.py
+++ b/addons/stock/models/stock_production_lot.py
@@ -39,7 +39,7 @@ class ProductionLot(models.Model):
@api.multi
def write(self, vals):
- if 'product_id' in vals:
+ if 'product_id' in vals and any([vals['product_id'] != lot.product_id.id for lot in self]):
move_lines = self.env['stock.move.line'].search([('lot_id', 'in', self.ids)])
if move_lines:
raise UserError(_(
diff --git a/addons/website_sale/data/demo.xml b/addons/website_sale/data/demo.xml
index 55705457947..a61012731c7 100644
--- a/addons/website_sale/data/demo.xml
+++ b/addons/website_sale/data/demo.xml
@@ -135,85 +135,10 @@
Lamps
22
-
- Tables
- 23
-
Multimedia
24
-
- Devices
- 5
-
-
-
-
- Screen
- 11
-
-
-
- Pen Drive
- 9
-
-
-
- External Hard Drive
- 6
-
-
-
- Keyboard / Mouse
- 8
-
-
-
- Printer
- 10
-
-
-
- Speakers
- 13
-
-
-
- Headset
- 7
-
-
-
- Software
- 12
-
-
-
- Laptops
- 1
-
-
-
- Computers
- 2
-
-
-
-
- Computer all-in-one
- 3
-
-
-
- Server
- 4
-
-
-
- Network
- 14
-
Services
@@ -277,9 +202,6 @@
-
-
-
@@ -405,7 +327,7 @@
- Desk Customizable
+ Customizable Desk
1
@@ -426,7 +348,7 @@
- Desk Customizable
+ Customizable Desk
1
@@ -468,7 +390,7 @@
- Desk Customizable
+ Customizable Desk
3
diff --git a/addons/website_sale_options/static/src/js/website_sale.test.js b/addons/website_sale_options/static/src/js/website_sale.test.js
index d1e8f74ce22..ae6e4108647 100644
--- a/addons/website_sale_options/static/src/js/website_sale.test.js
+++ b/addons/website_sale_options/static/src/js/website_sale.test.js
@@ -43,7 +43,7 @@ tour.register('shop_customize', {
{
content: "select product",
extra_trigger: 'body:not(:has(.oe_website_sale .oe_product_cart:eq(2)))',
- trigger: '.oe_product_cart a:contains("Desk Customizable")',
+ trigger: '.oe_product_cart a:contains("Customizable Desk")',
},
{
content: "open customize menu",
diff --git a/addons/website_sale_wishlist/static/src/js/website_sale_tour_wishlist.js b/addons/website_sale_wishlist/static/src/js/website_sale_tour_wishlist.js
index 921bbe32ffd..1728fef9f92 100644
--- a/addons/website_sale_wishlist/static/src/js/website_sale_tour_wishlist.js
+++ b/addons/website_sale_wishlist/static/src/js/website_sale_tour_wishlist.js
@@ -47,18 +47,18 @@ tour.register('shop_wishlist', {
},
},
{
- content: "check that logged in and search for desk customizable",
+ content: "check that logged in and search for Customizable Desk",
extra_trigger: 'li span:contains(Administrator)',
trigger: 'form input[name="search"]',
- run: "text Desk Customizable",
+ run: "text Customizable Desk",
},
{
content: "submit search",
trigger: 'form:has(input[name="search"]) .oe_search_button',
},
{
- content: "click on desk customizable",
- trigger: '.oe_product_cart a:contains("Desk Customizable")',
+ content: "click on Customizable Desk",
+ trigger: '.oe_product_cart a:contains("Customizable Desk")',
},
{
content: "select desk cutomizable",
@@ -75,8 +75,8 @@ tour.register('shop_wishlist', {
trigger: 'a[href="/shop/wishlist"]',
},
{
- content: "remove desk customizable",
- trigger: 'tr:contains("Desk Customizable") a.o_wish_rm:first',
+ content: "remove Customizable Desk",
+ trigger: 'tr:contains("Customizable Desk") a.o_wish_rm:first',
},
{
content: "check that wishlist contains 1 item",