diff options
| author | XavierDo <xdo@odoo.com> | 2018-09-13 13:15:32 +0200 |
|---|---|---|
| committer | XavierDo <xdo@odoo.com> | 2018-09-18 13:44:00 +0200 |
| commit | 47496b9fe5555ef23932fcfc3f2d6d6ee945daae (patch) | |
| tree | 691ab48e21c4489c92259b2bb58d7c126453e3f7 /addons/mail/static/src/js/activity.js | |
| parent | 44fd3bc8082205290e38de183d092b42c02c8215 (diff) | |
[IMP] mail: add force_next on activity type
A new field on activity type allow to change the behaviour of mark done & schedule next:
-marking as done will automatically schedule the next activity, based on the default_next_activity.
-It should also be impossible to edit an activity when this flag is on.
task: #1884521
Diffstat (limited to 'addons/mail/static/src/js/activity.js')
| -rw-r--r-- | addons/mail/static/src/js/activity.js | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/addons/mail/static/src/js/activity.js b/addons/mail/static/src/js/activity.js index ff1cf8b5761..cabcd469b5c 100644 --- a/addons/mail/static/src/js/activity.js +++ b/addons/mail/static/src/js/activity.js @@ -169,11 +169,15 @@ var BasicActivity = AbstractField.extend({ context: this.record.getContext(), }).then( function (rslt_action) { - self.do_action(rslt_action, { - on_close: function () { - self.trigger_up('reload'); - }, - }); + if (rslt_action) { + self.do_action(rslt_action, { + on_close: function () { + self.trigger_up('reload'); + }, + }); + } else { + self.trigger_up('reload'); + } } ); }, @@ -270,6 +274,7 @@ var BasicActivity = AbstractField.extend({ var $popoverElement = $(ev.currentTarget); var activityID = $popoverElement.data('activity-id'); var previousActivityTypeID = $popoverElement.data('previous-activity-type-id'); + var forceNextActivity = $popoverElement.data('force-next-activity'); if (!$popoverElement.data('bs.popover')) { $popoverElement.popover({ template: $(Popover.Default.template).addClass('o_mail_activity_feedback')[0].outerHTML, // Ugly but cannot find another way @@ -279,7 +284,7 @@ var BasicActivity = AbstractField.extend({ trigger:'click', placement: 'right', // FIXME: this should work, maybe a bug in the popper lib content : function () { - var $popover = $(QWeb.render('mail.activity_feedback_form', { previous_activity_type_id: previousActivityTypeID })); + var $popover = $(QWeb.render('mail.activity_feedback_form', { previous_activity_type_id: previousActivityTypeID, force_next: forceNextActivity})); $popover.find('#activity_feedback').val(self._draftFeedback[activityID]); $popover.on('click', '.o_activity_popover_done', function (ev) { ev.stopPropagation(); |
