Add ability to detect whether backend supports editing

This commit is contained in:
Sean King 2022-06-21 17:44:04 -06:00
parent fa5d35523d
commit f56298adbd
No known key found for this signature in database
GPG Key ID: 510C52BACD6E7257
5 changed files with 8 additions and 5 deletions

View File

@ -94,6 +94,7 @@ export default {
return this.$store.getters.mergedConfig.alwaysShowNewPostButton || this.layoutType === 'mobile' return this.$store.getters.mergedConfig.alwaysShowNewPostButton || this.layoutType === 'mobile'
}, },
showFeaturesPanel () { return this.$store.state.instance.showFeaturesPanel }, showFeaturesPanel () { return this.$store.state.instance.showFeaturesPanel },
editingAvailable () { return this.$store.state.instance.editingAvailable },
shoutboxPosition () { shoutboxPosition () {
return this.$store.getters.mergedConfig.alwaysShowNewPostButton || false return this.$store.getters.mergedConfig.alwaysShowNewPostButton || false
}, },

View File

@ -52,8 +52,8 @@
<MobilePostStatusButton /> <MobilePostStatusButton />
<UserReportingModal /> <UserReportingModal />
<PostStatusModal /> <PostStatusModal />
<EditStatusModal /> <EditStatusModal v-if="editingAvailable" />
<StatusHistoryModal /> <StatusHistoryModal v-if="editingAvailable" />
<SettingsModal /> <SettingsModal />
<div id="modal" /> <div id="modal" />
<GlobalNoticeList /> <GlobalNoticeList />

View File

@ -251,6 +251,7 @@ const getNodeInfo = async ({ store }) => {
store.dispatch('setInstanceOption', { name: 'pleromaChatMessagesAvailable', value: features.includes('pleroma_chat_messages') }) store.dispatch('setInstanceOption', { name: 'pleromaChatMessagesAvailable', value: features.includes('pleroma_chat_messages') })
store.dispatch('setInstanceOption', { name: 'gopherAvailable', value: features.includes('gopher') }) store.dispatch('setInstanceOption', { name: 'gopherAvailable', value: features.includes('gopher') })
store.dispatch('setInstanceOption', { name: 'pollsAvailable', value: features.includes('polls') }) store.dispatch('setInstanceOption', { name: 'pollsAvailable', value: features.includes('polls') })
store.dispatch('setInstanceOption', { name: 'editingAvailable', value: features.includes('editing') })
store.dispatch('setInstanceOption', { name: 'pollLimits', value: metadata.pollLimits }) store.dispatch('setInstanceOption', { name: 'pollLimits', value: metadata.pollLimits })
store.dispatch('setInstanceOption', { name: 'mailerEnabled', value: metadata.mailerEnabled }) store.dispatch('setInstanceOption', { name: 'mailerEnabled', value: metadata.mailerEnabled })

View File

@ -123,7 +123,8 @@ const ExtraButtons = {
}, },
isEdited () { isEdited () {
return this.status.edited_at !== null return this.status.edited_at !== null
} },
editingAvailable () { return this.$store.state.instance.editingAvailable }
} }
} }

View File

@ -74,7 +74,7 @@
/><span>{{ $t("status.unbookmark") }}</span> /><span>{{ $t("status.unbookmark") }}</span>
</button> </button>
<button <button
v-if="ownStatus" v-if="ownStatus && editingAvailable"
class="button-default dropdown-item dropdown-item-icon" class="button-default dropdown-item dropdown-item-icon"
@click.prevent="editStatus" @click.prevent="editStatus"
@click="close" @click="close"
@ -85,7 +85,7 @@
/><span>{{ $t("status.edit") }}</span> /><span>{{ $t("status.edit") }}</span>
</button> </button>
<button <button
v-if="isEdited" v-if="isEdited && editingAvailable"
class="button-default dropdown-item dropdown-item-icon" class="button-default dropdown-item dropdown-item-icon"
@click.prevent="showStatusHistory" @click.prevent="showStatusHistory"
@click="close" @click="close"