summaryrefslogtreecommitdiff
path: root/addons/crm/static/src/js/systray_activity_menu.js
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/crm/static/src/js/systray_activity_menu.js
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/crm/static/src/js/systray_activity_menu.js')
-rw-r--r--addons/crm/static/src/js/systray_activity_menu.js57
1 files changed, 57 insertions, 0 deletions
diff --git a/addons/crm/static/src/js/systray_activity_menu.js b/addons/crm/static/src/js/systray_activity_menu.js
new file mode 100644
index 00000000..8a1f71b0
--- /dev/null
+++ b/addons/crm/static/src/js/systray_activity_menu.js
@@ -0,0 +1,57 @@
+odoo.define('crm.systray.ActivityMenu', function (require) {
+"use strict";
+
+var ActivityMenu = require('mail.systray.ActivityMenu');
+
+ActivityMenu.include({
+
+ //--------------------------------------------------
+ // Private
+ //--------------------------------------------------
+
+ /**
+ * @override
+ */
+ _getViewsList(model) {
+ if (model === "crm.lead") {
+ return [[false, 'list'], [false, 'kanban'],
+ [false, 'form'], [false, 'calendar'],
+ [false, 'pivot'], [false, 'graph'],
+ [false, 'activity']
+ ];
+ }
+ return this._super(...arguments);
+ },
+
+ //-----------------------------------------
+ // Handlers
+ //-----------------------------------------
+
+ /**
+ * @private
+ * @override
+ */
+ _onActivityFilterClick: function (event) {
+ // fetch the data from the button otherwise fetch the ones from the parent (.o_mail_preview).
+ var data = _.extend({}, $(event.currentTarget).data(), $(event.target).data());
+ var context = {};
+ if (data.res_model === "crm.lead") {
+ if (data.filter === 'my') {
+ context['search_default_activities_overdue'] = 1;
+ context['search_default_activities_today'] = 1;
+ } else {
+ context['search_default_activities_' + data.filter] = 1;
+ }
+ // Necessary because activity_ids of mail.activity.mixin has auto_join
+ // So, duplicates are faking the count and "Load more" doesn't show up
+ context['force_search_count'] = 1;
+ this.do_action('crm.crm_lead_action_my_activities', {
+ additional_context: context,
+ clear_breadcrumbs: true,
+ });
+ } else {
+ this._super.apply(this, arguments);
+ }
+ },
+});
+});