From 8eb7ebf288f015f34cacb55c389d68dccca3a231 Mon Sep 17 00:00:00 2001 From: Kamil Kisiela Date: Mon, 10 Oct 2016 20:48:13 +0200 Subject: [PATCH] Step 6.12: Add title and picture to chat --- client/imports/pages/chats/chats.component.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/client/imports/pages/chats/chats.component.ts b/client/imports/pages/chats/chats.component.ts index 5590eb6..7b152be 100644 --- a/client/imports/pages/chats/chats.component.ts +++ b/client/imports/pages/chats/chats.component.ts @@ -1,6 +1,7 @@ import {Component, OnInit} from "@angular/core"; import template from "./chats.component.html" import {Observable} from "rxjs"; +import {Meteor} from 'meteor/meteor'; import {Chat} from "../../../../both/models/chat.model"; import * as moment from "moment"; import style from "./chats.component.scss"; @@ -21,6 +22,7 @@ import {NewChatComponent} from './new-chat.component'; }) export class ChatsComponent implements OnInit { chats: Observable; + senderId: string; constructor( private navCtrl: NavController, @@ -29,6 +31,7 @@ export class ChatsComponent implements OnInit { ) {} ngOnInit() { + this.senderId = Meteor.userId(); this.chats = Chats .find({}) .mergeMap(chats => @@ -44,7 +47,16 @@ export class ChatsComponent implements OnInit { ) ) - ).zone(); + ).map(chats => { + chats.forEach(chat => { + const receiver = Meteor.users.findOne(chat.memberIds.find(memberId => memberId !== this.senderId)) + + chat.title = receiver.profile.name; + chat.picture = receiver.profile.picture; + }); + + return chats; + }).zone(); } addChat(): void {