Add engagement authorization, remove price headers from intake pages, fix duplicate emails

- Add clickwrap authorization checkbox to fcc-compliance, state-puc, neca-ocn order pages
- Store engagement_accepted_at/ip/version in compliance_orders (migration 074)
- Add 499-A past-due/multi-year eSign engagement letter generator
- Gate 499-A handler on engagement signature for past-due/multi-year orders
- Remove price/tax/fee headers from all 19 intake pages (post-payment only)
- Fix duplicate confirmation email for compliance_batch orders
- Add USAC past-due fee negotiation research doc

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
justin 2026-04-28 02:50:02 -05:00
parent 6171c64b90
commit cbfb8d6091
29 changed files with 602 additions and 52 deletions

View file

@ -170,6 +170,11 @@ select:focus,input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 2px
<input type="text" id="promo-code" placeholder="SAVE20" style="margin-bottom:.75rem">
</div>
<label style="display:flex;align-items:flex-start;gap:.5rem;padding:.65rem;margin-top:.75rem;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.75rem;color:#6b7280;line-height:1.5">
<input type="checkbox" id="engage-check" required style="margin-top:2px;accent-color:#1e3a5f">
<span>I authorize Performance West Inc. to prepare and submit regulatory filings on my behalf as described above. I understand Performance West provides compliance consulting services, not legal advice or legal representation. I confirm the information I provide is accurate to the best of my knowledge. <a href="/terms" target="_blank" style="color:#1e3a5f;text-decoration:underline">Terms of Service</a></span>
</label>
<div style="margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end">
<button class="btn" style="background:#e5e7eb;color:#374151" id="btn-back-3">&larr; Back</button>
<button class="btn btn-primary" id="btn-pay" disabled>Continue to Payment</button>
@ -410,6 +415,12 @@ select:focus,input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 2px
const errEl = document.getElementById('checkout-error');
errEl.style.display = 'none';
if (!document.getElementById('engage-check').checked) {
errEl.textContent = 'Please accept the authorization terms to continue.';
errEl.style.display = 'block';
return;
}
const customerName = document.getElementById('customer-name').value.trim();
const customerEmail = document.getElementById('customer-email').value.trim();
if (!customerName || !customerEmail) {