aboutsummaryrefslogtreecommitdiff
path: root/src/components/remote_user_resolver/remote_user_resolver.js
diff options
context:
space:
mode:
authorHJ <30-hj@users.noreply.git.pleroma.social>2019-11-08 22:27:25 +0000
committerHJ <30-hj@users.noreply.git.pleroma.social>2019-11-08 22:27:25 +0000
commit044c9ad0562af059dd961d50961a3880fca9c642 (patch)
tree0f932a94beb495065409a2a32749b138b99f5808 /src/components/remote_user_resolver/remote_user_resolver.js
parent2b68134ab01266913b89b79ea6c3e9575278ecb2 (diff)
parente4820012a3573ad02846d254fedb0cfa36582fdf (diff)
Merge branch 'feature/redirect-external-user-to-id' into 'develop'
[Feature] Redirect remote user to internal ID See merge request pleroma/pleroma-fe!921
Diffstat (limited to 'src/components/remote_user_resolver/remote_user_resolver.js')
-rw-r--r--src/components/remote_user_resolver/remote_user_resolver.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/components/remote_user_resolver/remote_user_resolver.js b/src/components/remote_user_resolver/remote_user_resolver.js
new file mode 100644
index 00000000..9b5e511e
--- /dev/null
+++ b/src/components/remote_user_resolver/remote_user_resolver.js
@@ -0,0 +1,31 @@
+const RemoteUserResolver = {
+ data: () => ({
+ error: false
+ }),
+ mounted () {
+ this.redirect()
+ },
+ methods: {
+ redirect () {
+ const acct = this.$route.params.username + '@' + this.$route.params.hostname
+ this.$store.state.api.backendInteractor.fetchUser({ id: acct })
+ .then((externalUser) => {
+ if (externalUser.error) {
+ this.error = true
+ } else {
+ this.$store.commit('addNewUsers', [externalUser])
+ const id = externalUser.id
+ this.$router.replace({
+ name: 'external-user-profile',
+ params: { id }
+ })
+ }
+ })
+ .catch(() => {
+ this.error = true
+ })
+ }
+ }
+}
+
+export default RemoteUserResolver