From 532b5471ec2d6bd83af55a45d23b9c614552b558 Mon Sep 17 00:00:00 2001 From: Thomas Date: Sat, 22 Aug 2026 11:58:45 +0200 Subject: [PATCH] Lehreransicht: Farmer-Spalten in "Aktuell" uebersetzt statt roher Keys LIVE_PRIMARY_FIELDS um farmer-Eintrag ergaenzt: Jahr /10, Markt, Konto (rot bei minus), Trefferquote (Balken), Sorten /10, Laender, Felder, Versuche, CO2 kg, Krankheiten (rot bei >0). Redundante/interne Keys (phase, market-id, progressPct, simId, timestamp) fallen weg. Vorher fiel die Tabelle auf rohe englische Keys. Co-Authored-By: Claude Opus 4.8 --- App/teacher.html | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/App/teacher.html b/App/teacher.html index a0b053c..bace8a3 100644 --- a/App/teacher.html +++ b/App/teacher.html @@ -635,6 +635,29 @@ function _liveBar(val, min, max, goodWhen) { } var LIVE_PRIMARY_FIELDS = { + farmer: [ + {k:'year', label:'Jahr', fmt:function(v){ return (v||0) + ' / 10'; }}, + {k:'market_de', label:'Markt', align:'left', fmt:function(v){ return v ? '🌍 '+esc(v) : 'β€”'; }}, + {k:'cash', label:'Konto', fmt:function(v){ + if (v == null) return 'β€”'; + var color = v < 0 ? '#c0392b' : '#5a8a5e'; + return ''+Number(v).toLocaleString('de-AT')+' €'; + }}, + {k:'hit_rate', label:'Trefferquote', fmt:function(v){ return _liveBar(v, 0, 100, 'high'); }}, + {k:'crops_used', label:'Sorten', fmt:function(v){ return (v||0) + ' / 10'; }}, + {k:'countries', label:'LΓ€nder', fmt:function(v){ return (v!=null? v : 0); }}, + {k:'fields', label:'Felder', fmt:function(v){ return (v!=null? v : 0); }}, + {k:'attempts', label:'Versuche',fmt:function(v){ return (v!=null? v : 0); }}, + {k:'co2_kg', label:'COβ‚‚', unit:'kg', fmt:function(v){ + if (v == null) return 'β€”'; + return ''+Number(Math.round(v)).toLocaleString('de-AT')+''; + }}, + {k:'diseases', label:'Krankheiten', align:'center', fmt:function(v){ + if (v == null) return 'β€”'; + var color = (v > 0) ? '#c07a6b' : '#8a8a8a'; + return ''+v+''; + }}, + ], 'tourismusregion': [ {k:'mapId', label:'Karte', align:'left', fmt:function(v){ return {talschleife:'🏞 Talschleife', seerunde:'🚣 Seerunde', serpentinen:'β›° Serpentinen',