33d899c243
Root cause of "Google authentication failed": appsettings.Development.json had Auth:GoogleClientId set to the literal placeholder "CHANGE_ME_GOOGLE_CLIENT_ID" while the frontend's .env.development had a real (already-public, already-committed) client ID -- every Google ID token's audience check failed against the backend's placeholder. Fixed by setting the same real client ID on both sides (a client ID is a public identifier, not a secret, safe to commit -- unlike a client secret). Also enabled Auth:AllowRegistration in dev so the existing Google-first self-serve-signup path (auto-create on unmatched verified email, auto-link on matching verified email -- built during Wave 7) is actually exercisable locally. Wired the previously-missing Auth__MicrosoftClientId / NEXT_PUBLIC_MICROSOFT_CLIENT_ID into docker-compose.yml/.env.example (distinct from the existing MICROSOFT_CLIENT_ID used for Outlook mail linking) -- Microsoft sign-in was never deployable, a leftover gap from when it was built. Fixed a stale env-var name in the Microsoft setup hint copy (still said REACT_APP_*, predates the Next.js migration). Removed the per-user accent color picker entirely: it was purely client-side (localStorage + theme.ts), never touched the backend/DB. theme.ts now hardcodes a single ACCENT constant; themePrefs.ts drops get/set/clearAccentColor; App.tsx and SettingsView.tsx drop the accentColor prop threading. Dead accent-related i18n keys removed from both locales. Consolidated Settings' "Account" tab (duplicated GoogleAuthCard, which already lives on the Profile page) into Profile: moved AuthStatusCard and EmailProviderConnections there alongside the existing Google/ Microsoft auth cards, so identity/account-linking lives in one place. Settings drops from 5 tabs to 4 and its General tab uses a consistent SectionCard layout instead of ad-hoc per-card styling. Verified: dotnet build/test (177/177) and npm build/test (57/57) both green; confirmed live against a running dev server that /auth/config now reports googleEnabled with the corrected client ID, Settings has no accent controls, and Profile shows the consolidated auth section.
47 lines
1.2 KiB
JSON
47 lines
1.2 KiB
JSON
{
|
|
"Logging": {
|
|
"LogLevel": {
|
|
"Default": "Information",
|
|
"Microsoft.AspNetCore": "Warning"
|
|
}
|
|
},
|
|
"Cors": {
|
|
"Origins": [
|
|
"http://localhost:3000",
|
|
"http://localhost:3001",
|
|
"https://jobs.cesnimda.uk"
|
|
]
|
|
},
|
|
"Exports": {
|
|
"DailyEnabled": true,
|
|
"DailyFolder": "exports",
|
|
"DailyHourLocal": 2
|
|
},
|
|
"Auth": {
|
|
"Require": true,
|
|
"AllowRegistration": true,
|
|
"JwtKey": "CHANGE_ME_DEV_ONLY_LONG_RANDOM_SECRET",
|
|
"JwtIssuer": "JobTrackerApi",
|
|
"JwtAudience": "job-tracker-ui",
|
|
"JwtExpiresMinutes": 720,
|
|
"AdminEmail": "admin@example.com",
|
|
"AdminPassword": "CHANGE_ME_STRONG_DEV_PASSWORD",
|
|
"GoogleClientId": "723556162227-llqucvpog2esn1dutmtvuul1lv374or6.apps.googleusercontent.com",
|
|
"MicrosoftClientId": "CHANGE_ME_MICROSOFT_CLIENT_ID"
|
|
},
|
|
"App": {
|
|
"PublicBaseUrl": "https://jobs.cesnimda.uk"
|
|
},
|
|
"Email": {
|
|
"Enabled": false,
|
|
"SmtpHost": "smtp.gmail.com",
|
|
"SmtpPort": 587,
|
|
"SmtpUser": "CHANGE_ME_GMAIL_ADDRESS",
|
|
"SmtpPassword": "CHANGE_ME_GOOGLE_APP_PASSWORD",
|
|
"From": "CHANGE_ME_GMAIL_ADDRESS",
|
|
"FromName": "Jobbjakt",
|
|
"SmtpEnableSsl": true,
|
|
"SmtpTimeoutMs": 15000
|
|
}
|
|
}
|