About
Name: ${data.user.firstname + ' ' + data.user.lastname}
Email: ${data.user.email}
Gender: ${data.user.gender}
Birthday: ${parseMonth(data.user.month) + ' ' + data.user.day + ', ' + data.user.year}
User ID: ${data.user.user_id}
`
add(about, 'about')
}
async function logout_button() {
const response = await logout()
if (response.status != 200) return;
location.href = '/login'
}
var posts = true
var isself = false
async function load() {
header(false, false)
var params = {};
for (const [key, value] of new URLSearchParams(location.search)) {
params[key] = value
}
let self = (await loadself()).json;
let id;
if (params.id !== undefined && !isNaN(params.id)) {
id = parseInt(params.id);
} else {
id = self.user_id
}
isself = id === self.user_id
const posts = (await loadusersposts(id)).json
data.posts.push(... posts)
const batch = [id]
for (const post of posts) {
for(const comment of post.comments) {
if (data.users[comment[0]] !== undefined) continue
if (batch.includes(comment[0])) continue
batch.push(comment[0])
}
if (data.users[post.user_id] !== undefined) continue
if (batch.includes(post.user_id)) continue
batch.push(post.user_id)
}
const users = (await loadusers(batch)).json
for (const user of users) {
data.users[user.user_id] = user
}
data.user = data.users[id]
render()
}
load()