summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/fields
diff options
context:
space:
mode:
authorJigar Patel <jat@openerp.com>2019-03-14 08:36:38 +0000
committerJigar Patel <jat@openerp.com>2019-08-07 12:30:55 +0000
commit56cf4f81258ed9c0b2efb67a11bfac055ec6f593 (patch)
treed5642eebbad3aa0479aa8c4c925cd61a271c8a5b /addons/web/static/src/js/fields
parentf4194d53aad6553917c34ee57f98b4a64c3a5655 (diff)
[IMP] web: add new many2many_tags_avatar field widget to show avatar with tags
Diffstat (limited to 'addons/web/static/src/js/fields')
-rw-r--r--addons/web/static/src/js/fields/field_registry.js1
-rw-r--r--addons/web/static/src/js/fields/relational_fields.js21
2 files changed, 22 insertions, 0 deletions
diff --git a/addons/web/static/src/js/fields/field_registry.js b/addons/web/static/src/js/fields/field_registry.js
index 1de315eda30..942e6fc094a 100644
--- a/addons/web/static/src/js/fields/field_registry.js
+++ b/addons/web/static/src/js/fields/field_registry.js
@@ -74,6 +74,7 @@ registry
.add('many2many', relational_fields.FieldMany2Many)
.add('many2many_binary', relational_fields.FieldMany2ManyBinaryMultiFiles)
.add('many2many_tags', relational_fields.FieldMany2ManyTags)
+ .add('many2many_tags_avatar', relational_fields.FieldMany2ManyTagsAvatar)
.add('form.many2many_tags', relational_fields.FormFieldMany2ManyTags)
.add('kanban.many2many_tags', relational_fields.KanbanFieldMany2ManyTags)
.add('many2many_checkboxes', relational_fields.FieldMany2ManyCheckBoxes)
diff --git a/addons/web/static/src/js/fields/relational_fields.js b/addons/web/static/src/js/fields/relational_fields.js
index fed94598046..d486838d3f5 100644
--- a/addons/web/static/src/js/fields/relational_fields.js
+++ b/addons/web/static/src/js/fields/relational_fields.js
@@ -2209,6 +2209,26 @@ var FieldMany2ManyTags = AbstractField.extend({
},
});
+var FieldMany2ManyTagsAvatar = FieldMany2ManyTags.extend({
+ tag_template: 'FieldMany2ManyTagAvatar',
+ className: 'o_field_many2manytags avatar',
+
+ //--------------------------------------------------------------------------
+ // Private
+ //--------------------------------------------------------------------------
+
+ /**
+ * @override
+ * @private
+ */
+ _getRenderTagsContext: function () {
+ var result = this._super.apply(this, arguments);
+ result.avatarModel = this.nodeOptions.avatarModel || this.field.relation;
+ result.avatarField = this.nodeOptions.avatarField || 'image';
+ return result;
+ },
+});
+
var FormFieldMany2ManyTags = FieldMany2ManyTags.extend({
events: _.extend({}, FieldMany2ManyTags.prototype.events, {
'click .dropdown-toggle': '_onOpenColorPicker',
@@ -2972,6 +2992,7 @@ return {
FieldMany2ManyBinaryMultiFiles: FieldMany2ManyBinaryMultiFiles,
FieldMany2ManyCheckBoxes: FieldMany2ManyCheckBoxes,
FieldMany2ManyTags: FieldMany2ManyTags,
+ FieldMany2ManyTagsAvatar: FieldMany2ManyTagsAvatar,
FormFieldMany2ManyTags: FormFieldMany2ManyTags,
KanbanFieldMany2ManyTags: KanbanFieldMany2ManyTags,