diff --git a/addons/mail/models/mail_activity.py b/addons/mail/models/mail_activity.py
index 5e414d8dbd0..a989ac4c983 100644
--- a/addons/mail/models/mail_activity.py
+++ b/addons/mail/models/mail_activity.py
@@ -69,10 +69,12 @@ class MailActivityType(models.Model):
domain="['|', ('res_model_id', '=', False), ('res_model_id', '=', res_model_id)]",
string='Preceding Activities')
category = fields.Selection([
- ('default', 'Standard'), ('upload_file', 'Upload Document')
- ], default='default', string='Category',
- help='Categories may trigger specific behavior like opening calendar view or automatically mark as done when a document is uploaded')
+ ('default', 'None'), ('upload_file', 'Upload Document')
+ ], default='default', string='Action to Perform',
+ help='Actions may trigger specific behavior like opening calendar view or automatically mark as done when a document is uploaded')
mail_template_ids = fields.Many2many('mail.template', string='Email templates')
+ default_user_id = fields.Many2one("res.users", string="Default User")
+ default_description = fields.Html(string="Default Description", translate=True)
#Fields for display purpose only
initial_res_model_id = fields.Many2one('ir.model', 'Initial model', compute="_compute_initial_res_model_id", store=False,
@@ -216,6 +218,8 @@ class MailActivity(models.Model):
if self.activity_type_id.delay_from == 'previous_activity' and 'activity_previous_deadline' in self.env.context:
base = fields.Date.from_string(self.env.context.get('activity_previous_deadline'))
self.date_deadline = base + relativedelta(**{self.activity_type_id.delay_unit: self.activity_type_id.delay_count})
+ self.user_id = self.activity_type_id.default_user_id or self.env.user
+ self.note = self.activity_type_id.default_description
@api.onchange('recommended_activity_type_id')
def _onchange_recommended_activity_type_id(self):
@@ -706,10 +710,11 @@ class MailActivityMixin(models.AbstractModel):
'activity_type_id': activity_type.id,
'summary': summary or activity_type.summary,
'automated': True,
- 'note': note,
+ 'note': note or activity_type.default_description,
'date_deadline': date_deadline,
'res_model_id': model_id,
'res_id': record.id,
+ 'user_id': act_values.get('user_id') or activity_type.default_user_id.id or self.env.uid
}
create_vals.update(act_values)
activities |= self.env['mail.activity'].create(create_vals)
diff --git a/addons/mail/views/mail_activity_views.xml b/addons/mail/views/mail_activity_views.xml
index 32b5e6edf68..e5fcf98dc4b 100644
--- a/addons/mail/views/mail_activity_views.xml
+++ b/addons/mail/views/mail_activity_views.xml
@@ -32,6 +32,7 @@
Modifying the model can have an impact on existing activities using this activity type, be careful.