function sparkProjectList() {
apiGet('/spark/project_list')
.then(data => {
const body = document.getElementById('spark-body');
body.innerHTML = '';
if (data && Array.isArray(data.projects) && data.projects.length > 0) {
data.projects.forEach(proj => {
const row = document.createElement('tr');
row.innerHTML = `
${proj.project_name} |
${proj.version} |
${proj.enabled ? 'đĸ' : 'đ´'} |
${getStatusIcon(proj.status)} ${proj.status} |
${proj.last_accessed} |
`;
body.appendChild(row);
});
} else {
const row = document.createElement('tr');
row.innerHTML = `â ī¸ Failed to load Spark project list or no projects available. | `;
body.appendChild(row);
}
})
.catch(err => {
console.error(err);
const body = document.getElementById('spark-body');
body.innerHTML = '';
const row = document.createElement('tr');
row.innerHTML = `â Error connecting to Spark service. | `;
body.appendChild(row);
});
}
function getStatusIcon(status) {
if (status === 'loading') return 'âī¸';
if (status === 'ready') return 'â
';
if (status === 'error') return 'â';
return 'âšī¸';
}