diff options
Diffstat (limited to 'addons/mail/static/src')
| -rw-r--r-- | addons/mail/static/src/js/many2many_tags_email.js | 41 | ||||
| -rw-r--r-- | addons/mail/static/src/xml/composer.xml | 5 |
2 files changed, 11 insertions, 35 deletions
diff --git a/addons/mail/static/src/js/many2many_tags_email.js b/addons/mail/static/src/js/many2many_tags_email.js index 7e1fb260a0c..a16a424fe92 100644 --- a/addons/mail/static/src/js/many2many_tags_email.js +++ b/addons/mail/static/src/js/many2many_tags_email.js @@ -21,9 +21,9 @@ BasicModel.include({ * @param {Object} record - an element from the localData * @param {string} fieldName * @return {Deferred<Object>} the deferred is resolved with the - * invalidPartnerIds and partnerNames + * invalidPartnerIds */ - _fetchSpecialMany2ManyTagsEmail: function (record, fieldName) { + _setInvalidMany2ManyTagsEmail: function (record, fieldName) { var self = this; var localID = (record._changes && fieldName in record._changes) ? record._changes[fieldName] : @@ -43,30 +43,19 @@ BasicModel.include({ def = this._applyX2ManyChange(record, fieldName, changes); } return $.when(def).then(function () { - list = self._applyX2ManyOperations(self.localData[localID]); - if (list.res_ids.length) { - def = self._rpc({ - model: list.model, - method: 'name_get', - args: [list.res_ids], - context: record.getContext({fieldName: fieldName}), - }); - } - return $.when(def).then(function (names) { - return $.when({ - invalidPartnerIds: _.pluck(invalidPartnerIds, 'res_id'), - partnerNames: _.object(names), - }); + return $.when({ + invalidPartnerIds: _.pluck(invalidPartnerIds, 'res_id'), }); }); }, }); var FieldMany2ManyTagsEmail = M2MTags.extend({ + tag_template: "FieldMany2ManyTagsEmail", fieldsToFetch: _.extend({}, M2MTags.prototype.fieldsToFetch, { email: {type: 'char'}, }), - specialData: "_fetchSpecialMany2ManyTagsEmail", + specialData: "_setInvalidMany2ManyTagsEmail", //-------------------------------------------------------------------------- // Private @@ -139,24 +128,6 @@ var FieldMany2ManyTagsEmail = M2MTags.extend({ return _super.apply(self, arguments); }); }, - - /** - * Override for res.partner - * name_get is dynamic (based on context) while display_name is static - * (stored) - * - * @override - * @private - */ - _getRenderTagsContext: function () { - var result = this._super.apply(this, arguments); - var partnerNames = this.record.specialData[this.name].partnerNames; - _.each(result.elements, function (partner) { - partner.display_name = partnerNames[partner.id]; - }); - return result; - }, - }); field_registry.add('many2many_tags_email', FieldMany2ManyTagsEmail); diff --git a/addons/mail/static/src/xml/composer.xml b/addons/mail/static/src/xml/composer.xml index 2795a0bb724..07ec2063215 100644 --- a/addons/mail/static/src/xml/composer.xml +++ b/addons/mail/static/src/xml/composer.xml @@ -76,4 +76,9 @@ </t> </t> + <t t-name="FieldMany2ManyTagsEmail" t-extend="FieldMany2ManyTag"> + <t t-jquery=".o_badge_text" t-operation="replace"> + <span class="o_badge_text" t-attf-title="#{el.email}"><t t-esc="el.display_name"/></span> + </t> + </t> </templates> |
