Skip to content

fix: show language-to-translate as main communication for accompanying opportunities#3

Open
Cy-fox wants to merge 61 commits intodevelopfrom
fix/opportunity-details-communication
Open

fix: show language-to-translate as main communication for accompanying opportunities#3
Cy-fox wants to merge 61 commits intodevelopfrom
fix/opportunity-details-communication

Conversation

@Cy-fox
Copy link
Copy Markdown
Owner

@Cy-fox Cy-fox commented Apr 22, 2026

Description

For accompanying opportunities, the "Main communication" field in Opportunity Details was showing the GENERAL-purpose language, which is not relevant for accompanying type. It now shows the language looked up from accompanyingDetails.languageToTranslate instead. "Residents speak" continues to show the RECIPIENT-purpose languages.

Related Issues

Closes need4deed-org#352

Changes:

  • OpportunityDetailsDisplay fetches the language list and looks up the language name by ID from accompanyingDetails.languageToTranslate when the type is accompanying
  • Non-accompanying opportunities are unaffected
  • Upgraded need4deed-sdk to 0.0.77

Masahiro-jobson and others added 30 commits April 6, 2026 15:42
…ect-312

fix: redirect /event-page to Google Forms URL (need4deed-org#312)
…k-button

Fix: back button navigates to correct list page (need4deed-org#318)
…nity-card

Fix: Opportunity card: Schedule- Date time selection in case of event type need4deed-org#259
…d4deed-org#132/landing-page-layout

🎨 move landing page layout w/ placeholders need4deed-org#132
…-english-303

fix: set English as default language and persist language choice (need4deed-org#303)
Several types were renamed or restructured in the SDK bump that merged
with develop, leaving the codebase in a broken state where tsc --noEmit
fails on every branch:

- AgentCard: use extracted `volunteerSearch` (not agent.volunteerSearch
  which doesn't exist on ApiAgentGetList)
- helpers (Agents): add fallback for volunteerSearch being undefined
- statusMaps: SDK enums (e.g. VolunteerStateEngagementType and
  AgentEngagementStatusType) share the same string values, making
  object-literal duplicate-key errors unavoidable; switch to
  Object.fromEntries so last-write-wins logic is preserved without
  compile errors
- AccompanyingDetails helpers: languageToTranslate is now number in SDK,
  convert to string for the form
- AgentContactDetails: representative → representatives[0] (field
  renamed to plural array in SDK)
- useUpdateAgentContact / useUpdateOrganizationDetails: ApiRepresentativePatch
  removed from SDK; use ApiRepresentativeGet (same shape for patching)
Remove the /home segment from the authenticated dashboard route:
- Delete dashboard/home/page.tsx
- dashboard/page.tsx now renders DashboardHome
- LoginController redirects to /dashboard after login
- DashboardRoutes.Home constant updated to /dashboard

Refs need4deed-org#304
…/fix/296/add-favicon

🐛 Add missing favicon.ico to fix i18next language log
…/fix/289/opportunity-card-skills-validation

fix: save button and checkbox uncheck in opportunity details (need4deed-org#289)
DarrellRoberts and others added 30 commits April 17, 2026 15:05
…/fix/328/volunteer-form-redirect-on-public-page

fix: prevent redirect to login on public pages
…testimonial-render

need4deed-org#336: Fixes infinite testimonial fetch
Use CSS max() to clamp the left margin to the sidebar width on narrow
viewports, so the fixed navigation bar never hides the search bar or
list area. Closes need4deed-org#324.
After testing, the sidebar edge was still clipping the leftmost
character of list column headers. Add 16px to the clamped left
margin — matching the nav bar's own horizontal padding — to give
content a clear visual gap from the sidebar.
Several types were renamed or restructured in the SDK bump that merged
with develop, leaving the codebase in a broken state where tsc --noEmit
fails on every branch:

- AgentCard: use extracted `volunteerSearch` (not agent.volunteerSearch
  which doesn't exist on ApiAgentGetList)
- helpers (Agents): add fallback for volunteerSearch being undefined
- statusMaps: SDK enums (e.g. VolunteerStateEngagementType and
  AgentEngagementStatusType) share the same string values, making
  object-literal duplicate-key errors unavoidable; switch to
  Object.fromEntries so last-write-wins logic is preserved without
  compile errors
- AccompanyingDetails helpers: languageToTranslate is now number in SDK,
  convert to string for the form
- AgentContactDetails: representative → representatives[0] (field
  renamed to plural array in SDK)
- useUpdateAgentContact / useUpdateOrganizationDetails: ApiRepresentativePatch
  removed from SDK; use ApiRepresentativeGet (same shape for patching)
Fix: direct buttons to forms
…ng-dashboard-324

fix: prevent left nav bar from overlapping dashboard content
…der-buttons

Fix: dashboard button+direct buttons to forms+ testimonials need4deed-org#321
…sues-and-wrong-imprt-path

Hotfix  ts issues and wrong imprt path
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…lint-github-action

ci: add lint and typecheck workflow on PRs to develop
…m-sdk-bump

hotfix: fix TypeScript errors introduced by SDK .73 bump
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…in SDK

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…me-304-task3

Fix/url dashboard home 304 task3
…monials-infinite-loop

fix: use hook instead await for stable lang
…e-menu-from-registration-form

343: fixes menu in volunteer form
… opportunities

For accompanying opportunity type, the "Main communication" field in
Opportunity Details now shows the language looked up from
accompanyingDetails.languageToTranslate (a language ID) instead of
the GENERAL-purpose language from the opportunity languages list.
"Residents speak" continues to use the RECIPIENT-purpose languages.

Also upgrades need4deed-sdk to 0.0.76 which adds accompanyingDetails
to ApiOpportunityGetList and ApiOpportunityGet.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Languages end up being in the “Main communication field”

8 participants