From c72cf9a0ab865538ed84ecb5d87f68381b60ba2b Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Thu, 26 Sep 2024 12:51:46 +0200 Subject: [PATCH] Add missing error message on settings change error --- .../settings/downloads/DownloadAheadSetting.tsx | 2 +- .../settings/webUI/WebUIUpdateIntervalSetting.tsx | 5 ++++- src/screens/settings/Backup.tsx | 4 +++- src/screens/settings/BrowseSettings.tsx | 9 +++++++-- src/screens/settings/ServerSettings.tsx | 4 +++- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/components/settings/downloads/DownloadAheadSetting.tsx b/src/components/settings/downloads/DownloadAheadSetting.tsx index a2c7f521..8ff44e6b 100644 --- a/src/components/settings/downloads/DownloadAheadSetting.tsx +++ b/src/components/settings/downloads/DownloadAheadSetting.tsx @@ -39,7 +39,7 @@ export const DownloadAheadSetting = ({ const updateSetting = (value: MetadataDownloadSettings['downloadAheadLimit']) => { persistDownloadAheadLimit(value === 0 ? currentDownloadAheadLimit : value); updateMetadataServerSettings('downloadAheadLimit', value).catch(() => - makeToast(t('search.error.label.failed_to_save_settings'), 'warning'), + makeToast(t('global.error.label.failed_to_save_changes'), 'error'), ); }; diff --git a/src/components/settings/webUI/WebUIUpdateIntervalSetting.tsx b/src/components/settings/webUI/WebUIUpdateIntervalSetting.tsx index f5fc4a18..5f6adb22 100644 --- a/src/components/settings/webUI/WebUIUpdateIntervalSetting.tsx +++ b/src/components/settings/webUI/WebUIUpdateIntervalSetting.tsx @@ -16,6 +16,7 @@ import { requestManager } from '@/lib/requests/RequestManager.ts'; import { NumberSetting } from '@/components/settings/NumberSetting.tsx'; import { getPersistedServerSetting, usePersistedValue } from '@/util/usePersistedValue.tsx'; import { ServerSettings } from '@/typings.ts'; +import { makeToast } from '@/components/util/Toast.tsx'; const DEFAULT_VALUE = 23; const MIN_VALUE = 1; @@ -44,7 +45,9 @@ export const WebUIUpdateIntervalSetting = ({ persistUpdateCheckInterval( webUIUpdateCheckInterval === 0 ? currentUpdateCheckInterval : webUIUpdateCheckInterval, ); - mutateSettings({ variables: { input: { settings: { webUIUpdateCheckInterval } } } }); + mutateSettings({ variables: { input: { settings: { webUIUpdateCheckInterval } } } }).catch(() => + makeToast(t('global.error.label.failed_to_save_changes'), 'error'), + ); }, [currentUpdateCheckInterval], ); diff --git a/src/screens/settings/Backup.tsx b/src/screens/settings/Backup.tsx index 0bbef36a..56dd5d4a 100644 --- a/src/screens/settings/Backup.tsx +++ b/src/screens/settings/Backup.tsx @@ -100,7 +100,9 @@ export function Backup() { setting: Setting, value: BackupSettingsType[Setting], ) => { - mutateSettings({ variables: { input: { settings: { [setting]: value } } } }); + mutateSettings({ variables: { input: { settings: { [setting]: value } } } }).catch(() => + makeToast(t('global.error.label.failed_to_save_changes'), 'error'), + ); }; useEffect(() => { diff --git a/src/screens/settings/BrowseSettings.tsx b/src/screens/settings/BrowseSettings.tsx index 8efcbe17..6cce8623 100644 --- a/src/screens/settings/BrowseSettings.tsx +++ b/src/screens/settings/BrowseSettings.tsx @@ -26,6 +26,7 @@ import { import { LoadingPlaceholder } from '@/components/util/LoadingPlaceholder.tsx'; import { EmptyViewAbsoluteCentered } from '@/components/util/EmptyViewAbsoluteCentered.tsx'; import { defaultPromiseErrorHandler } from '@/util/defaultPromiseErrorHandler.ts'; +import { makeToast } from '@/components/util/Toast.tsx'; type ExtensionsSettings = Pick; @@ -55,13 +56,17 @@ export const BrowseSettings = () => { setting: Setting, value: ExtensionsSettings[Setting], ) => { - mutateSettings({ variables: { input: { settings: { [setting]: value } } } }); + mutateSettings({ variables: { input: { settings: { [setting]: value } } } }).catch(() => + makeToast(t('global.error.label.failed_to_save_changes'), 'error'), + ); }; const { settings: { hideLibraryEntries }, } = useMetadataServerSettings(); - const updateMetadataServerSettings = createUpdateMetadataServerSettings(); + const updateMetadataServerSettings = createUpdateMetadataServerSettings(() => + makeToast(t('global.error.label.failed_to_save_changes'), 'error'), + ); if (loading) { return ; diff --git a/src/screens/settings/ServerSettings.tsx b/src/screens/settings/ServerSettings.tsx index d6e07db4..769dda84 100644 --- a/src/screens/settings/ServerSettings.tsx +++ b/src/screens/settings/ServerSettings.tsx @@ -137,7 +137,9 @@ export const ServerSettings = () => { setting: Setting, value: ServerSettingsType[Setting], ) => { - mutateSettings({ variables: { input: { settings: { [setting]: value } } } }); + mutateSettings({ variables: { input: { settings: { [setting]: value } } } }).catch(() => + makeToast(t('global.error.label.failed_to_save_changes'), 'error'), + ); }; const localSettings = useMemo(