diff --git a/src/boot/after_store.js b/src/boot/after_store.js index 05c08948..880de228 100644 --- a/src/boot/after_store.js +++ b/src/boot/after_store.js @@ -281,6 +281,7 @@ const getNodeInfo = async ({ store }) => { store.dispatch('setInstanceOption', { name: 'pollLimits', value: metadata.pollLimits }) store.dispatch('setInstanceOption', { name: 'mailerEnabled', value: metadata.mailerEnabled }) store.dispatch('setInstanceOption', { name: 'translationEnabled', value: features.includes('akkoma:machine_translation') }) + store.dispatch('setInstanceOption', { name: 'searchTypeMediaEnabled', value: features.includes('bnakkoma:search_type_media') }) const uploadLimits = metadata.uploadLimits store.dispatch('setInstanceOption', { name: 'uploadlimit', value: parseInt(uploadLimits.general) }) diff --git a/src/components/search/search.js b/src/components/search/search.js index c6640d27..0c8ee35e 100644 --- a/src/components/search/search.js +++ b/src/components/search/search.js @@ -30,7 +30,6 @@ const Search = { loadedInitially: false, loading: false, searchTerm: this.query || '', - mediaSearchSupported: false, userIds: [], statuses: [], media: [], @@ -62,6 +61,9 @@ const Search = { return this.media.filter(status => allStatusesObject[status.id] && !allStatusesObject[status.id].deleted ) + }, + canSearchMediaPosts () { + return this.$store.state.instance.searchTypeMediaEnabled === true } }, mounted () { @@ -122,7 +124,6 @@ const Search = { this.userIds = this.userIds.concat(map(data.accounts, 'id')) this.statuses = uniqBy(this.statuses.concat(data.statuses), 'id') if ('media' in data) { - this.mediaSearchSupported = true this.media = uniqBy(this.media.concat(data.media), 'id') } this.hashtags = this.hashtags.concat(data.hashtags) diff --git a/src/components/search/search.vue b/src/components/search/search.vue index ea601fff..0aa88eae 100644 --- a/src/components/search/search.vue +++ b/src/components/search/search.vue @@ -51,7 +51,7 @@ :label="$t('user_card.statuses') + resultCount('visibleStatuses')" />