diff --git a/maternal-web/app/settings/page.tsx b/maternal-web/app/settings/page.tsx index 7d7afd2..55628a6 100644 --- a/maternal-web/app/settings/page.tsx +++ b/maternal-web/app/settings/page.tsx @@ -31,7 +31,7 @@ export default function SettingsPage() { const [timezone, setTimezone] = useState(user?.timezone || 'UTC'); const [timeFormat, setTimeFormat] = useState<'12h' | '24h'>(user?.preferences?.timeFormat || '12h'); const [settings, setSettings] = useState({ - notifications: true, + pushEnabled: true, emailUpdates: false, darkMode: false, measurementUnit: 'metric' as 'metric' | 'imperial', @@ -45,7 +45,7 @@ export default function SettingsPage() { useEffect(() => { if (user?.preferences) { setSettings({ - notifications: user.preferences.notifications ?? true, + pushEnabled: user.preferences.notifications?.pushEnabled ?? true, emailUpdates: user.preferences.emailUpdates ?? false, darkMode: user.preferences.darkMode ?? false, measurementUnit: (user.preferences.measurementUnit as 'metric' | 'imperial') || 'metric', @@ -84,7 +84,13 @@ export default function SettingsPage() { photoUrl: photoUrl || undefined, timezone, preferences: { - ...settings, + notifications: { + pushEnabled: settings.pushEnabled, + emailEnabled: settings.emailUpdates, + }, + emailUpdates: settings.emailUpdates, + darkMode: settings.darkMode, + measurementUnit: settings.measurementUnit, timeFormat, } }); @@ -235,8 +241,8 @@ export default function SettingsPage() { setSettings({ ...settings, notifications: e.target.checked })} + checked={settings.pushEnabled} + onChange={(e) => setSettings({ ...settings, pushEnabled: e.target.checked })} disabled={isLoading} /> }