summaryrefslogtreecommitdiff
path: root/addons/mail/static/src
diff options
context:
space:
mode:
Diffstat (limited to 'addons/mail/static/src')
-rw-r--r--addons/mail/static/src/js/many2many_tags_email.js41
-rw-r--r--addons/mail/static/src/xml/composer.xml5
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>