From e60f704518678eabaa8da294908517e38fc43521 Mon Sep 17 00:00:00 2001 From: anto Date: Wed, 8 Jan 2025 15:27:41 +0100 Subject: [PATCH] maj --- html/projet_detail.html | 18 ++++++------- js/projet_detail.js | 60 +++++++++++++++++++++++++++++------------ 2 files changed, 51 insertions(+), 27 deletions(-) diff --git a/html/projet_detail.html b/html/projet_detail.html index 2ebe6ac..168703c 100644 --- a/html/projet_detail.html +++ b/html/projet_detail.html @@ -34,16 +34,13 @@
- - - - - - - - - -
dateHygrométrietempérature
+ +
+ +
@@ -79,6 +76,7 @@

© 2024 Timelapse. All rights reserved.

+ diff --git a/js/projet_detail.js b/js/projet_detail.js index 86b1f0f..312b53f 100644 --- a/js/projet_detail.js +++ b/js/projet_detail.js @@ -1,18 +1,7 @@ -function display_metrics(metrics_datas) { - // Get data from API and then generate HTML code to display the data in a table - const table = document.getElementById("table-metrics"); - let datas = ` - Date Température Hygrométrie - `; - for (let i = 0; i < metrics_datas.length; i++) { - datas += ` - - ${formatDate(metrics_datas[i].date_metrique)} - ${metrics_datas[i].temperature} - ${metrics_datas[i].hygrometrie} - `; - } - table.innerHTML = datas; +let myChart; // Declare a global variable to hold the chart instance + +function display_metrics() { + // Implementation for display_metrics function } document.addEventListener("DOMContentLoaded", () => { @@ -33,6 +22,12 @@ document.addEventListener("DOMContentLoaded", () => { document.getElementById("name_project").innerHTML = global_project_list[projectId - 1].titre; + generateViewMetric(); + + document.getElementById("metric_selector").addEventListener("change", () => { + generateViewMetric(); + }); + fetch("https://timelapse.kerboul.me/api/smile") .then((response) => response.blob()) .then((blob) => { @@ -63,11 +58,42 @@ document.addEventListener("DOMContentLoaded", () => { if (tableImage.classList.contains("hiddenTable")) { tableImage.classList.remove("hiddenTable"); tableImage.classList.add("full-view"); - document.getElementById("toggle-view").innerHTML="See first images" + document.getElementById("toggle-view").innerHTML = "See first images"; } else { tableImage.classList.remove("full-view"); tableImage.classList.add("hiddenTable"); - document.getElementById("toggle-view").innerHTML="See all images" + document.getElementById("toggle-view").innerHTML = "See all images"; } }); }); + +function generateViewMetric() { + const ctx = document.getElementById("metric_viewer").getContext("2d"); + + // Destroy the existing chart instance if it exists + if (myChart) { + myChart.destroy(); + } + + // Create a new chart instance + myChart = new Chart(ctx, { + type: "bar", + data: { + labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"], + datasets: [ + { + label: "# of Votes", + data: [12, 19, 3, 5, 2, 3], + borderWidth: 1, + }, + ], + }, + options: { + scales: { + y: { + beginAtZero: true, + }, + }, + }, + }); +}