summaryrefslogtreecommitdiff
path: root/addons/mail/static/src/js/views/activity/activity_view.js
diff options
context:
space:
mode:
authorHiral Bhavsar <hbh@odoo.com>2019-02-04 06:18:08 +0000
committerMartin Geubelle <mge@odoo.com>2019-05-03 10:19:40 +0000
commitb2de618f9ff9969ff0644f3be10752f23d9738dc (patch)
treea7f54bb16273f3b626a96d363e0f54bf19bb4ba3 /addons/mail/static/src/js/views/activity/activity_view.js
parentb29d4da037fbf73717cccdfcdf76d96e5b1b009b (diff)
[IMP] base,mail: allow to customize the activity view
The activity view has been greatly improved to allow to customize it more easily. It works quite similarly to the kanban view, defining `<field>` tags at the top and using these fields in the `<template>` section. The template name used to define the activity cards is `activity-box`. Note that these activity cards are rendered using `KanbanRecord` widget (this has implied that ActivityView inherits from `BasicView`). Also note that the view validation has been moved in base to include the common grammar. Task 1894990
Diffstat (limited to 'addons/mail/static/src/js/views/activity/activity_view.js')
-rw-r--r--addons/mail/static/src/js/views/activity/activity_view.js19
1 files changed, 16 insertions, 3 deletions
diff --git a/addons/mail/static/src/js/views/activity/activity_view.js b/addons/mail/static/src/js/views/activity/activity_view.js
index 9f0cec6b761..b21a68215d1 100644
--- a/addons/mail/static/src/js/views/activity/activity_view.js
+++ b/addons/mail/static/src/js/views/activity/activity_view.js
@@ -4,23 +4,36 @@ odoo.define('mail.ActivityView', function (require) {
var ActivityController = require('mail.ActivityController');
var ActivityModel = require('mail.ActivityModel');
var ActivityRenderer = require('mail.ActivityRenderer');
-var AbstractView = require('web.AbstractView');
+var BasicView = require('web.BasicView');
var core = require('web.core');
var view_registry = require('web.view_registry');
var _lt = core._lt;
-var ActivityView = AbstractView.extend({
+var ActivityView = BasicView.extend({
accesskey: "a",
display_name: _lt('Activity'),
icon: 'fa-clock-o',
- config: _.extend({}, AbstractView.prototype.config, {
+ config: _.extend({}, BasicView.prototype.config, {
Controller: ActivityController,
Model: ActivityModel,
Renderer: ActivityRenderer,
}),
viewType: 'activity',
searchMenuTypes: ['filter', 'favorite'],
+
+ /**
+ * @override
+ */
+ init: function () {
+ this._super.apply(this, arguments);
+
+ this.loadParams.type = 'list';
+ // limit makes no sense in this view as we display all records having activities
+ this.loadParams.limit = false;
+
+ this.rendererParams.templates = _.findWhere(this.arch.children, { 'tag': 'templates' });
+ },
});
view_registry.add('activity', ActivityView);