diff --git a/api/src/routes/fcc-lookup.ts b/api/src/routes/fcc-lookup.ts
index d0791d3..f4ec8f2 100644
--- a/api/src/routes/fcc-lookup.ts
+++ b/api/src/routes/fcc-lookup.ts
@@ -691,7 +691,7 @@ router.get("/api/v1/fcc/lookup", async (req, res) => {
checks.push({
id: "bdc_filing",
- label: "Broadband Data Collection (BDC)",
+ label: "BDC Filing (Broadband + Voice Subscription Data)",
status: bdcStatus,
detail: bdcDetail,
action_url: null,
diff --git a/site/public/tools/fcc-compliance-check/index.html b/site/public/tools/fcc-compliance-check/index.html
index 91e317e..80bad32 100644
--- a/site/public/tools/fcc-compliance-check/index.html
+++ b/site/public/tools/fcc-compliance-check/index.html
@@ -174,48 +174,48 @@ Send reset link
var checks = document.getElementById("checks-container");
if (!checks) return;
- // BDC toggle — two-step: broadband? then voice? (always both questions)
+ // BDC toggle — two-step: voice? then broadband? (always both questions)
+ // Voice-only retail providers also need BDC Voice Subscription filing
// Stores result on card as data-bdc-slug for the CTA to pick up
if (!checks.querySelector(".pw-bdc-toggle")) {
var cards = checks.querySelectorAll(":scope > div");
cards.forEach(function(card) {
- if (card.textContent.indexOf("Broadband Data Collection") < 0) return;
+ if (card.textContent.indexOf("BDC") < 0) return;
var detail = card.querySelectorAll("p")[1];
if (!detail) return;
var icon = card.querySelector("span");
var flexDiv = card.querySelector(".flex-1");
- function askBroadband() {
+ function askVoiceFirst() {
var q1 = document.createElement("div");
q1.className = "pw-bdc-toggle mt-3 flex items-center gap-2";
q1.innerHTML =
- 'During ' + (new Date().getFullYear() - 1) + ', did you provide broadband internet access in the United States through resale or facilities-based service (not as an outside sales agent)?' +
- '' +
- '';
+ 'During ' + (new Date().getFullYear() - 1) + ', did you offer retail voice service (VoIP, CLEC, or wireline) to end users in the United States?' +
+ '' +
+ '';
flexDiv.appendChild(q1);
q1.addEventListener("click", function(ev) {
- var b = ev.target.closest("[data-bb]");
+ var b = ev.target.closest("[data-vc]");
if (!b) return;
q1.remove();
- askVoice(b.dataset.bb === "yes");
+ askBroadband(b.dataset.vc === "yes");
});
}
- function askVoice(hasBroadband) {
+ function askBroadband(hasVoice) {
var q2 = document.createElement("div");
q2.className = "pw-bdc-toggle mt-3 flex items-center gap-2";
q2.innerHTML =
- (hasBroadband ? '\u2713 Broadband' : '') +
- 'During the filing period of ' + (new Date().getFullYear() - 1) + ', did you offer retail voice service to end users in the United States?' +
- '' +
- '';
+ (hasVoice ? '\u2713 Retail voice' : '') +
+ 'During ' + (new Date().getFullYear() - 1) + ', did you provide broadband internet access in the United States through resale or facilities-based service (not as an outside sales agent)?' +
+ '' +
+ '';
flexDiv.appendChild(q2);
q2.addEventListener("click", function(ev) {
- var b = ev.target.closest("[data-vc]");
+ var b = ev.target.closest("[data-bb]");
if (!b) return;
q2.remove();
- var hasVoice = b.dataset.vc === "yes";
- finalize(hasBroadband, hasVoice);
+ finalize(b.dataset.bb === "yes", hasVoice);
});
}
@@ -251,7 +251,7 @@ Send reset link
}
}
- askBroadband();
+ askVoiceFirst();
});
}