1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
odoo.define('mail.ActivityView', function (require) {
"use strict";
const ActivityController = require('mail.ActivityController');
const ActivityModel = require('mail.ActivityModel');
const ActivityRenderer = require('mail.ActivityRenderer');
const BasicView = require('web.BasicView');
const core = require('web.core');
const RendererWrapper = require('web.RendererWrapper');
const view_registry = require('web.view_registry');
const _lt = core._lt;
const ActivityView = BasicView.extend({
accesskey: "a",
display_name: _lt('Activity'),
icon: 'fa-clock-o',
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' });
this.controllerParams.title = this.arch.attrs.string;
},
/**
*
* @override
*/
getRenderer(parent, state) {
state = Object.assign({}, state, this.rendererParams);
return new RendererWrapper(null, this.config.Renderer, state);
},
});
view_registry.add('activity', ActivityView);
return ActivityView;
});
|