chore: auto-merge develop → main
Triggered by: 24954cb fix: kiosk settings button position + opened-item expiry badge consistency
This commit is contained in:
+27
-4
@@ -2499,9 +2499,24 @@ function _injectKioskOverlay() {
|
||||
_kioskBridge.hardReload();
|
||||
});
|
||||
|
||||
// Settings button — replaces the native Android settings button
|
||||
const settBtn = document.createElement('button');
|
||||
settBtn.id = '_kiosk_settings_btn';
|
||||
settBtn.textContent = '\u2699\uFE0F';
|
||||
settBtn.title = t('settings.title') || 'Settings';
|
||||
settBtn.style.cssText = btnStyle.replace('font-size:15px', 'font-size:16px');
|
||||
settBtn.addEventListener('click', (e) => {
|
||||
e.stopPropagation();
|
||||
showPage('settings');
|
||||
});
|
||||
|
||||
wrap.appendChild(exitBtn);
|
||||
wrap.appendChild(refBtn);
|
||||
wrap.appendChild(settBtn);
|
||||
headerLeft.appendChild(wrap);
|
||||
|
||||
// Permanently hide the native Android settings button — replaced by the web overlay button above.
|
||||
try { _kioskBridge.setNativeSettingsVisible(false); } catch(_) {}
|
||||
}
|
||||
|
||||
function renderAppliances(appliances) {
|
||||
@@ -3604,8 +3619,16 @@ async function loadDashboard() {
|
||||
if (days !== null && days !== undefined) {
|
||||
let expiryClass, expiryText;
|
||||
if (!isEdible) {
|
||||
expiryClass = 'opened-expiry-spoiled';
|
||||
expiryText = t('expiry.badge_expired');
|
||||
// Only show the red ⛔ badge for items that are genuinely dangerous.
|
||||
// For conserve/condiments classified as safe, use a gentler amber badge.
|
||||
const spoiledSafety = getExpiredSafety(item, Math.abs(item.days_to_expiry ?? 1));
|
||||
if (spoiledSafety.level === 'ok') {
|
||||
expiryClass = 'opened-expiry-soon';
|
||||
expiryText = '\u26A0\uFE0F ' + t('expiry.badge_check_soon');
|
||||
} else {
|
||||
expiryClass = 'opened-expiry-spoiled';
|
||||
expiryText = t('expiry.badge_expired');
|
||||
}
|
||||
} else if (days > 365) {
|
||||
expiryClass = 'opened-expiry-ok';
|
||||
expiryText = t('expiry.badge_stable');
|
||||
@@ -4887,8 +4910,8 @@ function showItemDetail(inventoryId, productId) {
|
||||
function closeModal() {
|
||||
document.getElementById('modal-overlay').style.display = 'none';
|
||||
clearMoveModalTimer();
|
||||
// Restore native kiosk settings button visibility
|
||||
try { if (typeof _kioskBridge !== 'undefined') _kioskBridge.setNativeSettingsVisible(true); } catch (_) {}
|
||||
// Native kiosk settings button is permanently replaced by the web overlay button — keep hidden.
|
||||
try { if (typeof _kioskBridge !== 'undefined') _kioskBridge.setNativeSettingsVisible(false); } catch (_) {}
|
||||
_cancelScaleAutoConfirm(false);
|
||||
_scaleRecipeAutoFillPaused = false;
|
||||
_scaleUserDismissed = false;
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@
|
||||
<!-- Title — left-aligned; grows to fill space -->
|
||||
<div class="header-title-wrap">
|
||||
<h1 class="header-title" onclick="showPage('dashboard')">
|
||||
<img src="assets/img/logo/logo_icon.png" alt="" class="header-logo-icon" aria-hidden="true" /><span data-i18n="nav.title">EverShelf</span><span class="header-version">v1.7.12</span>
|
||||
<img src="assets/img/logo/logo_icon.png" alt="" class="header-logo-icon" aria-hidden="true" /><span data-i18n="nav.title">EverShelf</span><span class="header-version">v1.7.13</span>
|
||||
</h1>
|
||||
<!-- Update badge — shown alongside title, never replaces it -->
|
||||
<span class="header-update-badge" id="header-update-badge" style="display:none"></span>
|
||||
|
||||
@@ -717,7 +717,8 @@
|
||||
"opened_suffix": "— Zu lange geöffnet!",
|
||||
"opened_suffix_ok": "— Geöffnet (noch ok)",
|
||||
"opened_suffix_warning": "— Geöffnet (erst prüfen)",
|
||||
"days_compact": "{n}T"
|
||||
"days_compact": "{n}T",
|
||||
"badge_check_soon": "Bald prüfen"
|
||||
},
|
||||
"status": {
|
||||
"ok": "OK",
|
||||
|
||||
@@ -717,7 +717,8 @@
|
||||
"opened_suffix": "— Opened too long!",
|
||||
"opened_suffix_ok": "— Opened (still ok)",
|
||||
"opened_suffix_warning": "— Opened (check first)",
|
||||
"days_compact": "{n}d"
|
||||
"days_compact": "{n}d",
|
||||
"badge_check_soon": "Check soon"
|
||||
},
|
||||
"status": {
|
||||
"ok": "OK",
|
||||
|
||||
@@ -717,7 +717,8 @@
|
||||
"opened_suffix": "— Aperto da troppo tempo!",
|
||||
"opened_suffix_ok": "— Aperto (ancora ok)",
|
||||
"opened_suffix_warning": "— Aperto (controlla)",
|
||||
"days_compact": "{n}gg"
|
||||
"days_compact": "{n}gg",
|
||||
"badge_check_soon": "Controlla presto"
|
||||
},
|
||||
"status": {
|
||||
"ok": "OK",
|
||||
|
||||
Reference in New Issue
Block a user