diff --git a/addons/project/data/mail_message_subtype_data.xml b/addons/project/data/mail_message_subtype_data.xml
index 82042b64723..9ba57898e96 100644
--- a/addons/project/data/mail_message_subtype_data.xml
+++ b/addons/project/data/mail_message_subtype_data.xml
@@ -70,6 +70,7 @@
project.task
+
@@ -107,9 +108,10 @@
Task Rating
27
project.project
-
+
project_id
+
Task Dependency Changes
diff --git a/addons/project/models/project_project.py b/addons/project/models/project_project.py
index 4d33a15f566..55f5e28d628 100644
--- a/addons/project/models/project_project.py
+++ b/addons/project/models/project_project.py
@@ -538,6 +538,8 @@ class Project(models.Model):
def _mail_get_message_subtypes(self):
res = super()._mail_get_message_subtypes()
+ if not self.rating_active:
+ res -= self.env.ref('project.mt_project_task_rating')
if len(self) == 1:
dependency_subtype = self.env.ref('project.mt_project_task_dependency_change')
waiting_subtype = self.env.ref('project.mt_project_task_waiting')
diff --git a/addons/project/models/project_task.py b/addons/project/models/project_task.py
index ac5c0c41132..b0e547fdd93 100644
--- a/addons/project/models/project_task.py
+++ b/addons/project/models/project_task.py
@@ -1246,6 +1246,8 @@ class Task(models.Model):
def _mail_get_message_subtypes(self):
res = super()._mail_get_message_subtypes()
+ if not self.project_id.rating_active:
+ res -= self.env.ref('project.mt_task_rating')
if len(self) == 1:
dependency_subtype = self.env.ref('project.mt_task_dependency_change')
waiting_subtype = self.env.ref('project.mt_task_waiting')
diff --git a/addons/project/models/res_config_settings.py b/addons/project/models/res_config_settings.py
index 7255f196fe9..0104a1fc762 100644
--- a/addons/project/models/res_config_settings.py
+++ b/addons/project/models/res_config_settings.py
@@ -65,6 +65,10 @@ class ResConfigSettings(models.TransientModel):
if project_stage_change_mail_type.hidden == self['group_project_stages']:
project_stage_change_mail_type.hidden = not self['group_project_stages']
# Hide task rating tempalate when customer rating is disbled
+ task_rating_subtype_id = self.env.ref('project.mt_project_task_rating')
+ task_rating_subtype_id.hidden = not self['group_project_rating']
+ self.env.ref('project.mt_task_rating').hidden = not self['group_project_rating']
+ task_rating_subtype_id.default = self['group_project_rating']
rating_project_request_email_template = self.env.ref('project.rating_project_request_email_template')
if rating_project_request_email_template.active != self['group_project_rating']:
rating_project_request_email_template.active = self['group_project_rating']