diff --git a/maubot/management/frontend/src/api.js b/maubot/management/frontend/src/api.js index 44db7c3..d6a30dd 100644 --- a/maubot/management/frontend/src/api.js +++ b/maubot/management/frontend/src/api.js @@ -214,10 +214,10 @@ export async function uploadAvatar(id, data, mime) { } export function getAvatarURL({ id, avatar_url }) { - avatar_url = avatar_url || "" - if (avatar_url.startsWith("mxc://")) { - avatar_url = avatar_url.substr("mxc://".length) + if (!avatar_url?.startsWith("mxc://")) { + return null } + avatar_url = avatar_url.substr("mxc://".length) return `${BASE_PATH}/proxy/${id}/_matrix/media/r0/download/${avatar_url}?access_token=${ localStorage.accessToken}` } diff --git a/maubot/management/frontend/src/pages/dashboard/Client.js b/maubot/management/frontend/src/pages/dashboard/Client.js index ac81114..806e112 100644 --- a/maubot/management/frontend/src/pages/dashboard/Client.js +++ b/maubot/management/frontend/src/pages/dashboard/Client.js @@ -215,8 +215,12 @@ class Client extends BaseMainView { } get avatarMXC() { - return this.state.avatar_url === "disable" - ? this.props.entry.remote_avatar_url : this.state.avatar_url + if (this.state.avatar_url === "disable") { + return this.props.entry.remote_avatar_url + } else if (!this.state.avatar_url?.startsWith("mxc://")) { + return null + } + return this.state.avatar_url } get avatarURL() {