diff --git a/src/stores/FlairStore.js b/src/stores/FlairStore.js index f9d9af75a9..1ac518a4f6 100644 --- a/src/stores/FlairStore.js +++ b/src/stores/FlairStore.js @@ -56,6 +56,10 @@ class FlairStore extends EventEmitter { return groupSupport; } + invalidatePublicisedGroups(userId) { + delete this._userGroups[userId]; + } + getPublicisedGroupsCached(matrixClient, userId) { if (this._userGroups[userId]) { return Promise.resolve(this._userGroups[userId]); diff --git a/src/stores/GroupStore.js b/src/stores/GroupStore.js index a2ea35d2ab..1da1c35a2b 100644 --- a/src/stores/GroupStore.js +++ b/src/stores/GroupStore.js @@ -16,6 +16,7 @@ limitations under the License. import EventEmitter from 'events'; import { groupMemberFromApiObject, groupRoomFromApiObject } from '../groups'; +import FlairStore from './FlairStore'; /** * Stores the group summary for a room and provides an API to change it and @@ -149,6 +150,7 @@ export default class GroupStore extends EventEmitter { setGroupPublicity(isPublished) { return this._matrixClient .setGroupPublicity(this.groupId, isPublished) + .then(() => { FlairStore.invalidatePublicisedGroups(this._matrixClient.credentials.userId); }) .then(this._fetchSummary.bind(this)); } }