From 67e719061135b6b236eb1fc654da0fd2bac5aa0f Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 28 Apr 2021 12:02:32 +0000 Subject: [PATCH] [IMP] *: convert dialog title to t-out Need to check and mark legit uses of HTML as Markup. Also fix some title formattings which are not great (mostly around translations) and de-escape titles which don't need to be escaped anymore. --- .../discuss_invite_partner_dialog.js | 2 +- addons/payment/static/src/js/payment_form_mixin.js | 2 +- .../web/static/src/legacy/js/fields/relational_fields.js | 2 +- .../src/legacy/js/views/calendar/calendar_controller.js | 2 +- .../web/static/src/legacy/js/widgets/translation_dialog.js | 2 +- addons/web/static/src/legacy/xml/dialog.xml | 2 +- addons/website/static/src/js/menu/mobile_view.js | 7 +++---- 7 files changed, 9 insertions(+), 10 deletions(-) diff --git a/addons/mail/static/src/widgets/discuss_invite_partner_dialog/discuss_invite_partner_dialog.js b/addons/mail/static/src/widgets/discuss_invite_partner_dialog/discuss_invite_partner_dialog.js index 479bc7f583d..c2c5f5bc936 100644 --- a/addons/mail/static/src/widgets/discuss_invite_partner_dialog/discuss_invite_partner_dialog.js +++ b/addons/mail/static/src/widgets/discuss_invite_partner_dialog/discuss_invite_partner_dialog.js @@ -30,7 +30,7 @@ const PartnerInviteDialog = Dialog.extend({ this.channelId = channel.id; this.env = env; this._super(parent, { - title: _.str.sprintf(this.env._t("Invite people to #%s"), owl.utils.escape(channel.displayName)), + title: _.str.sprintf(this.env._t("Invite people to #%s"), channel.displayName), size: 'medium', buttons: [{ text: this.env._t("Invite"), diff --git a/addons/payment/static/src/js/payment_form_mixin.js b/addons/payment/static/src/js/payment_form_mixin.js index 49ab222914a..ecf699fdcff 100644 --- a/addons/payment/static/src/js/payment_form_mixin.js +++ b/addons/payment/static/src/js/payment_form_mixin.js @@ -75,7 +75,7 @@ odoo.define('payment.payment_form_mixin', require => { const $checkedRadios = this.$('input[name="o_payment_radio"]:checked'); if ($checkedRadios.length !== 1) { // Cannot find selected payment option, show dialog return new Dialog(null, { - title: _.str.sprintf(_t("Error: %s"), _.str.escapeHTML(title)), + title: _.str.sprintf(_t("Error: %s"), title), size: 'medium', $content: `

${_.str.escapeHTML(description) || ''}

`, buttons: [{text: _t("Ok"), close: true}] diff --git a/addons/web/static/src/legacy/js/fields/relational_fields.js b/addons/web/static/src/legacy/js/fields/relational_fields.js index 4c949da8c9b..0bdda5eedbe 100644 --- a/addons/web/static/src/legacy/js/fields/relational_fields.js +++ b/addons/web/static/src/legacy/js/fields/relational_fields.js @@ -410,7 +410,7 @@ var FieldMany2One = AbstractField.extend({ domain: this.record.getDomain({fieldName: this.name}), context: _.extend({}, this.record.getContext(this.recordParams), context || {}), dynamicFilters: dynamicFilters || [], - title: (view === 'search' ? _t("Search: ") : _t("Create: ")) + this.string, + title: _.str.sprintf((view === 'search' ? _t("Search: %s") : _t("Create: %s")), this.string), initial_ids: ids, initial_view: view, disable_multiple_selection: true, diff --git a/addons/web/static/src/legacy/js/views/calendar/calendar_controller.js b/addons/web/static/src/legacy/js/views/calendar/calendar_controller.js index c58e6ce97aa..2dc2f3ba9ae 100644 --- a/addons/web/static/src/legacy/js/views/calendar/calendar_controller.js +++ b/addons/web/static/src/legacy/js/views/calendar/calendar_controller.js @@ -411,7 +411,7 @@ var CalendarController = AbstractController.extend({ res_model: self.modelName, res_id: id || null, context: event.context || self.context, - title: _t("Open: ") + _.escape(event.data.title), + title: _.str.sprintf(_t("Open: %s"), event.data.title), on_saved: function () { if (event.data.on_save) { event.data.on_save(); diff --git a/addons/web/static/src/legacy/js/widgets/translation_dialog.js b/addons/web/static/src/legacy/js/widgets/translation_dialog.js index e407ff1da49..899b5d7079a 100644 --- a/addons/web/static/src/legacy/js/widgets/translation_dialog.js +++ b/addons/web/static/src/legacy/js/widgets/translation_dialog.js @@ -42,7 +42,7 @@ odoo.define('web.TranslationDialog', function (require) { this._super(parent, _.extend({ size: 'large', - title: _t('Translate: ') + `${this.fieldName}`, + title: _.str.sprintf(_t('Translate: %s'), this.fieldName), buttons: [ { text: _t('Save'), classes: 'btn-primary', close: true, click: this._onSave.bind(this) }, { text: _t('Discard'), close: true }, diff --git a/addons/web/static/src/legacy/xml/dialog.xml b/addons/web/static/src/legacy/xml/dialog.xml index 790f8251a6b..47870688782 100644 --- a/addons/web/static/src/legacy/xml/dialog.xml +++ b/addons/web/static/src/legacy/xml/dialog.xml @@ -14,7 +14,7 @@