Lehrer: Default-Klasse = zuletzt gewählte (persistent), Fallback älteste

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-20 14:51:48 +02:00
parent 504b0098a6
commit 84386e93d0
+12 -1
View File
@@ -2004,7 +2004,17 @@ async function loadClasses() {
opt.value = c.id; opt.textContent = c.name + ' (' + c.school_year + ')';
sel.appendChild(opt);
});
if (!currentClassId) currentClassId = classes[0].id;
// Default-Klasse: zuletzt gewählte (persistent gemerkt), sonst die ÄLTESTE.
if (!currentClassId) {
var saved = null;
try { saved = parseInt(localStorage.getItem('ggs-last-class'), 10); } catch(_) {}
if (saved && classes.some(function(c){ return c.id === saved; })) {
currentClassId = saved;
} else {
var byAge = classes.slice().sort(function(a,b){ return (a.created_at||'') < (b.created_at||'') ? -1 : 1; });
currentClassId = byAge[0].id; // älteste zuerst
}
}
sel.value = currentClassId;
currentClass = classes.find(function(c) { return c.id === currentClassId; });
document.getElementById('class-code').textContent = currentClass?.join_code || '—';
@@ -2025,6 +2035,7 @@ async function loadClasses() {
function onClassChange() {
currentClassId = parseInt(document.getElementById('class-select').value);
try { localStorage.setItem('ggs-last-class', currentClassId); } catch(_) {} // „letzter Aufruf" merken
currentClass = allClasses.find(function(c) { return c.id === currentClassId; });
document.getElementById('class-code').textContent = currentClass?.join_code || '—';
loadTab(currentTab);