From d32b5e99afc6f0cffefa594510cda0e4f414db75 Mon Sep 17 00:00:00 2001 From: Ken D'Ambrosio Date: Fri, 22 May 2026 22:50:35 +0000 Subject: Speed up update.rb and fix UI always forcing full rescan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - update.rb: skip exiftool on images marked exif_absent (set after first failed attempt); prevents repeated slow scans of old photos with no EXIF - update.rb: explicit directory argument now implies force — passing a path always rescans that subtree regardless of sentinel mtime - app.rb: /admin/update no longer hardcodes --force; sentinel-based skipping is used by default, making UI updates finish in seconds instead of minutes - admin/album.erb: add "Force rescan all" checkbox to Run Update button; checked state passes force=1 to the server and restores --force behavior - README.md, DESIGN.md: document sentinel skipping, exif_absent flag, and explicit-directory force behavior Co-Authored-By: Claude Sonnet 4.6 --- public/css/style.css | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'public') diff --git a/public/css/style.css b/public/css/style.css index 059d340..abbedf6 100644 --- a/public/css/style.css +++ b/public/css/style.css @@ -400,3 +400,12 @@ tr.delete-marked td { background: rgba(192,57,43,.08); } .update-log { background: #1a1a1a; color: #e0e0e0; font-size: .8rem; line-height: 1.5; padding: 12px 14px; border-radius: var(--radius); max-height: 340px; overflow-y: auto; white-space: pre-wrap; word-break: break-all; margin: 0; } + +/* ── Admin upload ──────────────────────────────────────────────────────── */ +.admin-upload { margin-top: 32px; } +.admin-upload h2 { font-size: 1rem; color: var(--text-dim); margin-bottom: 6px; } +.upload-file-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 8px; } +.upload-file-count { font-size: .85rem; color: var(--text-dim); } +.upload-panel { margin-top: 12px; } +.upload-progress-wrap { background: var(--bg3); border-radius: 4px; height: 8px; overflow: hidden; margin-bottom: 10px; } +.upload-progress-bar { height: 100%; width: 0%; background: var(--accent); border-radius: 4px; transition: width .15s linear; } -- cgit v1.2.3