aboutsummaryrefslogtreecommitdiff
path: root/src/boot/after_store.js
diff options
context:
space:
mode:
authorkaniini <ariadne@dereferenced.org>2019-11-09 17:38:45 +0000
committerkaniini <ariadne@dereferenced.org>2019-11-09 17:38:45 +0000
commitc873a18c64c995721e62399428205c451f8b4758 (patch)
tree106417c3e17c7e38c6e0ed47bc7b8bd506a624be /src/boot/after_store.js
parent044c9ad0562af059dd961d50961a3880fca9c642 (diff)
parenta2a94c4b7b33611d97c61761de0cef85eb892bb1 (diff)
Merge branch 'feature/about-page' into 'develop'
Feature/about page Closes #699 See merge request pleroma/pleroma-fe!985
Diffstat (limited to 'src/boot/after_store.js')
-rw-r--r--src/boot/after_store.js15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/boot/after_store.js b/src/boot/after_store.js
index 80a55849..226b67d8 100644
--- a/src/boot/after_store.js
+++ b/src/boot/after_store.js
@@ -184,6 +184,15 @@ const getAppSecret = async ({ store }) => {
})
}
+const resolveStaffAccounts = async ({ store, accounts }) => {
+ const backendInteractor = store.state.api.backendInteractor
+ let nicknames = accounts.map(uri => uri.split('/').pop())
+ .map(id => backendInteractor.fetchUser({ id }))
+ nicknames = await Promise.all(nicknames)
+
+ store.dispatch('setInstanceOption', { name: 'staffAccounts', value: nicknames })
+}
+
const getNodeInfo = async ({ store }) => {
try {
const res = await window.fetch('/nodeinfo/2.0.json')
@@ -212,6 +221,12 @@ const getNodeInfo = async ({ store }) => {
const frontendVersion = window.___pleromafe_commit_hash
store.dispatch('setInstanceOption', { name: 'frontendVersion', value: frontendVersion })
store.dispatch('setInstanceOption', { name: 'tagPolicyAvailable', value: metadata.federation.mrf_policies.includes('TagPolicy') })
+
+ const federation = metadata.federation
+ store.dispatch('setInstanceOption', { name: 'federationPolicy', value: federation })
+
+ const accounts = metadata.staffAccounts
+ await resolveStaffAccounts({ store, accounts })
} else {
throw (res)
}