fix: check if profile existe befort render profile page

This commit is contained in:
starnakin 2023-12-21 00:05:54 +01:00
parent 0626faae7f
commit 8e0514514b
3 changed files with 11 additions and 2 deletions

View File

@ -19,6 +19,10 @@ class Profile
async init(user_id) async init(user_id)
{ {
let response = await this.client._get(`/api/profiles/${user_id}`); let response = await this.client._get(`/api/profiles/${user_id}`);
if (response.status === 404)
return 1;
let response_data = await response.json(); let response_data = await response.json();
this.user_id = response_data.user_id; this.user_id = response_data.user_id;

View File

@ -28,7 +28,8 @@ class Profiles
async getProfile(user_id) async getProfile(user_id)
{ {
let profile = new Profile(this.client); let profile = new Profile(this.client);
await profile.init(user_id); if (await profile.init(user_id))
return null;
return profile; return profile;
} }

View File

@ -10,6 +10,10 @@ export default class extends AbstractView {
async postInit() async postInit()
{ {
let profile = await client.profiles.getProfile(this.user_id); let profile = await client.profiles.getProfile(this.user_id);
if (profile === null)
return 1;
let info = document.getElementById("info"); let info = document.getElementById("info");
// Username // Username
@ -18,7 +22,7 @@ export default class extends AbstractView {
username.appendChild(document.createTextNode(profile.username)); username.appendChild(document.createTextNode(profile.username));
info.appendChild(username); info.appendChild(username);
info.appendChild(document.createElement("br")); info.appendChild(document.createElement("br"));
// Avatar // Avatar
let avatar = document.createElement("img"); let avatar = document.createElement("img");