diff --git a/addons/product/views/product_template_views.xml b/addons/product/views/product_template_views.xml
index b5e3df764df..06a598c6661 100644
--- a/addons/product/views/product_template_views.xml
+++ b/addons/product/views/product_template_views.xml
@@ -4,7 +4,7 @@
product.template.product.tree
product.template
-
+
@@ -70,7 +70,7 @@
Product.template.product.kanban
product.template
-
+
diff --git a/addons/product/views/product_views.xml b/addons/product/views/product_views.xml
index efce0ef8e55..064eb89a681 100644
--- a/addons/product/views/product_views.xml
+++ b/addons/product/views/product_views.xml
@@ -297,7 +297,7 @@
product.product
-
+
@@ -354,7 +354,7 @@
Product Kanban
product.product
-
+
diff --git a/addons/project/views/project_views.xml b/addons/project/views/project_views.xml
index 3bc731f503f..4e5dfa8ed5a 100644
--- a/addons/project/views/project_views.xml
+++ b/addons/project/views/project_views.xml
@@ -158,7 +158,7 @@
project.task.type.tree
project.task.type
-
+
@@ -175,7 +175,7 @@
project.task.type.kanban
project.task.type
-
+
@@ -390,7 +390,7 @@
project.project.tree
project.project
-
+
@@ -487,7 +487,7 @@
project.project.kanban
project.project
-
+
@@ -833,7 +833,7 @@
project.task
-
+
@@ -1040,7 +1040,7 @@
Tags
project.tags
-
+
diff --git a/addons/purchase/static/src/js/purchase_dashboard.js b/addons/purchase/static/src/js/purchase_dashboard.js
index 70075389f9b..d4db21a80ab 100644
--- a/addons/purchase/static/src/js/purchase_dashboard.js
+++ b/addons/purchase/static/src/js/purchase_dashboard.js
@@ -18,10 +18,21 @@ var KanbanController = require('web.KanbanController');
var KanbanModel = require('web.KanbanModel');
var KanbanRenderer = require('web.KanbanRenderer');
var KanbanView = require('web.KanbanView');
+var SampleServer = require('web.SampleServer');
var view_registry = require('web.view_registry');
var QWeb = core.qweb;
+// Add mock of method 'retrieve_dashboard' in SampleServer, so that we can have
+// the sample data in empty purchase kanban and list view
+let dashboardValues;
+SampleServer.mockRegistry.add('purchase.order', {
+ retrieve_dashboard: () => {
+ return Object.assign({}, dashboardValues);
+ },
+});
+
+
//--------------------------------------------------------------------------
// List View
//--------------------------------------------------------------------------
@@ -72,7 +83,7 @@ var PurchaseListDashboardModel = ListModel.extend({
/**
* @override
*/
- get: function (localID) {
+ __get: function (localID) {
var result = this._super.apply(this, arguments);
if (_.isObject(result)) {
result.dashboardValues = this.dashboardValues[localID];
@@ -83,14 +94,14 @@ var PurchaseListDashboardModel = ListModel.extend({
* @override
* @returns {Promise}
*/
- load: function () {
+ __load: function () {
return this._loadDashboard(this._super.apply(this, arguments));
},
/**
* @override
* @returns {Promise}
*/
- reload: function () {
+ __reload: function () {
return this._loadDashboard(this._super.apply(this, arguments));
},
@@ -107,7 +118,7 @@ var PurchaseListDashboardModel = ListModel.extend({
});
return Promise.all([super_def, dashboard_def]).then(function(results) {
var id = results[0];
- var dashboardValues = results[1];
+ dashboardValues = results[1];
self.dashboardValues[id] = dashboardValues;
return id;
});
@@ -187,7 +198,7 @@ var PurchaseKanbanDashboardModel = KanbanModel.extend({
/**
* @override
*/
- get: function (localID) {
+ __get: function (localID) {
var result = this._super.apply(this, arguments);
if (_.isObject(result)) {
result.dashboardValues = this.dashboardValues[localID];
@@ -198,14 +209,14 @@ var PurchaseKanbanDashboardModel = KanbanModel.extend({
* @override
* @returns {Promise}
*/
- load: function () {
+ __load: function () {
return this._loadDashboard(this._super.apply(this, arguments));
},
/**
* @override
* @returns {Promise}
*/
- reload: function () {
+ __reload: function () {
return this._loadDashboard(this._super.apply(this, arguments));
},
@@ -222,7 +233,7 @@ var PurchaseKanbanDashboardModel = KanbanModel.extend({
});
return Promise.all([super_def, dashboard_def]).then(function(results) {
var id = results[0];
- var dashboardValues = results[1];
+ dashboardValues = results[1];
self.dashboardValues[id] = dashboardValues;
return id;
});
diff --git a/addons/purchase/static/src/scss/purchase.scss b/addons/purchase/static/src/scss/purchase.scss
index 003bb0a488e..1c6644c4667 100644
--- a/addons/purchase/static/src/scss/purchase.scss
+++ b/addons/purchase/static/src/scss/purchase.scss
@@ -52,9 +52,3 @@
}
}
}
-
-.o_purchase_dashboard ~ .o_view_nocontent {
- // To prevent overlapping from inherited values
- position: relative;
- width: 100%;
-}
diff --git a/addons/purchase/views/purchase_views.xml b/addons/purchase/views/purchase_views.xml
index 4e0c8dc61cf..613ddda8d41 100644
--- a/addons/purchase/views/purchase_views.xml
+++ b/addons/purchase/views/purchase_views.xml
@@ -465,7 +465,7 @@
purchase.order.kanban
purchase.order
-
+
@@ -505,7 +505,7 @@
+ decoration-muted="state=='cancel'" decoration-info="state in ('wait','confirmed')" sample="1">
@@ -535,7 +535,7 @@
+ class="o_purchase_order" js_class="purchase_list_dashboard" sample="1">
@@ -563,7 +563,12 @@
purchase.order.view.tree
purchase.order
-
+