diff --git a/src/components/user_profile/user_profile.js b/src/components/user_profile/user_profile.js index 751bfd5a0..49d6fd60a 100644 --- a/src/components/user_profile/user_profile.js +++ b/src/components/user_profile/user_profile.js @@ -81,7 +81,7 @@ const UserProfile = { return this.isUs || !this.user.hide_followers }, favoritesTabVisible () { - return this.isUs || !this.user.hide_favorites + return this.isUs || (this.$store.state.instance.pleromaPublicFavouritesAvailable && !this.user.hide_favorites) }, formattedBirthday () { const browserLocale = localeService.internalToBrowserLocale(this.$i18n.locale) diff --git a/src/modules/instance.js b/src/modules/instance.js index 83671a881..5074165f9 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -156,6 +156,7 @@ const defaultState = { pleromaChatMessagesAvailable: false, pleromaCustomEmojiReactionsAvailable: false, pleromaBookmarkFoldersAvailable: false, + pleromaPublicFavouritesAvailable: true, gopherAvailable: false, mediaProxyAvailable: false, suggestionsEnabled: false, diff --git a/src/services/timeline_fetcher/timeline_fetcher.service.js b/src/services/timeline_fetcher/timeline_fetcher.service.js index d85fc7305..fdf235af7 100644 --- a/src/services/timeline_fetcher/timeline_fetcher.service.js +++ b/src/services/timeline_fetcher/timeline_fetcher.service.js @@ -63,6 +63,10 @@ const fetchAndUpdate = ({ return apiService.fetchTimeline(args) .then(response => { if (response.errors) { + if (timeline === 'favorites') { + rootState.instance.pleromaPublicFavouritesAvailable = false + return + } throw new Error(`${response.status} ${response.statusText}`) }