From 69250d0ae82886df8a79d96b10da4e66e015d7be Mon Sep 17 00:00:00 2001 From: Maxime Quandalle Date: Sun, 6 Sep 2015 03:10:55 +0200 Subject: Show avatars in search results Fixes #265 --- client/components/sidebar/sidebar.jade | 2 +- client/components/users/userAvatar.js | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'client/components') diff --git a/client/components/sidebar/sidebar.jade b/client/components/sidebar/sidebar.jade index 7e9cde80..caa698ab 100644 --- a/client/components/sidebar/sidebar.jade +++ b/client/components/sidebar/sidebar.jade @@ -87,7 +87,7 @@ template(name="addMemberPopup") +esEach(index="users") li.item.js-member-item(class="{{#if isBoardMember}}disabled{{/if}}") a.name.js-select-member(title="{{profile.name}} ({{username}})") - +userAvatar(userId=_id) + +userAvatar(userId=_id esSearch=true) span.full-name = profile.name | ({{username}}) diff --git a/client/components/users/userAvatar.js b/client/components/users/userAvatar.js index 2b9ac84b..04add0a6 100644 --- a/client/components/users/userAvatar.js +++ b/client/components/users/userAvatar.js @@ -2,7 +2,13 @@ Meteor.subscribe('my-avatars'); Template.userAvatar.helpers({ userData() { - return Users.findOne(this.userId, { + // We need to handle a special case for the search results provided by the + // `matteodem:easy-search` package. Since these results gets published in a + // separate collection, and not in the standard Meteor.Users collection as + // expected, we use a component parameter ("property") to distinguish the + // two cases. + const userCollection = this.esSearch ? ESSearchResults : Users; + return userCollection.findOne(this.userId, { fields: { profile: 1, username: 1, -- cgit v1.2.3-1-g7c22