From 441d3a857fb85cc2cb10f6785496a7466fef1bfe Mon Sep 17 00:00:00 2001 From: prssanna Date: Thu, 30 Jul 2020 13:50:48 +0530 Subject: [PATCH] feat: pass icon and action to avatar_group --- frappe/public/js/frappe/utils/common.js | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/frappe/public/js/frappe/utils/common.js b/frappe/public/js/frappe/utils/common.js index 766a942393..cb8e71ef72 100644 --- a/frappe/public/js/frappe/utils/common.js +++ b/frappe/public/js/frappe/utils/common.js @@ -1,6 +1,6 @@ // common file between desk and website -frappe.avatar = function (user, css_class, title, image_url = null) { +frappe.avatar = function (user, css_class, title, image_url=null, remove_avatar=false) { let user_info; if (user) { // desk @@ -47,12 +47,14 @@ frappe.avatar = function (user, css_class, title, image_url = null) { } }; -frappe.avatar_group = function(users, limit=4, css_class="avatar avatar-small", align='right') { +frappe.avatar_group = function(users, limit=4, css_class='avatar avatar-small', align='right', icon, action) { let extra_count = users.length - limit; - let html = users.slice(0, limit).map((user) => frappe.avatar(user, css_class)).join(''); + let icon_html = ''; + let html = users.slice(0, limit).map(user => frappe.avatar(user, css_class)).join(''); + if (extra_count > 0) { html = ` - +
+${extra_count}
@@ -60,7 +62,17 @@ frappe.avatar_group = function(users, limit=4, css_class="avatar avatar-small", ${html} `; } - return `
${html}
`; + + if (icon) icon_html = `${frappe.utils.icon(icon)}`; + + const $avatar_group = + $(`
+ ${icon_html} + ${html} +
`); + + $avatar_group.find('.add-avatar').on('click', action); + return $avatar_group; }; frappe.ui.scroll = function(element, animate, additional_offset) {