summaryrefslogtreecommitdiff
path: root/addons/project/wizard
diff options
context:
space:
mode:
authorThibault Delavallée <tde@odoo.com>2017-04-06 17:18:45 +0200
committerThibault Delavallée <tde@odoo.com>2017-04-20 10:36:22 +0200
commitde62bfb5650579451b87f2de35eff388a690e3b2 (patch)
tree50597412a23cddc24913f329616922e3ad18c040 /addons/project/wizard
parentad92c84be473c6d2cb8e73cc1e8f58018b349113 (diff)
[IMP] project: merge followers when merging tasks
Diffstat (limited to 'addons/project/wizard')
-rw-r--r--addons/project/wizard/project_task_merge_wizard.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/addons/project/wizard/project_task_merge_wizard.py b/addons/project/wizard/project_task_merge_wizard.py
index df7ce693ef3..02ad9b7b1c5 100644
--- a/addons/project/wizard/project_task_merge_wizard.py
+++ b/addons/project/wizard/project_task_merge_wizard.py
@@ -27,6 +27,7 @@ class ProjectTaskMergeWizard(models.TransientModel):
self.target_task_id = self.env['project.task'].create(values)
else:
self.target_task_id.write(values)
+ self.merge_followers()
self.target_task_id.message_post_with_view(
self.env.ref('project.mail_template_task_merge'),
values={'target': True, 'tasks': self.task_ids - self.target_task_id},
@@ -49,6 +50,13 @@ class ProjectTaskMergeWizard(models.TransientModel):
def merge_description(self):
return '<br/>'.join(self.task_ids.mapped(lambda task: "Description from task <b>%s</b>:<br/>%s" % (task.name, task.description or 'No description')))
+ @api.multi
+ def merge_followers(self):
+ self.target_task_id.message_subscribe(
+ partner_ids=(self.task_ids - self.target_task_id).mapped('message_partner_ids').ids,
+ channel_ids=(self.task_ids - self.target_task_id).mapped('message_channel_ids').ids,
+ )
+
@api.model
def default_get(self, fields):
result = super(ProjectTaskMergeWizard, self).default_get(fields)