Files
timelapse-frontend/js/index.js
2025-01-09 10:12:17 +01:00

46 lines
1.7 KiB
JavaScript

// Function to display projects in a table
function display_projects() {
// Get data from API and then generate HTML code to display the data in a table
const table = document.getElementById("table-projects");
let datas = `<tr>
<th>Id</th>
<th>Name</th>
<th>Date</th>
<th>Status</th>
<th>Actions</th>
</tr> `;
for (let i = 0; i < global_project_list.length; i++) {
datas += `<tr>
<th>${global_project_list[i].id}</th>
<th>${global_project_list[i].name}</th>
<th>${formatDate(global_project_list[i].start_date)}</th>
<th>${global_project_list[i].status}</th>
<th><button class="project_detail btn btn-primary">détails de ${global_project_list[i].name}</button></th>
</tr>`;
}
table.innerHTML = datas;
// Select all the buttons with the class button_project
const buttons = document.getElementsByClassName("project_detail");
// Add an event listener to each button
for (let i = 0; i < buttons.length; i++) {
buttons[i].addEventListener("click", (event) => {
// Send data to API and then navigate to projet_detail.html page
window.location.href = `html/projet_detail.html?id=${global_project_list[i].id}`;
});
buttons[i].addEventListener("onclick", (event) => {
// Send data to API and then navigate to projet_detail.html page
current_project=change_current_project(i);
});
}
}
getAllProject()
.then(project_list => {
global_project_list = project_list;
// Call the next function here
display_projects();
})
.catch(error => {
console.error(error);
});