[object Object]

← back to Rentv 2026

rentv-website.agentabrams.com live: app-login-gated, latest news shell deployed

daf98cbe1f418ee600e7cb53724787b9d83c756c · 2026-07-20 14:08:23 -0700 · Steve Abrams

Files touched

Diff

commit daf98cbe1f418ee600e7cb53724787b9d83c756c
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon Jul 20 14:08:23 2026 -0700

    rentv-website.agentabrams.com live: app-login-gated, latest news shell deployed
---
 data/news.json        |  2 +-
 data/ticker.json      |  2 +-
 public/index.html     | 14 +++++++++++++-
 scripts/pull-news.mjs |  5 ++++-
 4 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/data/news.json b/data/news.json
index a5c9d1a0..f5e15195 100644
--- a/data/news.json
+++ b/data/news.json
@@ -1,6 +1,6 @@
 {
  "source": "rentv.com — live",
- "fetched_at": "2026-07-20T21:02:21.503Z",
+ "fetched_at": "2026-07-20T21:06:12.438Z",
  "count": 30,
  "items": [
   {
diff --git a/data/ticker.json b/data/ticker.json
index ed068b18..275db1f7 100644
--- a/data/ticker.json
+++ b/data/ticker.json
@@ -1,5 +1,5 @@
 {
-  "fetched_at": "2026-07-20T21:04:02.483Z",
+  "fetched_at": "2026-07-20T21:06:12.440Z",
   "la_office_vac": {
     "label": "LA OFFICE VAC",
     "value": "23.1%",
diff --git a/public/index.html b/public/index.html
index b8c21044..11457e2a 100644
--- a/public/index.html
+++ b/public/index.html
@@ -72,7 +72,7 @@
 </head>
 <body>
   <div class="util"><div class="wrap">
-    <div class="ticker"><span><b>CRE INDEX</b> 4,182 <span class="up">▲0.6%</span></span><span><b>10-YR</b> 4.21%</span><span><b>LA OFFICE VAC</b> 23.1%</span><span><b>IE INDUSTRIAL CAP</b> 5.2%</span></div>
+    <div class="ticker" id="ticker"><span><b>CRE INDEX</b> …</span><span><b>10-YR</b> …</span><span><b>LA OFFICE VAC</b> …</span><span><b>IE INDUSTRIAL CAP</b> …</span></div>
     <div class="acts"><a href="#">Newsletters</a><a href="#">Advertise</a><a href="#">Log In</a><a class="sub" href="#news">Subscribe</a></div>
   </div></div>
 
@@ -140,7 +140,19 @@ async function load(){
 }
 document.getElementById('nav').addEventListener('click',e=>{const a=e.target.closest('a[data-cat]');if(!a)return;e.preventDefault();document.querySelectorAll('#nav a').forEach(x=>x.classList.remove('on'));a.classList.add('on');cat=a.dataset.cat;render();window.scrollTo({top:0,behavior:'smooth'});});
 document.getElementById('subbtn').onclick=()=>{if((document.getElementById('email').value||'').includes('@')){document.getElementById('subok').style.display='block';}};
+async function loadTicker(){
+  try{
+    const t=await (await fetch('/api/ticker')).json();
+    const cell=m=>{ if(!m||!m.value) return '';
+      const amt=m.change_pct!=null?Math.abs(m.change_pct)+'%':(m.change_bps!=null?Math.abs(m.change_bps)+'bps':'');
+      let arr=''; if(m.dir==='up')arr=' <span class="up">▲'+amt+'</span>'; else if(m.dir==='down')arr=' <span class="dn">▼'+amt+'</span>';
+      return '<span><b>'+esc(m.label)+'</b> '+esc(m.value)+arr+'</span>'; };
+    const html=[t.cre_index,t.ten_yr,t.la_office_vac,t.ie_industrial_cap].map(cell).filter(Boolean).join('');
+    if(html) document.getElementById('ticker').innerHTML=html;
+  }catch(e){/* keep prior ticker on failure */}
+}
 load(); setInterval(load, 120000); // refresh the live feed every 2 minutes
+loadTicker(); setInterval(loadTicker, 120000); // live market ticker
 </script>
 </body>
 </html>
diff --git a/scripts/pull-news.mjs b/scripts/pull-news.mjs
index 604bb023..5e853f30 100644
--- a/scripts/pull-news.mjs
+++ b/scripts/pull-news.mjs
@@ -40,5 +40,8 @@ try {
 } catch (e) {
   console.error('pull failed:', e.message);
   // never overwrite a good cache with nothing — leave last-good in place
-  process.exit(1);
+  console.error('(news kept last-good; continuing to ticker refresh)');
 }
+
+// Refresh the live market ticker on the same cron (runs regardless of news outcome).
+try { await import('./pull-ticker.mjs'); } catch (e) { console.error('ticker refresh failed:', e.message); }

← a2941af4 snapshot before rentv-website.agentabrams.com go-live  ·  back to Rentv 2026  ·  add in-shell article.html + section.html reader templates; w d9ec1da5 →