From 80d9a6f5045af12d6cbb3fbaf6f5fa8e1318ca83 Mon Sep 17 00:00:00 2001 From: Achilles Rasquinha Date: Wed, 28 Mar 2018 13:18:55 +0530 Subject: [PATCH] fix chat render for contacts --- frappe/public/js/frappe/chat.js | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/frappe/public/js/frappe/chat.js b/frappe/public/js/frappe/chat.js index 8a06295955..63d2d66a98 100644 --- a/frappe/public/js/frappe/chat.js +++ b/frappe/public/js/frappe/chat.js @@ -1547,10 +1547,19 @@ class extends Component { var contacts = [ ] if ( 'user_info' in frappe.boot ) { const emails = frappe.user.get_emails() - for (const room of state.rooms) - if ( room.type === 'Direct' ) - if ( !emails.includes(room.owner) || !emails.includes(frappe._.squash(room.users)) ) - contacts.append({ owner: frappe.session.user, users: [email] }) // placeholder. + for (const email of emails) { + var exists = false + + for (const room of state.rooms) { + if ( room.type === 'Direct' ) { + if ( room.owner === email || frappe._.squash(room.users) === email ) + exists = true + } + } + + if ( !exists ) + contacts.push({ owner: frappe.session.user, users: [email] }) + } } const rooms = state.query ? frappe.chat.room.search(state.query, state.rooms.concat(contacts)) : frappe.chat.room.sort(state.rooms)