diff --git a/addons/hr_holidays/hr_holidays.py b/addons/hr_holidays/hr_holidays.py
index 4136abbb2f7..4e85313e2e4 100644
--- a/addons/hr_holidays/hr_holidays.py
+++ b/addons/hr_holidays/hr_holidays.py
@@ -364,7 +364,7 @@ class hr_holidays(osv.osv):
def create_notificate(self, cr, uid, ids, context=None):
for obj in self.browse(cr, uid, ids, context=context):
self.message_post(cr, uid, ids,
- _("The request has been created and is waiting confirmation."),subtype="new", context=context)
+ _("The request has been created and is waiting confirmation."),subtype_xml_id="hr_holidays_subtype_new", context=context)
return True
def holidays_confirm_notificate(self, cr, uid, ids, context=None):
@@ -384,12 +384,12 @@ class hr_holidays(osv.osv):
_("The request has been double validated. The validation process is now over."), context=context)
else:
self.message_post(cr, uid, [obj.id],
- _("The request has been approved. The validation process is now over."), subtype="approved", context=context)
+ _("The request has been approved. The validation process is now over."), subtype_xml_id="hr_holidays_subtype_approved", context=context)
def holidays_refuse_notificate(self, cr, uid, ids, context=None):
for obj in self.browse(cr, uid, ids):
self.message_post(cr, uid, [obj.id],
- _("The request has been refused. The validation process is now over."), subtype="refused", context=context)
+ _("The request has been refused. The validation process is now over."), subtype_xml_id="hr_holidays_subtype_refused", context=context)
class resource_calendar_leaves(osv.osv):
diff --git a/addons/hr_holidays/hr_holidays_data.xml b/addons/hr_holidays/hr_holidays_data.xml
index ad337b72c62..8ddfb79a527 100644
--- a/addons/hr_holidays/hr_holidays_data.xml
+++ b/addons/hr_holidays/hr_holidays_data.xml
@@ -50,28 +50,19 @@ Once validated, they are visible in the employee's calendar. HR officers can def
brown
-
+
new
-
+ hr.holidays
-
+
approved
-
+ hr.holidays
-
+
refused
-
+ hr.holidays
-
-
-
-
-
-
-
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index 25be4f3c3f1..6d38c4e4e08 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -461,14 +461,14 @@ class hr_applicant(base_stage, osv.Model):
""" Override of the (void) default notification method. """
if not stage_id: return True
stage_name = self.pool.get('hr.recruitment.stage').name_get(cr, uid, [stage_id], context=context)[0][1]
- return self.message_post(cr, uid, ids, body= _("Stage changed to %s.") % (stage_name), subtype="stage change", context=context)
+ return self.message_post(cr, uid, ids, body= _("Stage changed to %s.") % (stage_name), subtype_xml_id="hr_recruitment_subtype_stage_change", context=context)
def case_get_note_msg_prefix(self, cr, uid, id, context=None):
return 'Applicant'
def case_open_send_note(self, cr, uid, ids, context=None):
message = _("Applicant has been set in progress.")
- return self.message_post(cr, uid, ids, body=message, subtype="in progress", context=context)
+ return self.message_post(cr, uid, ids, body=message, subtype_xml_id="hr_recruitment_subtype_in_progress", context=context)
def case_close_send_note(self, cr, uid, ids, context=None):
if context is None:
@@ -476,23 +476,23 @@ class hr_applicant(base_stage, osv.Model):
for applicant in self.browse(cr, uid, ids, context=context):
if applicant.emp_id:
message = _("Applicant has been hired and created as an employee.")
- self.message_post(cr, uid, [applicant.id], body=message, subtype="hired", context=context)
+ self.message_post(cr, uid, [applicant.id], body=message, subtype_xml_id="hr_recruitment_subtype_hired", context=context)
else:
message = _("Applicant has been hired.")
- self.message_post(cr, uid, [applicant.id], body=message, subtype="hired", context=context)
+ self.message_post(cr, uid, [applicant.id], body=message, subtype_xml_id="hr_recruitment_subtype_hired", context=context)
return True
def case_cancel_send_note(self, cr, uid, ids, context=None):
msg = 'Applicant refused.'
- return self.message_post(cr, uid, ids, body=msg, subtype="refused", context=context)
+ return self.message_post(cr, uid, ids, body=msg, subtype_xml_id="hr_recruitment_subtype_refused", context=context)
def case_reset_send_note(self, cr, uid, ids, context=None):
message =_("Applicant has been set as new.")
- return self.message_post(cr, uid, ids, body=message, subtype="new", context=context)
+ return self.message_post(cr, uid, ids, body=message, subtype_xml_id="hr_recruitment_subtype_new", context=context)
def create_send_note(self, cr, uid, ids, context=None):
message = _("Applicant has been created.")
- return self.message_post(cr, uid, ids, body=message, subtype="new", context=context)
+ return self.message_post(cr, uid, ids, body=message, subtype_xml_id="hr_recruitment_subtype_new", context=context)
class hr_job(osv.osv):
diff --git a/addons/hr_recruitment/hr_recruitment_data.xml b/addons/hr_recruitment/hr_recruitment_data.xml
index 30ff9118584..dedeb20a3dc 100644
--- a/addons/hr_recruitment/hr_recruitment_data.xml
+++ b/addons/hr_recruitment/hr_recruitment_data.xml
@@ -462,38 +462,29 @@ You can automatically receive job application though an email gateway, see the H
-
+
new
-
+ hr.applicant
-
+
hired
-
+ hr.applicant
-
+
refused
-
+ hr.applicant
-
+
stage change
-
+ hr.applicant
-
+
in progress
-
+ hr.applicant
-
-
-
-
-
-
-
diff --git a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py
index 4ed61119a5f..e3f54609e95 100644
--- a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py
+++ b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py
@@ -95,25 +95,25 @@ class account_analytic_account(osv.osv):
def set_close(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'close'}, context=context)
message = _("Contract has been closed.")
- self.message_post(cr, uid, ids, body=message, subtype="closed", context=context)
+ self.message_post(cr, uid, ids, body=message, subtype_xml_id="analytic_account_subtype_closed", context=context)
return True
def set_cancel(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'cancelled'}, context=context)
message = _("Contract has been cancelled.")
- self.message_post(cr, uid, ids, body=message, subtype="cancelled", context=context)
+ self.message_post(cr, uid, ids, body=message, subtype_xml_id="analytic_account_invoice_subtype_cancelled", context=context)
return True
def set_open(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'open'}, context=context)
message = _("Contract has been opened.")
- self.message_post(cr, uid, ids, body=message, subtype="open", context=context)
+ self.message_post(cr, uid, ids, body=message, subtype_xml_id="analytic_account_subtype_open", context=context)
return True
def set_pending(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'pending'}, context=context)
message = _("Contract has been set as pending.")
- self.message_post(cr, uid, ids, body=message, subtype="pending", context=context)
+ self.message_post(cr, uid, ids, body=message, subtype_xml_id="analytic_account_subtype_pending", context=context)
return True
account_analytic_account()
diff --git a/addons/hr_timesheet_invoice/hr_timesheet_invoice_data.xml b/addons/hr_timesheet_invoice/hr_timesheet_invoice_data.xml
index 5cc5024d591..29a3233f509 100644
--- a/addons/hr_timesheet_invoice/hr_timesheet_invoice_data.xml
+++ b/addons/hr_timesheet_invoice/hr_timesheet_invoice_data.xml
@@ -17,32 +17,23 @@
50.0
-
+
closed
-
+ account.analytic.account
-
+
pending
-
+ account.analytic.account
-
+
open
-
+ account.analytic.account
-
+
cancelled
-
+ account.analytic.account
-
-
-
-
-
-
-