[object Object]

← back to Dw Universe

Add rel=noopener and noopener window features to external links

0789476499f12a13e1958cdd1e1c804ac2bad27a · 2026-05-18 20:26:09 -0700 · Steve Abrams

Files touched

Diff

commit 0789476499f12a13e1958cdd1e1c804ac2bad27a
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon May 18 20:26:09 2026 -0700

    Add rel=noopener and noopener window features to external links
---
 public/index.html | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/public/index.html b/public/index.html
index de0509d..5c75734 100644
--- a/public/index.html
+++ b/public/index.html
@@ -441,7 +441,7 @@ footer a:hover { color: var(--ink) }
     <div>Trade-direct wallcovering and fabric since 2008.</div>
   </div>
   <div style="text-align:right">
-    <a href="https://designerwallcoverings.com" target="_blank">designerwallcoverings.com →</a>
+    <a href="https://designerwallcoverings.com" target="_blank" rel="noopener noreferrer">designerwallcoverings.com →</a>
     <div style="margin-top:8px;font-size:11px;letter-spacing:0.32em;text-transform:uppercase;color:var(--ink-faint);font-weight:600">
       <span id="totalCt">—</span> patterns · <span id="totalNiche">—</span> niches
     </div>
@@ -671,7 +671,7 @@ function openPassport() {
           <circle cx="50" cy="50" r="42" fill="currentColor" fill-opacity="${isVisited ? 0.32 : 0.06}" stroke="currentColor" stroke-opacity="${isVisited ? 1 : 0.5}" stroke-width="2"/>
           ${isVisited ? `<path d="M30 52 L44 66 L72 36" fill="none" stroke="currentColor" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>` : ''}
         </svg>`;
-      return `<div class="stamp${isVisited ? ' visited' : ''}" onclick="window.open('https://${n.domain}','_blank')" title="${esc(n.poem || n.label)}">
+      return `<div class="stamp${isVisited ? ' visited' : ''}" onclick="window.open('https://${n.domain}','_blank','noopener')" title="${esc(n.poem || n.label)}">
         ${sealSvg}
         <div class="name">${esc(n.label)}</div>
         ${ts ? `<div class="ts">${ts}</div>` : ''}
@@ -711,7 +711,7 @@ function cardClick(e) {
   if (e.target.closest('.pair-btn')) return;
   const c = e.currentTarget;
   if (c.dataset.slug) stampPassport(c.dataset.slug);
-  if (c.dataset.href) window.open(c.dataset.href, '_blank');
+  if (c.dataset.href) window.open(c.dataset.href, '_blank', 'noopener');
 }
 async function openPair(e, sku, slug) {
   e.stopPropagation(); e.preventDefault();
@@ -1024,7 +1024,7 @@ async function buildMap() {
       // Cmd/Ctrl-click → open the niche site (preserves prior behavior)
       if (e.metaKey || e.ctrlKey || e.shiftKey) {
         stampPassport(n.dataset.slug);
-        window.open('https://' + n.dataset.domain, '_blank');
+        window.open('https://' + n.dataset.domain, '_blank', 'noopener');
         return;
       }
       // Plain click → filter the grid to this niche, with View Transitions morph

← c5c2330 snapshot: 2 file(s) changed, +1 new, ~1 modified  ·  back to Dw Universe  ·  (newest)