diff --git a/src/templates/index.html b/src/templates/index.html
index 2c771c5..269cd52 100644
--- a/src/templates/index.html
+++ b/src/templates/index.html
@@ -35,18 +35,27 @@
function recalculateTableBasedOnPortions() {
const portions = parseInt(document.getElementById('portions').value, 10) || 1;
const table = document.getElementById('nutrition-table');
- Array.from(table.rows).slice(1).forEach(row => {
- const weightCell = row.cells[1];
- const originalWeight = parseInt(weightCell.getAttribute('data-original-weight'), 10) || parseInt(weightCell.innerText, 10);
- const newWeight = Math.ceil(originalWeight / portions);
- weightCell.innerText = newWeight;
- // Optional: Speichern des ursprünglichen Gewichts, falls noch nicht geschehen
- if (!weightCell.hasAttribute('data-original-weight')) {
- weightCell.setAttribute('data-original-weight', originalWeight.toString());
- }
+ // Löschen aller Zeilen außer der Kopfzeile
+ while (table.rows.length > 1) {
+ table.deleteRow(1);
+ }
+ // Neu hinzufügen jedes Lebensmittels mit dem neuen Gewicht
+ let entries = JSON.parse(localStorage.getItem('nutritionEntries')) || [];
+ entries.forEach(entry => {
+ const newWeight = Math.ceil(entry.weight / portions);
+ fetchUpdatedNutrition(entry.food, newWeight);
});
- // Trigger die Neuberechnung der Gesamtnährwerte
- updateTotalNutrition();
+}
+
+function fetchUpdatedNutrition(food, weight) {
+ fetch(`/add_lm?food=${encodeURIComponent(food)}&weight=${encodeURIComponent(weight)}`)
+ .then(response => response.json())
+ .then(data => {
+ addToTable(food, weight, data); // Angenommen, diese Funktion fügt die aktualisierten Daten in die Tabelle ein.
+ saveToLocalStorage(food, weight, data); // Speichert die aktualisierten Einträge zurück in den localStorage
+ updateTotalNutrition(); // Aktualisiert die Gesamtnährwerte
+ })
+ .catch(error => console.error('Fehler:', error));
}