diff --git a/src/components/post_status_form/post_status_form.js b/src/components/post_status_form/post_status_form.js index 52b69fd1..19504169 100644 --- a/src/components/post_status_form/post_status_form.js +++ b/src/components/post_status_form/post_status_form.js @@ -112,17 +112,11 @@ const PostStatusForm = { const preset = this.$route.query.message let statusText = preset || '' - const { scopeCopy } = this.$store.getters.mergedConfig - if (this.replyTo) { const currentUser = this.$store.state.users.currentUser statusText = buildMentionsString({ user: this.repliedUser, attentions: this.attentions }, currentUser) } - const scope = ((this.copyMessageScope && scopeCopy) || this.copyMessageScope === 'direct') - ? this.copyMessageScope - : this.$store.state.users.currentUser.default_scope - const { postContentType: contentType, sensitiveByDefault, sensitiveIfSubject } = this.$store.getters.mergedConfig return { @@ -139,7 +133,7 @@ const PostStatusForm = { files: [], poll: {}, mediaDescriptions: {}, - visibility: scope, + visibility: this.suggestedVisibility(), contentType }, caret: 0, @@ -614,6 +608,19 @@ const PostStatusForm = { }, openProfileTab () { this.$store.dispatch('openSettingsModalTab', 'profile') + }, + suggestedVisibility () { + if (this.copyMessageScope) { + if (this.copyMessageScope === 'direct') { + return this.copyMessageScope + } + if (this.$store.getters.mergedConfig.scopeCopy) { + if (this.copyMessageScope !== 'public' && this.$store.state.users.currentUser.default_scope !== 'private') { + return this.copyMessageScope + } + } + } + return this.$store.state.users.currentUser.default_scope } } }