[object Object]

← back to Thesetdecorator

TSD: graceful onerror fallback on best-sellers card images (DTD verdict B)

f314640337d3db53c867982b06e0e38674c407be · 2026-06-03 14:18:58 -0700 · Steve

Band-aid for prod bug #2 (best-sellers images 404 via spoon_all_designs
local_path mismatch). Added onerror=this.remove() to the card <img> so a
broken image just disappears, leaving the clean black .img box (identical to
the existing null-image case) instead of a broken-image icon. Touches zero
sensitive DB data; stacks with the real data fix (queued for Steve). Verified:
inline JS still parses, page 200, onerror present. Static — needs deploy.

Files touched

Diff

commit f314640337d3db53c867982b06e0e38674c407be
Author: Steve <steve@designerwallcoverings.com>
Date:   Wed Jun 3 14:18:58 2026 -0700

    TSD: graceful onerror fallback on best-sellers card images (DTD verdict B)
    
    Band-aid for prod bug #2 (best-sellers images 404 via spoon_all_designs
    local_path mismatch). Added onerror=this.remove() to the card <img> so a
    broken image just disappears, leaving the clean black .img box (identical to
    the existing null-image case) instead of a broken-image icon. Touches zero
    sensitive DB data; stacks with the real data fix (queued for Steve). Verified:
    inline JS still parses, page 200, onerror present. Static — needs deploy.
---
 public/best-sellers.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/public/best-sellers.html b/public/best-sellers.html
index 1a21e4e..5728203 100644
--- a/public/best-sellers.html
+++ b/public/best-sellers.html
@@ -212,7 +212,7 @@
     const widths = '<span class="pill">' + (i.widths_available || [24,36,52]).join('" / ') + '"</span>';
     const native = '<span class="pill">native ' + i.native_width_in + '"</span>';
     return '<a class="bs-card" href="/best-sellers/' + i.id + '" aria-label="' + esc(i.title) + '">' +
-             '<div class="img">' + (i.image_url ? '<img src="' + i.image_url + '" loading="lazy" alt="">' : '') + '</div>' +
+             '<div class="img">' + (i.image_url ? '<img src="' + i.image_url + '" loading="lazy" alt="" onerror="this.remove()">' : '') + '</div>' +
              '<div class="meta">' +
                '<div class="vendor">' + esc(i.vendor) + '</div>' +
                '<h3 class="title">' + esc(i.title) + '</h3>' +

← eaae334 backlog: PROD BUG #2 found — best-sellers images 404 (spoon_  ·  back to Thesetdecorator  ·  backlog: best-sellers band-aid shipped (f314640, verdict B) 03b2e81 →