From fa36e54d878a3274f7728eb0b84c351b33f3c6ed Mon Sep 17 00:00:00 2001 From: Ken D'Ambrosio Date: Sat, 9 May 2026 15:53:18 +0000 Subject: Fix taken_at timezone: store and display as camera local time MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit EXIF DateTimeOriginal has no timezone — it's the camera's wall clock. Storing it via .iso8601 attached +00:00 (server TZ), causing browsers to shift the time to their local zone when parsing. Switch to strftime('%Y-%m-%dT%H:%M:%S') so no offset is written. JS strips any existing +00:00 suffix from already-stored values so old data is also displayed correctly. Co-Authored-By: Claude Sonnet 4.6 --- scripts/update.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'scripts/update.rb') diff --git a/scripts/update.rb b/scripts/update.rb index 7ff0007..8e4cdd5 100644 --- a/scripts/update.rb +++ b/scripts/update.rb @@ -80,7 +80,7 @@ def enrich_image(full, name, meta) exif = MiniExiftool.new(full, numerical: false) raw = exif.date_time_original || exif.create_date || exif.date_time if raw - meta['taken_at'] = raw.respond_to?(:iso8601) ? raw.iso8601 : raw.to_s + meta['taken_at'] = raw.respond_to?(:strftime) ? raw.strftime('%Y-%m-%dT%H:%M:%S') : raw.to_s puts " #{name}: taken_at = #{meta['taken_at']}" end rescue StandardError => e -- cgit v1.2.3