Compare commits

...

9 Commits

Author SHA1 Message Date
Kantine Wrapper
4aa67c9cbe chore: update build artifacts for v1.5.1 2026-03-04 11:42:04 +01:00
Kantine Wrapper
12c55ef883 feat: Add a collapsing video banner to the installation page. 2026-03-04 11:41:58 +01:00
Kantine Wrapper
1e9dd9a3b5 chore: update build artifacts for v1.5.1 2026-03-04 11:39:19 +01:00
Kantine Wrapper
db8b2c5629 fix: Correct Friday order payload preorder and time, and update version to v1.5.1. 2026-03-04 11:39:09 +01:00
Kantine Wrapper
67533875bd chore: update build artifacts for v1.5.1 2026-03-04 11:33:37 +01:00
Kantine Wrapper
99809dafb7 fix: correct preorder flag and date format for Friday orders (v1.5.1) 2026-03-04 11:33:37 +01:00
Kantine Wrapper
4cf3e4adc2 chore: update build artifacts for v1.5.0 2026-02-26 17:37:34 +01:00
Kantine Wrapper
4fe7950697 style: update favicon_base.png 2026-02-26 17:37:34 +01:00
Kantine Wrapper
e162a16550 build: autogenerate favicon.png and update installer assets for v1.5.0 2026-02-26 17:36:58 +01:00
11 changed files with 54 additions and 21 deletions

View File

@@ -146,6 +146,19 @@ cat > "$DIST_DIR/install.html" << INSTALLEOF
</style>
</head>
<body>
<!-- Banner Video: plays once, collapses after ending -->
<div id="banner-video-wrap" style="width: 100%; max-width: 600px; margin: 0 auto 20px auto; border-radius: 12px; overflow: hidden; pointer-events: none; user-select: none; max-height: 400px; opacity: 1; transition: max-height 0.8s ease-in-out, opacity 0.6s ease-in-out, margin 0.8s ease-in-out;">
<video id="banner-video" autoplay muted playsinline disablepictureinpicture style="width: 100%; display: block;" src="https://github.com/TauNeutrino/kantine-overview/raw/main/dist/Arrow_and_fork_fly_away_bd43310bea.mp4"></video>
</div>
<script>
document.getElementById('banner-video').addEventListener('ended', function() {
var w = document.getElementById('banner-video-wrap');
w.style.maxHeight = '0';
w.style.opacity = '0';
w.style.marginBottom = '0';
});
</script>
<div style="text-align: center; margin-bottom: 30px;">
<h1 style="margin-bottom: 5px; display: flex; align-items: center; justify-content: center; gap: 10px;">
<img src="$FAVICON_URL" alt="Logo" style="width: 38px; height: 38px;">

View File

@@ -1,3 +1,6 @@
## 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:

BIN
dist/Arrow_and_fork_fly_away_bd43310bea.mp4 vendored Executable file

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

35
dist/install.html vendored

File diff suppressed because one or more lines are too long

View File

@@ -2007,7 +2007,7 @@ body {
const favicon = document.createElement('link');
favicon.rel = 'icon';
favicon.type = 'image/png';
favicon.href = 'data:image/png;base64,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';
favicon.href = 'data:image/png;base64,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';
document.head.appendChild(favicon);
// Inject Google Fonts if not already present
@@ -2031,7 +2031,7 @@ body {
<div class="brand">
<span class="material-icons-round logo-icon">restaurant_menu</span>
<div class="header-left">
<h1>Kantinen Übersicht <small class="version-tag" style="font-size: 0.6em; opacity: 0.7; font-weight: 400; cursor: pointer;" title="Klick für Versionsmenü">v1.5.0</small></h1>
<h1>Kantinen Übersicht <small class="version-tag" style="font-size: 0.6em; opacity: 0.7; font-weight: 400; cursor: pointer;" title="Klick für Versionsmenü">v1.5.1</small></h1>
<div id="last-updated-subtitle" class="subtitle"></div>
</div>
<div class="nav-group" style="margin-left: 1rem;">
@@ -2173,7 +2173,7 @@ body {
</div>
<div class="modal-body">
<div style="margin-bottom: 1rem;">
<strong>Aktuell:</strong> <span id="version-current">v1.5.0</span>
<strong>Aktuell:</strong> <span id="version-current">v1.5.1</span>
</div>
<div class="dev-toggle">
<label style="display:flex;align-items:center;gap:8px;cursor:pointer;">
@@ -2861,7 +2861,7 @@ body {
venue: VENUE_ID,
states: [],
order_state: 1,
date: `${date}T10:00:00.000Z`,
date: `${date}T10:30:00Z`,
payment_method: 'payroll',
customer: {
first_name: userData.first_name,
@@ -2869,7 +2869,7 @@ body {
email: userData.email,
newsletter: false
},
preorder: false,
preorder: true,
delivery_fee: 0,
cash_box_table_name: null,
take_away: false
@@ -4030,7 +4030,7 @@ body {
// Periodic update check (runs on init + every hour)
async function checkForUpdates() {
const currentVersion = 'v1.5.0';
const currentVersion = 'v1.5.1';
const devMode = localStorage.getItem('kantine_dev_mode') === 'true';
try {
@@ -4071,7 +4071,7 @@ body {
const modal = document.getElementById('version-modal');
const container = document.getElementById('version-list-container');
const devToggle = document.getElementById('dev-mode-toggle');
const currentVersion = 'v1.5.0';
const currentVersion = 'v1.5.1';
if (!modal) return;
modal.classList.remove('hidden');

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 MiB

After

Width:  |  Height:  |  Size: 2.0 MiB

View File

@@ -911,7 +911,7 @@
venue: VENUE_ID,
states: [],
order_state: 1,
date: `${date}T10:00:00.000Z`,
date: `${date}T10:30:00Z`,
payment_method: 'payroll',
customer: {
first_name: userData.first_name,
@@ -919,7 +919,7 @@
email: userData.email,
newsletter: false
},
preorder: false,
preorder: true,
delivery_fee: 0,
cash_box_table_name: null,
take_away: false

View File

@@ -1 +1 @@
v1.5.0
v1.5.1