diff --git a/src/components/structures/GroupView.js b/src/components/structures/GroupView.js index 6a30c1ce41..41e58851ff 100644 --- a/src/components/structures/GroupView.js +++ b/src/components/structures/GroupView.js @@ -597,9 +597,7 @@ export default React.createClass({ this.setState({ publicityBusy: true, }); - MatrixClientPeg.get().setGroupPublicity(this.props.groupId, publicity).then(() => { - this._loadGroupFromServer(this.props.groupId); - }).then(() => { + this._groupSummaryStore.setGroupPublicity(publicity).then(() => { this.setState({ publicityBusy: false, }); @@ -730,16 +728,16 @@ export default React.createClass({ } let publicisedSection; - if (this.state.summary.user && this.state.summary.user.is_public) { + if (this.state.summary.user && this.state.summary.user.is_publicised) { if (!this.state.publicityBusy) { publicisedButton = - {_t("Make private")} + {_t("Unpublish")} ; } publicisedSection =
- {_t("Your membership of this group is public")} + {_t("This group is published on your profile")}
{publicisedButton}
@@ -749,11 +747,11 @@ export default React.createClass({ publicisedButton = - {_t("Make public")} + {_t("Publish")} ; } publicisedSection =
- {_t("Your membership of this group is private")} + {_t("This group is not published on your profile")}
{publicisedButton}
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index 9dd479c789..8584f2eb2f 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -883,8 +883,8 @@ "The user '%(displayName)s' could not be removed from the summary.": "The user '%(displayName)s' could not be removed from the summary.", "Failed to add the following rooms to the summary of %(groupId)s:": "Failed to add the following rooms to the summary of %(groupId)s:", "The room '%(roomName)s' could not be removed from the summary.": "The room '%(roomName)s' could not be removed from the summary.", - "Your membership of this group is public": "Your membership of this group is public", - "Your membership of this group is private": "Your membership of this group is private", - "Make private": "Make private", - "Make public": "Make public" + "Unpublish": "Unpublish", + "This group is published on your profile": "This group is published on your profile", + "Publish": "Publish", + "This group is not published on your profile": "This group is not published on your profile" } diff --git a/src/stores/GroupSummaryStore.js b/src/stores/GroupSummaryStore.js index 170a1ec11e..aa6e74529b 100644 --- a/src/stores/GroupSummaryStore.js +++ b/src/stores/GroupSummaryStore.js @@ -68,4 +68,10 @@ export default class GroupSummaryStore extends EventEmitter { .removeUserFromGroupSummary(this._groupId, userId) .then(this._fetchSummary.bind(this)); } + + setGroupPublicity(isPublished) { + return this._matrixClient + .setGroupPublicity(this._groupId, isPublished) + .then(this._fetchSummary.bind(this)); + } }