// Global variable for the API URL let api_url = "https://timelapse.kerboul.me/api"; // 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 getDataFromApi().then(function (project_list) { const table = document.getElementById("table-projects"); let datas = ` Id Name Actions `; for (let i = 0; i < project_list.rows.length; i++) { datas += ` ${project_list.rows[i].id} ${project_list.rows[i].name} `; } 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 deleteDataFromApi(4) window.location.href = "projet_detail.html"; }); } }); } // Function to get data from API function getDataFromApi() { return $.ajax({ url: api_url.concat("/itemsdb"), // replace with your API URL method: "GET", // or 'POST', 'PUT', 'DELETE', etc. dataType: "json", // expected data type success: function (data) { // This function is called if the request is successful return data; // log the data to the console }, error: function (jqXHR, textStatus, errorThrown) { // This function is called if the request fails console.error("Error:", textStatus, errorThrown); }, }); } // Function to send data to API function sendDataFromApi(datas) { return $.ajax({ url: api_url.concat("/projets"), method: "POST", data: JSON.stringify(datas), contentType: "application/json", success: function (datas) { console.log("successful"); }, error: function (jqXHR, textStatus, errorThrown) { console.error(errorThrown); }, }); } function deleteDataFromApi(id) { return $.ajax({ url: api_url.concat("/delete"), method: "POST", data: JSON.stringify({"id":id}), contentType: "application/json", success: function (datas) { console.log("successful"); }, error: function (jqXHR, textStatus, errorThrown) { console.error(errorThrown); }, }); } // Call display_projects() function to display projects display_projects();