From 9460e8320fa70c355499a2db153ea2b8ab8ceab9 Mon Sep 17 00:00:00 2001
From: Joel Brock
Date: Thu, 21 May 2026 12:11:23 -0700
Subject: [PATCH] WIP: form copy and field visibility adjustments
---
app/page.tsx | 2 +-
app/report/page.tsx | 2 +-
components/EngagementForm.tsx | 2 +-
components/SiteChrome.tsx | 7 +-
config/form.ts | 145 +++++++++++++++++-----------------
5 files changed, 79 insertions(+), 79 deletions(-)
diff --git a/app/page.tsx b/app/page.tsx
index ab21fe0..451ba8a 100644
--- a/app/page.tsx
+++ b/app/page.tsx
@@ -61,7 +61,7 @@ function MissingLinkParams() {
Open the form using the personalized link from your email. If you no longer have it,
- please contact your engagement coordinator and ask for a fresh link.
+ please contact Chris @ FCI and ask for a fresh link.
);
diff --git a/app/report/page.tsx b/app/report/page.tsx
index b2ab203..983c068 100644
--- a/app/report/page.tsx
+++ b/app/report/page.tsx
@@ -69,7 +69,7 @@ function MissingLinkParams() {
Open the report using the personalized link from your email. If you no
- longer have it, please contact your engagement coordinator and ask for
+ longer have it, please contact Chris @ FCI and ask for
a fresh link.
diff --git a/components/EngagementForm.tsx b/components/EngagementForm.tsx
index 4f93c19..50c4d89 100644
--- a/components/EngagementForm.tsx
+++ b/components/EngagementForm.tsx
@@ -476,7 +476,7 @@ function SubmitBar({
? draftSavedAt
? `Draft saved ${formatRelative(draftSavedAt)} (locally on this device)`
: "Editing — your draft will save automatically"
- : "Submitting saves a new check-in record on your co-op."}
+ : ""}
)}
diff --git a/components/SiteChrome.tsx b/components/SiteChrome.tsx
index 7dc12d4..209b63a 100644
--- a/components/SiteChrome.tsx
+++ b/components/SiteChrome.tsx
@@ -41,15 +41,14 @@ export function SiteFooter() {
- “A grocery co-op begins with people who decide to feed each other well.”
+ “Thank you for completing this survey.”
- Need a fresh link? Contact your engagement coordinator.
+ Need a fresh link? Contact Chris @ FCI.
- Your responses go directly to your co-op's record. Nothing is shared with third
- parties. This page is only reachable through a personalized link issued to you.
+ Your responses go directly to your co-op's record. This page is only reachable through a personalized link issued to you.
diff --git a/config/form.ts b/config/form.ts
index b6dadf5..cfd918c 100644
--- a/config/form.ts
+++ b/config/form.ts
@@ -186,15 +186,6 @@ const stage0: StageSectionConfig = {
// type: "currency",
// civiField: `${G0}.Projected_sales_at_maturity`,
// },
- {
- name: "FTEs",
- label: "Projected FTEs",
- type: "number",
- visibleWhen: visibleAtOrAfter(S.BusinessFeasibility, S.StoreImplementation, S.Stabilize),
- civiField: `${G0}.FTEs`,
- step: 0.1,
- help: "Number of full-time equivalent (FTE) employees planned to work at the store.",
- },
{
name: "Actual_FTE",
label: "Actual FTE",
@@ -210,12 +201,12 @@ const stage0: StageSectionConfig = {
visibleWhen: visibleAtOrAfter(S.Stabilize),
civiField: `${G0}.Total_cost_of_project`,
},
- {
- name: "Member_equity_total",
- label: "Member equity total needed",
- type: "currency",
- civiField: `${G0}.Member_equity_total`
- },
+ // {
+ // name: "Member_equity_total",
+ // label: "Member equity total needed",
+ // type: "currency",
+ // civiField: `${G0}.Member_equity_total`
+ // },
{
name: "Member_equity_raised",
label: "Member equity raised",
@@ -223,12 +214,12 @@ const stage0: StageSectionConfig = {
visibleWhen: visibleAtOrAfter(S.Stabilize),
civiField: `${G0}.Member_equity_raised`
},
- {
- name: "Member_loans_total",
- label: "Member loans total needed",
- type: "currency",
- civiField: `${G0}.Member_loans_total`
- },
+ // {
+ // name: "Member_loans_total",
+ // label: "Member loans total needed",
+ // type: "currency",
+ // civiField: `${G0}.Member_loans_total`
+ // },
{
name: "Member_loans_raised",
label: "Member loans raised",
@@ -249,13 +240,22 @@ const stage0: StageSectionConfig = {
visibleWhen: visibleAtOrAfter(S.Stabilize),
civiField: `${G0}.Member_preferred_shares_raised`,
},
- { name: "Bank_debt_total", label: "Bank debt total needed", type: "currency", civiField: `${G0}.Bank_debt_total` },
+ // { name: "Bank_debt_total", label: "Bank debt total needed", type: "currency", civiField: `${G0}.Bank_debt_total` },
{ name: "Bank_debt_raised", label: "Bank debt raised", type: "currency", visibleWhen: visibleAtOrAfter(S.Stabilize), civiField: `${G0}.Bank_debt_raised` },
- { name: "Grant_Donations_Needed", label: "Grants / Donations Needed", type: "currency", civiField: `${G0}.Grant_Donations_Needed` },
+ // { name: "Grant_Donations_Needed", label: "Grants / Donations Needed", type: "currency", civiField: `${G0}.Grant_Donations_Needed` },
{ name: "Grants_Donations_Raised", label: "Grants / Donations Raised", type: "currency", visibleWhen: visibleAtOrAfter(S.Stabilize), civiField: `${G0}.Grants_Donations_Raised` },
- { name: "Other_sources_total", label: "Other sources total needed", type: "currency", civiField: `${G0}.Other_sources_total` },
+ // { name: "Other_sources_total", label: "Other sources total needed", type: "currency", civiField: `${G0}.Other_sources_total` },
{ name: "Other_sources_raised", label: "Other sources raised", type: "currency", visibleWhen: visibleAtOrAfter(S.Stabilize), civiField: `${G0}.Other_sources_raised` },
- { name: "Date_Closed_Folded", label: "Date Closed / Folded", type: "date", civiField: `${G0}.Date_Closed_Folded` },
+ // { name: "Date_Closed_Folded", label: "Date Closed / Folded", type: "date", civiField: `${G0}.Date_Closed_Folded` },
+ {
+ name: "FTEs",
+ label: "Projected FTEs",
+ type: "number",
+ visibleWhen: visibleAtOrAfter(S.BusinessFeasibility, S.StoreImplementation, S.Stabilize),
+ civiField: `${G0}.FTEs`,
+ step: 0.1,
+ help: "Number of full-time equivalent (FTE) employees planned to work at the store.",
+ },
] as FieldConfig[],
};
@@ -328,14 +328,14 @@ const stage2: StageSectionConfig = {
{ name: "Market_Study_Upload", label: "Market Study — Upload", type: "file", civiField: `${G2}.Market_Study_Upload` },
{ name: "Pro_Forma_date_completed", label: "Pro Forma — date completed", type: "date", civiField: `${G2}.Pro_Forma_date_completed` },
{ name: "Pro_Forma_Upload", label: "Pro Forma — Upload", type: "file", civiField: `${G2}.Pro_Forma_Upload` },
- {
- name: "Pro_Forma_Viability",
- label: "Pro Forma Viability",
- type: "select",
- civiField: `${G2}.Pro_Forma_Viability`,
- optionGroupId: 133,
- help: "Rate the viability of the project.",
- },
+ // {
+ // name: "Pro_Forma_Viability",
+ // label: "Pro Forma Viability",
+ // type: "select",
+ // civiField: `${G2}.Pro_Forma_Viability`,
+ // optionGroupId: 133,
+ // help: "Rate the viability of the project.",
+ // },
{
name: "Business_Plan",
label: "Business Plan",
@@ -394,6 +394,14 @@ const stage3: StageSectionConfig = {
optionGroupId: 139,
help: "Will the co-op own the building or property?",
},
+ {
+ name: "Capital_Stack",
+ label: "Capital Stack",
+ type: "multiselect",
+ civiField: `${G3}.Capital_Stack`,
+ optionGroupId: 134,
+ help: "Select all the types of funding that are part of your Sources.",
+ },
{
name: "Capital_Campaign_Owner_Participation_",
label: "Capital Campaign: Owner Participation %",
@@ -406,14 +414,6 @@ const stage3: StageSectionConfig = {
type: "currency",
civiField: `${G3}.Capital_Campaign_Average_Owner_Investment`,
},
- {
- name: "Capital_Stack",
- label: "Capital Stack",
- type: "multiselect",
- civiField: `${G3}.Capital_Stack`,
- optionGroupId: 134,
- help: "Select all the types of funding that are part of your Sources.",
- },
{
name: "Project_Manager_Date_of_Hire",
label: "Project Manager — Date of Hire",
@@ -448,6 +448,37 @@ const stage4: StageSectionConfig = {
label: "Stage 4 — Excite & Build",
visibleWhen: visibleAtOrAfter(S.StoreImplementation, S.Stabilize),
fields: [
+ {
+ name: "General_Manager_Date_of_Hire",
+ label: "General Manager — Date of Hire",
+ type: "date",
+ civiField: `${G4}.General_Manager_Date_of_Hire`,
+ },
+ {
+ name: "General_Manager_Background",
+ label: "General Manager Background",
+ type: "select",
+ civiField: `${G4}.General_Manager_Background`,
+ optionGroupId: 135,
+ help: "What professional background does your General Manager have?",
+ },
+ { name: "General_Manager_Name", label: "General Manager — Name", type: "text", civiField: `${G4}.General_Manager_Name` },
+ { name: "General_Manager_Phone", label: "General Manager Phone", type: "phone", civiField: `${G4}.General_Manager_Phone` },
+ { name: "GM_Email", label: "General Manager Email", type: "email", civiField: `${G4}.GM_Email` },
+ {
+ name: "GM_Support_Training",
+ label: "GM Support and Training",
+ type: "text",
+ civiField: `${G4}.GM_Support_Training`,
+ help: "What training and/or onboarding support is being provided to your GM?",
+ },
+ {
+ name: "GM_Support_Team",
+ label: "GM Support Team",
+ type: "text",
+ civiField: `${G4}.GM_Support_Team`,
+ help: "Who is providing support and training to your GM?",
+ },
{ name: "Projected_Opening_Date", label: "Projected Opening Date", type: "date", civiField: `${G4}.Projected_Opening_Date` },
{
name: "Construction_Completion_Date",
@@ -467,37 +498,7 @@ const stage4: StageSectionConfig = {
type: "file",
civiField: `${G4}.Mission_Transition_Plan_Upload`,
},
- { name: "General_Manager_Name", label: "General Manager — Name", type: "text", civiField: `${G4}.General_Manager_Name` },
- { name: "General_Manager_Phone", label: "General Manager Phone", type: "phone", civiField: `${G4}.General_Manager_Phone` },
- { name: "GM_Email", label: "General Manager Email", type: "email", civiField: `${G4}.GM_Email` },
- {
- name: "General_Manager_Date_of_Hire",
- label: "General Manager — Date of Hire",
- type: "date",
- civiField: `${G4}.General_Manager_Date_of_Hire`,
- },
- {
- name: "General_Manager_Background",
- label: "General Manager Background",
- type: "select",
- civiField: `${G4}.General_Manager_Background`,
- optionGroupId: 135,
- help: "What professional background does your General Manager have?",
- },
- {
- name: "GM_Support_Training",
- label: "GM Support and Training",
- type: "text",
- civiField: `${G4}.GM_Support_Training`,
- help: "What training and/or onboarding support is being provided to your GM?",
- },
- {
- name: "GM_Support_Team",
- label: "GM Support Team",
- type: "text",
- civiField: `${G4}.GM_Support_Team`,
- help: "Who is providing support and training to your GM?",
- },
+
] as FieldConfig[],
};