diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2019-11-03 17:54:37 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2019-11-03 17:54:37 +0900 |
| commit | 570931cff819bc7e38f8d4e5cd744c0de635622d (patch) | |
| tree | 4325c2f2d22115638b6f4237f92eedd37b961acb /src/client/app/common | |
| parent | Update README.md [AUTOGEN] (#5574) (diff) | |
| download | sharkey-570931cff819bc7e38f8d4e5cd744c0de635622d.tar.gz sharkey-570931cff819bc7e38f8d4e5cd744c0de635622d.tar.bz2 sharkey-570931cff819bc7e38f8d4e5cd744c0de635622d.zip | |
Fix #5552 (#5579)
Diffstat (limited to 'src/client/app/common')
| -rw-r--r-- | src/client/app/common/views/pages/follow.vue | 39 |
1 files changed, 34 insertions, 5 deletions
diff --git a/src/client/app/common/views/pages/follow.vue b/src/client/app/common/views/pages/follow.vue index f08ddf2642..4a01affa8a 100644 --- a/src/client/app/common/views/pages/follow.vue +++ b/src/client/app/common/views/pages/follow.vue @@ -72,11 +72,40 @@ export default Vue.extend({ const acct = new URL(location.href).searchParams.get('acct'); this.fetching = true; Progress.start(); - this.$root.api('users/show', parseAcct(acct)).then(user => { - this.user = user; - this.fetching = false; - Progress.done(); - }); + if (acct.match(/^https?:/)) { + this.$root.api('ap/show', { + uri: acct + }).then((res: { type: string, object: any }) => { + if (res.type !== 'User') { + this.$root.dialog({ + type: 'error', + text: 'acct is not an user' + }); + } else { + this.user = res.object; + } + }).catch((e: any) => { + this.$root.dialog({ + type: 'error', + text: e.message + }); + }).finally(() => { + this.fetching = false; + Progress.done(); + }); + } else { + this.$root.api('users/show', parseAcct(acct)).then((user: any) => { + this.user = user; + }).catch((e: any) => { + this.$root.dialog({ + type: 'error', + text: e.message + }); + }).finally(() => { + this.fetching = false; + Progress.done(); + }); + } }, async onClick() { |