diff --git a/addons/account/models/account_analytic_line.py b/addons/account/models/account_analytic_line.py index 35737d8ab75..80e35b8080b 100644 --- a/addons/account/models/account_analytic_line.py +++ b/addons/account/models/account_analytic_line.py @@ -85,9 +85,9 @@ class AccountAnalyticLine(models.Model): @api.model def view_header_get(self, view_id, view_type): - context = (self._context or {}) - header = False - if context.get('account_id', False): - analytic_account = self.env['account.analytic.account'].search([('id', '=', context['account_id'])], limit=1) - header = _('Entries: ') + (analytic_account.name or '') - return header + if self.env.context.get('account_id'): + return _( + "Entries: %(account)s", + account=self.env['account.analytic.account'].browse(self.env.context['account_id']).name + ) + return super().view_header_get(view_id, view_type) diff --git a/addons/account/models/account_journal_dashboard.py b/addons/account/models/account_journal_dashboard.py index 8be1af1dcd6..55070e0a257 100644 --- a/addons/account/models/account_journal_dashboard.py +++ b/addons/account/models/account_journal_dashboard.py @@ -524,7 +524,11 @@ class account_journal(models.Model): action['context'] = ctx if ctx.get('use_domain', False): action['domain'] = isinstance(ctx['use_domain'], list) and ctx['use_domain'] or ['|', ('journal_id', '=', self.id), ('journal_id', '=', False)] - action['name'] += ' for journal ' + self.name + action['name'] = _( + "%(action)s for journal %(journal)s", + action=action["name"], + journal=self.name, + ) return action def create_bank_statement(self): diff --git a/addons/account/models/account_move.py b/addons/account/models/account_move.py index 945608d9c1c..630e29e4427 100644 --- a/addons/account/models/account_move.py +++ b/addons/account/models/account_move.py @@ -1295,9 +1295,9 @@ class AccountMove(models.Model): vendor_display_name = move.partner_id.display_name if not vendor_display_name: if move.invoice_source_email: - vendor_display_name = _('@From: ') + move.invoice_source_email + vendor_display_name = _('@From: %(email)s', email=move.invoice_source_email) else: - vendor_display_name = _('#Created by: %s') % (move.sudo().create_uid.name or self.env.user.name) + vendor_display_name = _('#Created by: %s', move.sudo().create_uid.name or self.env.user.name) move.invoice_partner_display_name = vendor_display_name def _compute_payments_widget_to_reconcile_info(self): diff --git a/addons/event/models/event_registration.py b/addons/event/models/event_registration.py index d8dc794b6e4..3f977b3df5d 100644 --- a/addons/event/models/event_registration.py +++ b/addons/event/models/event_registration.py @@ -265,7 +265,7 @@ class EventRegistration(models.Model): elif event_date.month == (today + relativedelta(months=+1)).month: return _('next month') else: - return _('on ') + format_datetime(self.env, self.event_begin_date, tz=self.event_id.date_tz, dt_format='medium') + return _('on %(date)s', date=format_datetime(self.env, self.event_begin_date, tz=self.event_id.date_tz, dt_format='medium')) def _get_registration_summary(self): self.ensure_one() diff --git a/addons/l10n_it_edi/models/account_edi_format.py b/addons/l10n_it_edi/models/account_edi_format.py index c64fcd8f234..e24f3efa2b6 100644 --- a/addons/l10n_it_edi/models/account_edi_format.py +++ b/addons/l10n_it_edi/models/account_edi_format.py @@ -375,9 +375,9 @@ class AccountEdiFormat(models.Model): discount["seq"] = invoice_line_form.sequence + 1 if total_discount_amount < 0: - discount["name"] = _('DISCOUNT: ') + invoice_line_form.name + discount["name"] = _('DISCOUNT: %s', invoice_line_form.name) else: - discount["name"] = _('EXTRA CHARGE: ') + invoice_line_form.name + discount["name"] = _('EXTRA CHARGE: %s', invoice_line_form.name) discount["amount"] = total_discount_amount discount["tax"] = [] for tax in invoice_line_form.tax_ids: diff --git a/addons/mrp/models/mrp_workorder.py b/addons/mrp/models/mrp_workorder.py index ca809e3a1e9..cd7caba0420 100644 --- a/addons/mrp/models/mrp_workorder.py +++ b/addons/mrp/models/mrp_workorder.py @@ -501,7 +501,7 @@ class MrpWorkorder(models.Model): timeline.create({ 'workorder_id': self.id, 'workcenter_id': self.workcenter_id.id, - 'description': _('Time Tracking: ') + self.env.user.name, + 'description': _('Time Tracking: %(user)s', user=self.env.user.name), 'loss_id': loss_id[0].id, 'date_start': datetime.now(), 'user_id': self.env.user.id, # FIXME sle: can be inconsistent with company_id diff --git a/addons/point_of_sale/models/pos_config.py b/addons/point_of_sale/models/pos_config.py index 28e10b047fc..f7f1a593826 100644 --- a/addons/point_of_sale/models/pos_config.py +++ b/addons/point_of_sale/models/pos_config.py @@ -461,9 +461,9 @@ class PosConfig(models.Model): for config in self: last_session = self.env['pos.session'].search([('config_id', '=', config.id)], limit=1) if (not last_session) or (last_session.state == 'closed'): - result.append((config.id, config.name + ' (' + _('not used') + ')')) - continue - result.append((config.id, config.name + ' (' + last_session.user_id.name + ')')) + result.append((config.id, _("%(pos_name)s (not used)", pos_name=config.name))) + else: + result.append((config.id, "%s (%s)" % (config.name, last_session.user_id.name))) return result @api.model diff --git a/addons/point_of_sale/models/pos_session.py b/addons/point_of_sale/models/pos_session.py index f1fb4d0bdc7..3c250bed51f 100644 --- a/addons/point_of_sale/models/pos_session.py +++ b/addons/point_of_sale/models/pos_session.py @@ -1025,9 +1025,14 @@ class PosSession(models.Model): sessions = self.search([('start_at', '<=', (fields.datetime.now() - timedelta(days=7))), ('state', '!=', 'closed')]) for session in sessions: if self.env['mail.activity'].search_count([('res_id', '=', session.id), ('res_model', '=', 'pos.session')]) == 0: - session.activity_schedule('point_of_sale.mail_activity_old_session', - user_id=session.user_id.id, note=_("Your PoS Session is open since ") + fields.Date.to_string(session.start_at) - + _(", we advise you to close it and to create a new one.")) + session.activity_schedule( + 'point_of_sale.mail_activity_old_session', + user_id=session.user_id.id, + note=_( + "Your PoS Session is open since %(date)s, we advise you to close it and to create a new one.", + date=session.start_at, + ) + ) def _warning_balance_closing(self): self.ensure_one() diff --git a/addons/product/models/product.py b/addons/product/models/product.py index 3661ee7fe97..c11fa3aac44 100644 --- a/addons/product/models/product.py +++ b/addons/product/models/product.py @@ -548,10 +548,12 @@ class ProductProduct(models.Model): @api.model def view_header_get(self, view_id, view_type): - res = super(ProductProduct, self).view_header_get(view_id, view_type) if self._context.get('categ_id'): - return _('Products: ') + self.env['product.category'].browse(self._context['categ_id']).name - return res + return _( + 'Products: %(category)s', + category=self.env['product.category'].browse(self.env.context['categ_id']).name, + ) + return super().view_header_get(view_id, view_type) def open_pricelist_rules(self): self.ensure_one() diff --git a/addons/sale/models/sale.py b/addons/sale/models/sale.py index 3c9dfc41017..2815aa92761 100644 --- a/addons/sale/models/sale.py +++ b/addons/sale/models/sale.py @@ -1229,12 +1229,15 @@ class SaleOrderLine(models.Model): order_lines = self.filtered(lambda x: x.order_id == order) msg = "" + _("The ordered quantity has been updated.") + "