diff --git a/src/api/conversationmodel.h b/src/api/conversationmodel.h index 98dd81072de69f15c61e1d1f07023aa32a52fe0a..9ac2b50c227507ff52b7c12a6c8b9829b7c57f93 100644 --- a/src/api/conversationmodel.h +++ b/src/api/conversationmodel.h @@ -385,6 +385,12 @@ public: * @return the description to display */ QString description(const QString& conversationId) const; + /** + * Get conversation's avatar. + * @param conversationId + * @return the avatar to display + */ + QString avatar(const QString& conversationId) const; /** * Get member's role in conversation diff --git a/src/conversationmodel.cpp b/src/conversationmodel.cpp index 72048e0df8fd8f897d4a866aaaa4a5a5dde5abaf..88100f393b0a59baf46a3491dee7c3d067e7abb7 100644 --- a/src/conversationmodel.cpp +++ b/src/conversationmodel.cpp @@ -1081,6 +1081,17 @@ ConversationModel::description(const QString& conversationId) const return conversation.infos["description"]; } +QString +ConversationModel::avatar(const QString& conversationId) const +{ + auto conversationOpt = getConversationForUid(conversationId); + if (!conversationOpt.has_value()) { + return {}; + } + auto& conversation = conversationOpt->get(); + return conversation.infos["avatar"]; +} + void ConversationModel::sendMessage(const QString& uid, const QString& body, const QString& parentId) { @@ -2228,7 +2239,7 @@ ConversationModelPimpl::slotConversationLoaded(uint32_t requestId, try { auto& conversation = getConversationForUid(conversationId).get(); - for (const auto& message: messages) { + for (const auto& message : messages) { if (message["type"].isEmpty() || message["type"] == "application/update-profile") { continue; }