feat: progress bar startup check with 29 diagnostics (v1.7.21)
- Replace banner checklist with real-time progress bar + per-check label Bar fills smoothly (0→100%) as each check runs; label shows current check. On success: bar stays green briefly then fades. On warnings: amber badges shown for 2.2s. On critical error: bar turns red + error block + Retry. - Extend health_check to 29 comprehensive checks: PHP 8.0+ version, 4 critical extensions (pdo_sqlite/curl/json/mbstring), 4 optional extensions (openssl/fileinfo/zip/intl), PHP memory/timeout/upload, data/ writable, rate_limits/ dir, backups/ dir, actual file-write test, free disk space, SQLite connect, required tables, PRAGMA quick_check integrity, WAL mode, DB file size, inventory row count, .env file, Gemini AI key, Bring! credentials + token, cURL SSL version, internet reachability (Gemini API) - Fresh-install detection: if dispensa.db not found + data/ writable → OK (auto-create) - Translations: startup.* expanded to 28 keys in IT, EN, DE, FR, ES - CSS: new .preloader-progress-wrap, .preloader-bar-track, .preloader-bar, .preloader-check-label, .preloader-warn-badge; removed old .preloader-checks - Version: v1.7.21, assets v=20260520b
This commit is contained in:
+11
-5
@@ -11,7 +11,7 @@
|
||||
<title>EverShelf</title>
|
||||
<link rel="manifest" href="manifest.json">
|
||||
<link rel="icon" type="image/png" href="assets/img/logo/logo_icon.png">
|
||||
<link rel="stylesheet" href="assets/css/style.css?v=20260520a">
|
||||
<link rel="stylesheet" href="assets/css/style.css?v=20260520b">
|
||||
<!-- QuaggaJS for barcode scanning -->
|
||||
<script src="https://cdn.jsdelivr.net/npm/@ericblade/quagga2@1.8.4/dist/quagga.min.js"></script>
|
||||
<!-- @xenova/transformers: ES-module bootstrap that exposes a lazy category-classifier as window._categoryPipelinePromise -->
|
||||
@@ -55,10 +55,16 @@
|
||||
<div class="app-preloader-inner">
|
||||
<img src="assets/img/logo/logo.png" alt="EverShelf" class="app-preloader-logo" />
|
||||
<div class="app-preloader-spinner" id="preloader-spinner"></div>
|
||||
<div id="preloader-checks" class="preloader-checks" style="display:none"></div>
|
||||
<div id="preloader-progress-wrap" class="preloader-progress-wrap" style="display:none">
|
||||
<div class="preloader-bar-track">
|
||||
<div id="preloader-bar" class="preloader-bar"></div>
|
||||
</div>
|
||||
<div id="preloader-check-label" class="preloader-check-label"> </div>
|
||||
</div>
|
||||
<div id="preloader-warnings" class="preloader-warnings" style="display:none"></div>
|
||||
<div id="preloader-error-msg" class="preloader-error-msg" style="display:none"></div>
|
||||
<button id="preloader-retry-btn" class="preloader-retry-btn" style="display:none" onclick="_startupRetry()">🔄 <span data-i18n="startup.retry">Riprova</span></button>
|
||||
<span class="app-preloader-version" id="preloader-version">v1.7.20</span>
|
||||
<span class="app-preloader-version" id="preloader-version">v1.7.21</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -71,7 +77,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.20</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.21</span>
|
||||
</h1>
|
||||
<!-- Update badge — shown alongside title, never replaces it -->
|
||||
<span class="header-update-badge" id="header-update-badge" style="display:none"></span>
|
||||
@@ -1607,6 +1613,6 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="assets/js/app.js?v=20260520a"></script>
|
||||
<script src="assets/js/app.js?v=20260520b"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user