← back to Dw Signup Fulfillment
TK-10021: stage logged-in Apply-for-Trade fix (proposal + deploy.py, dry-run clean)
302af39d9ed00c7925ce1a74baf7dd8392150904 · 2026-07-28 13:06:49 -0700 · Steve Abrams
Files touched
A theme-proposals/loggedin-trade-entry/MEMO.md
Diff
commit 302af39d9ed00c7925ce1a74baf7dd8392150904
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue Jul 28 13:06:49 2026 -0700
TK-10021: stage logged-in Apply-for-Trade fix (proposal + deploy.py, dry-run clean)
---
theme-proposals/loggedin-trade-entry/MEMO.md | 34 ++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/theme-proposals/loggedin-trade-entry/MEMO.md b/theme-proposals/loggedin-trade-entry/MEMO.md
new file mode 100644
index 0000000..920ebab
--- /dev/null
+++ b/theme-proposals/loggedin-trade-entry/MEMO.md
@@ -0,0 +1,34 @@
+# TK-10021 — Logged-in designers can't reach Apply-for-Trade
+
+**Store:** designer-laboratory-sandbox.myshopify.com · **Live theme:** 144396058675 (main)
+**Chosen approach:** *Auto-render trade-only view* (Steve, 2026-07-28)
+**Status:** dry-run PASSED (all anchors 1×, backups written). Deploy is Steve-gated.
+
+## Bug
+`layout/theme.liquid:1360` rendered the sign-in modal `{% unless customer %}` — logged-out
+only. The modal is the *only* host of the Apply-for-Trade form, so the instant a designer
+signs up (now authenticated) the trade form vanishes. Backend `/trade/apply` was always fine;
+the entry point disappeared.
+
+## Fix (3 anchored edits — see deploy.py)
+1. **theme.liquid:1360** gate → `{% unless customer.tags contains 'trade' %}`
+ (renders for logged-out AND logged-in non-trade; hides only for already-`trade` customers).
+2. **snippets/dw-signin-modal.liquid** — wrap returning-sign-in / offer / toggle / Google /
+ retail blocks in `{%- unless customer -%}`; add a logged-in `Apply for Trade Pricing`
+ header; default-show + prefill the trade form (`{{ customer.email }}`, company).
+3. **templates/customers/account.liquid** — add an `Apply for Trade Pricing →` trigger
+ (`data-dw-signin`) shown only to non-trade customers; it opens the (now-rendered) modal
+ straight to the trade-only view.
+
+## Deploy
+```
+cd theme-proposals/loggedin-trade-entry && python3 deploy.py # dry-run (default)
+cd theme-proposals/loggedin-trade-entry && python3 deploy.py --apply # Steve-gated live PUT
+```
+deploy.py backs up each live asset to `backups/` before patching and aborts fail-loud if any
+anchor drifted. Rollback = PUT the matching `backups/*.bak` back.
+
+## Verify after apply
+Signed in as a NON-trade customer → account page shows "Apply for Trade Pricing →" → opens
+the modal to the trade form (email prefilled) → submit → `/trade/apply` → review email.
+A `trade`-tagged customer sees neither the CTA nor the modal.
← 447c471 auto-save: 2026-07-28T13:00:43 (3 files) — lib/config.js lib
·
back to Dw Signup Fulfillment
·
auto-save: 2026-07-28T13:30:51 (6 files) — lib/config.js lib 378aafa →