diff --git a/addons/project/models/project.py b/addons/project/models/project.py index d25de3f6ab4..b00b160ae2b 100644 --- a/addons/project/models/project.py +++ b/addons/project/models/project.py @@ -877,6 +877,20 @@ class Task(models.Model): 'type': 'ir.actions.act_window' } + def action_subtask(self): + action = self.env.ref('project.project_task_action_sub_task').read()[0] + ctx = self.env.context.copy() + ctx.update({ + 'default_parent_id' : self.id, + 'default_project_id' : self.env.context.get('project_id', self.subtask_project_id.id), + 'default_name' : self.env.context.get('name', self.name) + ':', + 'default_partner_id' : self.env.context.get('partner_id', self.partner_id.id), + 'search_default_project_id': self.env.context.get('project_id', self.subtask_project_id.id), + }) + action['context'] = ctx + action['domain'] = [('id', 'child_of', self.id), ('id', '!=', self.id)] + return action + class AccountAnalyticAccount(models.Model): _inherit = 'account.analytic.account' diff --git a/addons/project/views/project_views.xml b/addons/project/views/project_views.xml index 9ebcef69138..bf1e63a5599 100644 --- a/addons/project/views/project_views.xml +++ b/addons/project/views/project_views.xml @@ -84,16 +84,6 @@ Sub-tasks project.task kanban,tree,form,calendar,pivot,graph - [('id', 'child_of', active_id), ('id', '!=', active_id)] - - { - 'default_parent_id' : active_id, - 'default_project_id' : project_id, - 'default_name' : name + ':', - 'default_partner_id' : partner_id, - 'search_default_project_id': [project_id], - } - @@ -403,7 +393,7 @@