← back to Commercialrealestate
broker-grid: 'Added' (created_at) admin-card column now renders date+time w/ ISO title — comply with admin-card timestamp HARD rule (was date-only via dt())
8b81a61e536e1323ef874815d1a420a823f26a6e · 2026-08-03 09:56:31 -0700 · Steve Abrams
Files touched
M public/broker-grid.html
Diff
commit 8b81a61e536e1323ef874815d1a420a823f26a6e
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Mon Aug 3 09:56:31 2026 -0700
broker-grid: 'Added' (created_at) admin-card column now renders date+time w/ ISO title — comply with admin-card timestamp HARD rule (was date-only via dt())
---
public/broker-grid.html | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/public/broker-grid.html b/public/broker-grid.html
index 3730250..b26bd39 100644
--- a/public/broker-grid.html
+++ b/public/broker-grid.html
@@ -153,7 +153,10 @@ async function findEmail(id){
}catch(e){ hunt[id]={miss:e.message}; }
render();
}
-const dt=s=>{ if(!s) return '—'; try{ return new Date(s).toLocaleDateString(undefined,{year:'numeric',month:'short',day:'numeric'}); }catch(e){ return '—'; } };
+// 'Added' (created_at) is an admin-card timestamp → date AND time, full ISO in title=
+// (Steve HARD rule). created_at is the only t:'date' column, so this formatter is safe to
+// upgrade wholesale; pure DATE fields (sold_date) use fdate() and stay date-only.
+const dt=s=>{ if(!s) return '—'; try{ const d=new Date(s); if(isNaN(d)) return '—'; const t=d.toLocaleString(undefined,{year:'numeric',month:'short',day:'numeric',hour:'numeric',minute:'2-digit'}); return '<span title="'+esc(d.toISOString())+'">'+esc(t)+'</span>'; }catch(e){ return '—'; } };
// Every field carries a group `g` (for the sort menu optgroups + organized rail toggles).
// Order below IS the column order. Every field is sortable (raw-value sort, any type).
const COLS=[
← 64d69b9 condos viewer: make list-view sticky-column city drillable t
·
back to Commercialrealestate
·
broker-grid: esc() now escapes > too (defensive, Cody follow 864b07c →