← back to Dw Domain Fleet
fix(fleet pdp): toggle hidden until ?theme=N opt-in
34fbe0e962b61c8fd1d6d360820205b87caa2685 · 2026-05-29 13:13:47 -0700 · Steve Abrams
Prior version always set data-page-theme attribute even for default
visitors, defeating the gate. Now: no opt-in → attribute unset, toggle
display:none. Opt-in via URL or localStorage → attribute set, toggle
becomes inline-flex.
Files touched
Diff
commit 34fbe0e962b61c8fd1d6d360820205b87caa2685
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Fri May 29 13:13:47 2026 -0700
fix(fleet pdp): toggle hidden until ?theme=N opt-in
Prior version always set data-page-theme attribute even for default
visitors, defeating the gate. Now: no opt-in → attribute unset, toggle
display:none. Opt-in via URL or localStorage → attribute set, toggle
becomes inline-flex.
---
shared/render.js | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/shared/render.js b/shared/render.js
index 1189663..d0ce0b5 100644
--- a/shared/render.js
+++ b/shared/render.js
@@ -639,13 +639,15 @@ function productPage(cfg, p, related) {
var qs = new URLSearchParams(location.search);
var fromUrl = qs.get('theme');
var saved = null; try { saved = localStorage.getItem('wallco-page-theme'); } catch(e){}
- var theme;
+ var theme = null;
if (fromUrl === '2' || fromUrl === 'theme2') theme = 'theme2';
else if (fromUrl === '1' || fromUrl === 'theme1') theme = 'theme1';
else if (saved === 'theme2' || saved === 'theme1') theme = saved;
- else theme = 'theme1';
- document.documentElement.setAttribute('data-page-theme', theme);
- if (fromUrl) { try { localStorage.setItem('wallco-page-theme', theme); } catch(e){} }
+ if (theme) {
+ document.documentElement.setAttribute('data-page-theme', theme);
+ if (fromUrl) { try { localStorage.setItem('wallco-page-theme', theme); } catch(e){} }
+ }
+ /* No opt-in → no attribute set, toggle stays display:none (gate works). */
})();
</script>
<style id="page-theme-css-fleet">
@@ -662,8 +664,7 @@ function productPage(cfg, p, related) {
background:#fafafa !important; border:1px solid #e5e5e5 !important; box-shadow:none !important;
}
#page-theme-toggle{ display:none; }
- [data-page-theme="theme2"] #page-theme-toggle,
- [data-page-theme="theme1"] #page-theme-toggle{ display:inline-flex; }
+ [data-page-theme] #page-theme-toggle{ display:inline-flex; }
#page-theme-toggle{
position:fixed; top:96px; right:14px; z-index:90;
gap:0; align-items:center;
← 453b000 feat(fleet pdp): theme1/theme2 toggle via ?theme=N query-par
·
back to Dw Domain Fleet
·
fix: strip 3rd-party vendor tokens from product slug/handle ee30c6a →