Fix #1210: Enforce authentication when viewing remote channels, profiles and libraries

This commit is contained in:
Agate 2020-08-28 20:19:08 +02:00
parent b1ae13ab0a
commit 482647dab9
5 changed files with 16 additions and 2 deletions

View File

@ -429,7 +429,7 @@ def fetch(fetch_obj):
) )
except Exception: except Exception:
logger.exception( logger.exception(
"Error while fetching actor outbox: %s", obj.actor.outbox.url "Error while fetching actor outbox: %s", obj.actor.outbox_url
) )
else: else:
if result.get("next_page"): if result.get("next_page"):

View File

@ -0,0 +1 @@
Enforce authentication when viewing remote channels, profiles and libraries (#1210)

View File

@ -93,7 +93,12 @@ export default {
} }
}, },
created() { created() {
this.fetch() let authenticated = this.$store.state.auth.authenticated
if (!authenticated && this.domain && this.$store.getters['instance/domain'] != this.domain) {
this.$router.push({name: 'login', query: {next: this.$route.fullPath}})
} else {
this.fetch()
}
}, },
beforeRouteUpdate (to, from, next) { beforeRouteUpdate (to, from, next) {
to.meta.preserveScrollPosition = true to.meta.preserveScrollPosition = true

View File

@ -270,6 +270,10 @@ export default {
}, },
async created() { async created() {
await this.fetchData() await this.fetchData()
let authenticated = this.$store.state.auth.authenticated
if (!authenticated && this.$store.getters['instance/domain'] != this.object.actor.domain) {
this.$router.push({name: 'login', query: {next: this.$route.fullPath}})
}
}, },
methods: { methods: {
async fetchData() { async fetchData() {

View File

@ -148,6 +148,10 @@ export default {
}, },
async created() { async created() {
await this.fetchData() await this.fetchData()
let authenticated = this.$store.state.auth.authenticated
if (!authenticated && this.$store.getters['instance/domain'] != this.object.actor.domain) {
this.$router.push({name: 'login', query: {next: this.$route.fullPath}})
}
}, },
methods: { methods: {
async fetchData() { async fetchData() {