(async function() { const fetched = await fetch('https://loc.sh/int/directory'); //const fetched = await fetch('http://localhost:3890/int/directory'); const data = await fetched.json(); const table = document.getElementById('directory'); const table2 = document.getElementById('roles'); // users.sort((a, b) => a.firstname.localeCompare(b.firstname)) let completed = 0; document.getElementById('loading').innerText += ` ${completed}/${data.length - 1}` for (const info of data.sort((a, b) => a.name.localeCompare(b.name))) { completed++; document.getElementById('loading').innerText = `Loading... | ${completed}/${data.length}`; // console.log(info); const fetched2 = await fetch(`https://loc.sh/int/directory?id=${info.userID}`); //const fetched2 = await fetch(`http://localhost:3890/int/directory?id=${info.userID}`); const user = await fetched2.json(); // console.log(user); if (!user.staff) continue; const row = table.insertRow(); const row2 = table2.insertRow(); let name = `${user.username}`; let pn = []; if (info.pn && info.pn.length > 0) { for (const nominal of info.pn) { pn.push(`${nominal}`) } name += `, ${pn.join(', ')}`; } row.insertCell().innerHTML = `${user.username} ${name}`; // row.insertCell().innerText = `${info.userID} | #${user.discriminator}`; let departmentAndTitle = ''; if (info.title && info.dept) { departmentAndTitle += `${info.title}, ${info.dept}`; } else if (info.dept) { departmentAndTitle += info.dept; } row.insertCell().innerText = departmentAndTitle; row.insertCell().innerHTML = info.emailAddress ? `${info.emailAddress} ` : ''; row.insertCell().innerText = user.pager ? user.pager : ''; row.insertCell().innerText = info.extension ? info.extension : ''; row2.insertCell().innerHTML = `${name}`; let rankings = ''; } else { rankings = ''; } row2.insertCell().innerHTML = rankings; } document.getElementById('loading').style.display = "none"; document.getElementById('directory').style.display = "block"; })();