Files
kantinen-wrapper/changelog.md

11 KiB
Executable File
Raw Blame History

v1.6.14 (2026-03-10)

  • 🐛 Bugfix: Die globale "Aktualisiert am"-Zeit im Header wird bei einer manuellen Prüfung der geflaggten Menüs nicht mehr zurückgesetzt.

v1.6.13 (2026-03-10)

  • Feature: Manueller Refresh der geflaggten Menüs durch Klick auf das Alarm-Icon im Header (FR-093).
  • 🔄 UI: Visuelle Rückmeldung während der Prüfung durch Rotation des Icons.
  • 🔔 Notification: Toast-Benachrichtigung zeigt die Anzahl der geprüften Menüs an.

v1.6.12 (2026-03-10)

  • 🔄 Refactor: Modularisierung von kantine.js in ES6-Module (api.js, state.js, utils.js, ui.js, etc.).
  • 📦 Build: Integration von Webpack in den Build-Prozess zur Unterstützung der modularen Struktur.
  • 🛡️ Security: XSS-Schutz durch Escaping dynamischer Inhalte in innerHTML.
  • Performance:
    • Optimierte Tag-Badge-Generierung und UI-Render-Loops (Verwendung von reduce).
    • Nutzung von insertAdjacentHTML statt innerHTML für effizienteres Rendering.
    • Batch-Fetching von availableDates zur Reduzierung der API-Calls.
    • Performance-Fixes in ui_helpers.js.
  • 🧪 Testing: Unit-Tests für GitHub API-Header Generierung hinzugefügt.
  • 🧹 Cleanup: Entfernung verwaister console.log Statements.
  • 🐛 Bugfix: Korrektur des Tooltips beim Alarm-Icon (Polling-Zeit vs. globale Aktualisierungszeit).

v1.6.11 (2026-03-09)

  • 🔄 Refactor: Trennung der Zeitstempel für die Hauptaktualisierung (Header) und die Benachrichtigungsprüfung (Bell-Icon). Das Polling aktualisiert nun nicht mehr fälschlicherweise die "Aktualisiert am"-Zeit im Header.
  • 🏷️ Metadata: Version auf v1.6.11 angehoben.

v1.6.10 (2026-03-09)

  • Feature: Robuste Kurs-Erkennung in zweisprachigen Menüs (FR-121).
  • Fix: Verhindert das Verschieben von Gängen bei fehlenden englischen Übersetzungen.
  • Improved: Heuristik-Split erkennt nun zuverlässiger den Übergang von Englisch zurück zu Deutsch (z.B. bei "Achtung"-Hinweisen)

v1.6.9 (2026-03-09)

  • 🐛 Bugfix: Fehlerhafte Zeitangabe beim Bell-Icon ("vor 291h") behoben. Der Tooltip wird nun minütlich aktualisiert und nach jeder Menü-Prüfung korrekt neu gesetzt.
  • 🔄 Refactor: Zeitstempel-Management für die letzte Aktualisierung vereinheitlicht und im localStorage persistiert.

v1.6.8 (2026-03-06)

  • Performance: Das JavaScript für das Kantinen-Bookmarklet wird nun beim Build-Prozess (via Terser) minimiert, was die Länge der injizierten URL spürbar reduziert.

v1.6.7 (2026-03-06)

  • 🎨 Style: Das neue Header-Logo (favicon_base.png) wird nun konsequent auf 40x40px generiert und gerendert.

v1.6.6 (2026-03-06)

  • 🎨 Style: Den Schatten und den hervorstehenden Karten-Effekt für bestellte Menüs an vergangenen Tagen komplett entfernt - verbleiben nun visuell flach und unaufdringlich wie nicht-bestellte Menüs.

v1.6.5 (2026-03-06)

  • Feature: Das restaurant_menu Icon im Header wurde durch das neue favicon_base.png Logo ersetzt, passend zur Textgröße skaliert.
  • 🎨 Style: Violette Umrahmung (Bestellt-Markierung) an vergangenen Tagen entfernt, um den Fokus auf aktuelle und zukünftige Bestellungen zu lenken.
  • 🎨 Style: Der Glow-Effekt für am heutigen Tag bestellte Menüs wurde intensiviert.

v1.6.4 (2026-03-05)

  • Feature: Sprach-Lexikon (DE/EN) massiv erweitert um österreichische Begriffe (Nockerl, Fleckerl, Topfen, Mohn, Most etc.) und gängige Tippfehler aus dem Bessa-System (trukey, coffe, oveb etc.).
  • 🧹 Cleanup: Sprach-Lexikon dedupliziert und alphabetisch sortiert für bessere Performance und Wartbarkeit.
  • 🐛 Bugfix: Trennung von zweisprachigen Menüs (splitLanguage) verbessert: Erfasst nun auch Schrägstriche ohne Leerzeichen (z.B. Suppe/Soup).
  • 🐛 Bugfix: Fehlerhafte Badge-Anzeige korrigiert (Variable count vs orderCount).

v1.6.3 (2026-03-05)

  • Chore: Slogan im Footer aktualisiert ("Jetzt Bessa Einfach! • Knapp-Kantine Wrapper • 2026 by Kaufis-Kitchen") und Footer-Höhe für mehr Platzierung optimiert.

v1.6.2 (2026-03-05)

  • Feature: Wochentags-Header (Montag, Dienstag etc.) scrollen nun als "Sticky Header" mit und bleiben am oberen Bildschirmrand haften.
    • Das Layout clippt scrollende Speisen ordentlich darunter weg.
    • Vollständiges Viewport-Scrolling: Das Layout nutzt nun die ganze Höhe aus (100dvh), wodurch Scrollbalken sauber am Rand positioniert sind.
  • 🐛 Bugfix: Probleme mit Bessa's default overflow Verhalten behoben, das position: sticky auf iOS/WebKit-Browsern blockierte.

v1.6.0 (2026-03-04)

  • Feature: Sprachfilter für zweisprachige Menübeschreibungen. Neuer DE/EN/ALL Toggle im Header ermöglicht das Umschalten zwischen Deutsch, Englisch und dem vollen Originaltext. Allergen-Codes werden in allen Modi angezeigt. Einstellung wird persistent gespeichert.

v1.5.1 (2026-03-04)

  • 🐛 Bugfix: Freitagsbestellungen schlugen fehl ("Onlinebestellung sind nicht verfügbar"). Ursache: Der Order-Payload verwendete preorder: false und eine falsche Uhrzeit (T10:00:00.000Z statt T10:30:00Z). Beides wurde anhand der originalen Bessa-API korrigiert.

v1.5.0 (2026-02-26)

Das große "Quality of Life"-Update! Zusammenfassung aller Features und Fixes seit v1.4.0:

  • Bestellhistorie: Übersichtliche Historie direkt in der App gruppiert nach Jahr/Monat, inklusive Summen, Stati (Offen/Abgeschlossen/Storniert) und Delta-Cache für rasantes Laden.
  • Smart Cache & Performance: Massive Reduzierung von API-Calls und Ladezeiten durch intelligenten lokalen Cache. Das Bookmarklet startet nun praktisch verzögerungsfrei.
  • 🔄 GitHub Release Management: In-App Versions-Menü mit Auto-Update Check (🆕 Icon). Umschalten zwischen "Stable" und "Dev" Versionen sowie Downgrade-Möglichkeit direkt über die GitHub API.
  • 🌟 Smart Highlights & UX: Speisen-Favoriten leuchten nun im Design-Violett und erhalten Feature-Badges. Der Bestell-Badge für nächste Woche filtert nun intelligent personalisierte Highlights voraus.
  • 🔔 Bestell-Warnung & Notifications: Der System-Alarm berücksichtigt nun Sessions korrekt, zeigt dynamische Farbwechsel (gelb/grün/rot) und warnt verlässlich vor dem Bestellschluss (10:00 Uhr). Altlasten von Vortagen werden automatisch geputzt.
  • 🎨 Eigenes Favicon: Das Bookmarklet und der Installer haben nun ein eigenes Icon (Dreieck mit Besteck), das beim Hineinziehen in die Lesezeichenleiste übernommen wird (dynamisch generiert als lokales PNG).
  • 🧹 Lokaler Cache-Clear: Ein in das Versions-Menü eingebauter "Papierkorb", der ausschließlich fehlerhafte Kantinen-Caches putzt, ohne dabei versehentlich die aktive Bessa-Host-Session zu zerstören.
  • 🔒 Sitzungs-Persistenz: Die Login-Session überdauert jetzt neue Tabs, Fenster und Version-Upgrades reibungslos durch den Wechsel auf localStorage.
  • 🛡️ Testing & Stabilität: Vollautomatische DOM- und Logik-Testing-Suites in der Release-Pipeline integriert. Fehlerhafte UI-Buttons gehören der Vergangenheit an.

v1.4.0 (2026-02-22)

  • Feature: Bestellhistorie per Knopfdruck abrufbar. Übersichtliche Darstellung, gruppiert nach Monaten und Kalenderwochen, inklusive Stornos. 📜

v1.3.2 (2026-02-19)

  • Fix: Falsche Anzahl an Highlight-Menüs im "Nächste Woche"-Badge korrigiert (zählte alle Menüs statt nur Highlights). 🐛

v1.3.1 (2026-02-17)

  • Feature: Smart Cache API-Refresh beim Start wird übersprungen wenn Daten für die aktuelle KW vorhanden und Cache < 1h alt ist.

v1.3.0 (2026-02-16)

  • Feature: GitHub Release Management 📦
    • Version-Menü: Klick auf Versionsnummer zeigt alle verfügbaren Versionen
    • Dev-Mode Toggle: Zwischen Releases (stabil) und Tags (dev) wechseln
    • Downgrade-Support: Jede Version hat einen eigenen Installer-Link
    • Update-Check nutzt jetzt die GitHub API statt version.txt
    • GitHub PAT für höheres API-Rate-Limit (5000/h)
    • SemVer-Check: Update-Icon nur bei wirklich neuerer Version

v1.2.9 (2026-02-16)

v1.2.8 (2026-02-16)

  • Debug: Weiteres Logging (Fetch-Status, Start-Log) zur Fehlersuche. 🔎

v1.2.7 (2026-02-16)

  • Debug: Verbose Logging für Update-Check eingebaut. 🐞

v1.2.6 (2026-02-16)

  • Test: Version Bump zum Testen der Live-Update-Erkennung. 🧪

v1.2.5 (2026-02-16)

  • Refactor: Update-Erkennung komplett überarbeitet (stündlicher Check, diskretes 🆕 Icon im Header, kein Banner mehr). 🔄
  • Cleanup: Ungenutzter CSS-Code und Netzwerk-Traffic reduziert. 🧹
  • Fix: Highlight-Logik stabilisiert (keine falschen Matches bei leeren Tags). 🏷️

v1.2.4 (2026-02-16)

  • Feature: Gefundene Highlights werden jetzt direkt im Menü als Badge angezeigt. 🏷️

v1.2.3 (2026-02-16)

  • Fix: Update-Icon ist jetzt klickbar und führt direkt zum Installer. 🔗
  • Dev: Unit-Tests für Update-Logik im Build integriert. 🛡️

v1.2.2 (2026-02-16)

  • UX: Installer-Changelog jetzt einklappbar für mehr Übersicht. 📂

v1.2.1 (2026-02-16)

  • Fix: Smart Highlights werden jetzt korrekt auf Menü-Items angewendet (checkHighlight in createDayCard). 🌟
  • Feature: Mock-Daten (mock-data.js) für Standalone-Tests eingebaut. 🧪
  • Style: Highlight-Glow mit blauer Puls-Animation (blue-pulse) überarbeitet. 💎
  • Style: Tag-Badges konsistent mit Badge-System gestaltet. 🏷️
  • Style: "Hinzufügen"-Button (#btn-add-tag) als Primary-Button gestylt. 🎨
  • Style: Modal-Body Padding und Input-Font korrigiert. 🔧
  • Docs: README Projektstruktur mit Tabelle für dist/-Artefakte ergänzt. 📖

v1.2.0 (2026-02-16)

  • Feature: Bessere UX im Installer (Button oben, Log unten, Features aktualisiert). 💅
  • Tech: Build-Tests hinzugefügt. 🧪
  • Fix: Encoding-Probleme final behoben (dank Python Buildlogic). 🐍

v1.1.2 (2026-02-16)

  • Fix: Encoding-Problem beim Bookmarklet behoben (URL Malformed Error). 🔗

v1.1.1 (2026-02-16)

  • Fix: Kritischer Fehler behoben, der das Laden des Wrappers verhinderte. 🐛

v1.1.0 (2026-02-16)

  • Feature: Bestell-Countdown: Zeigt 1 Stunde vor Bestellschluss einen roten Countdown an.
  • Feature: Smart Highlights: Markiere deine Lieblingsspeisen (z.B. "Schnitzel", "Vegetarisch"), damit sie leuchten. 🌟
  • Feature: Changelog: Diese Übersicht der Änderungen. 📜
  • Verbesserung: Live-Check der Version beim Update.

v1.0.3 (2026-02-13)

  • Fix: Update-Link öffnet nun den Installer direkt als Webseite (via htmlpreview).

v1.0.2 (2026-02-13)

  • Sync: Version mit GitHub synchronisiert.

v1.0.1 (2026-02-12)

  • UI: Besseres Design für "Nächste Woche" (Badges).
  • Core: Grundlegende Funktionen (Bestellen, Guthaben, Token-Store).