← back to Marketing Command Center
Guard: suppress amplify controls for never-front-facing brands (Schumacher) on #vendors panel
3b784fd4a687120e13a550b183cc252ff354371e · 2026-08-25 10:12:13 -0700 · Steve Abrams
Files touched
M public/panels/vendors.js
Diff
commit 3b784fd4a687120e13a550b183cc252ff354371e
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue Aug 25 10:12:13 2026 -0700
Guard: suppress amplify controls for never-front-facing brands (Schumacher) on #vendors panel
---
public/panels/vendors.js | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/public/panels/vendors.js b/public/panels/vendors.js
index fb27e7d..4b7dd5a 100644
--- a/public/panels/vendors.js
+++ b/public/panels/vendors.js
@@ -174,6 +174,11 @@ window.MCC_PANELS['vendors'] = {
if (r.posts && r.posts.length) {
const brand = r.brand || r.handle || '';
const handle = (r.handle || '').replace(/^@/, '');
+ // Never-front-facing brands (standing brand policy): must NOT appear on any
+ // customer-facing / marketing / SHARE surface. Amplifying their posts to DW's
+ // public X/IG would leak them, so the amplify + account controls are suppressed
+ // and replaced with an internal-only note. Extend this list as policy dictates.
+ const restricted = /\bschumacher\b/i.test(brand);
const items = r.posts.slice(0, 3).map(p => {
const cap = esc((p.caption || '').replace(/\s+/g, ' ').slice(0, 120)) || '(no caption)';
const when = p.timestamp ? p.timestamp.slice(0, 10) : '';
@@ -193,7 +198,9 @@ window.MCC_PANELS['vendors'] = {
// amp-row is a SIBLING of the anchor (never nested inside the <a>), so the
// trigger buttons don't fire navigation. The "Post from" button carries a
// live count badge; "Make unique" opens the review area below.
- const ampRow = `<div class="amp-row">
+ const ampRow = restricted
+ ? `<div class="amp-row amp-restricted"><span class="amp-note" title="Brand policy: this line must not appear on any customer-facing / marketing / share surface. Internal reporting only.">🔒 Internal only — do not amplify</span></div>`
+ : `<div class="amp-row">
<button type="button" class="amp-btn amp-from" data-amp="from" data-amp-id="${id}" aria-haspopup="true" aria-expanded="false" title="Choose which owned DW accounts this post is for">Post from ▾${selCount ? ` <span class="amp-count">· ${selCount}</span>` : ''}</button>
<button type="button" class="amp-btn amp-uniq" data-amp="unique" data-amp-id="${id}" title="Generate a unique caption per selected account (same photo, different text)">✦ Make unique</button>
<button type="button" class="amp-btn" data-amp="x" data-amp-id="${id}" title="Open X composer with a DW visit link">𝕏 Post</button>
@@ -202,7 +209,8 @@ window.MCC_PANELS['vendors'] = {
</div>`;
// Review area (empty until "Make unique"); id-tagged so the delegated
// handler can find + (re)fill it. Rebuilt every render from stored state.
- const review = `<div class="amp-review" data-amp-review="${id}" hidden></div>`;
+ // Suppressed entirely for restricted (never-front-facing) brands.
+ const review = restricted ? '' : `<div class="amp-review" data-amp-review="${id}" hidden></div>`;
return `<div class="ig-item" data-post-id="${esc(postId)}">${anchor}${ampRow}${review}</div>`;
}).join('');
return `<div class="ig-list">${items}</div>`;
@@ -593,6 +601,7 @@ window.MCC_PANELS['vendors'] = {
.ig-li-meta{font-size:10.5px;color:var(--muted,#8a8372);font-variant-numeric:tabular-nums}
.ig-item{display:flex;flex-direction:column;gap:2px}
.amp-row{display:flex;gap:5px;justify-content:flex-end;padding:1px 2px 2px;flex-wrap:wrap}
+ .amp-note{font-size:10.5px;line-height:1;color:#a1341f;border:1px solid #e5c9c2;background:#fbf1ee;border-radius:6px;padding:4px 8px;white-space:nowrap}
.amp-btn{font-size:10.5px;line-height:1;padding:3px 7px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted,#8a8372);cursor:pointer;opacity:.55;transition:opacity .12s,background .12s,color .12s;white-space:nowrap}
.amp-btn:hover{opacity:1;background:#f3eee2;color:inherit}
.amp-btn.amp-strong{border-color:#c9b98f;color:#8a6d2f}
← 7e55f1a Add per-post "Post from" account selector + "Make unique" pe
·
back to Marketing Command Center
·
mcc: credential-safe fetch guard in shell (inoculate root-re 37ff9a8 →