mirror of
https://github.com/sct/overseerr.git
synced 2025-09-17 17:24:35 +02:00
fix: do not set locale when modifying other users (#1499)
This commit is contained in:
@@ -114,8 +114,8 @@ userSettingsRoutes.post<
|
|||||||
originalLanguage: req.body.originalLanguage,
|
originalLanguage: req.body.originalLanguage,
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
(user.settings.locale = req.body.locale),
|
user.settings.locale = req.body.locale;
|
||||||
(user.settings.region = req.body.region);
|
user.settings.region = req.body.region;
|
||||||
user.settings.originalLanguage = req.body.originalLanguage;
|
user.settings.originalLanguage = req.body.originalLanguage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -7,7 +7,10 @@ import { useToasts } from 'react-toast-notifications';
|
|||||||
import useSWR from 'swr';
|
import useSWR from 'swr';
|
||||||
import { UserSettingsGeneralResponse } from '../../../../../server/interfaces/api/userSettingsInterfaces';
|
import { UserSettingsGeneralResponse } from '../../../../../server/interfaces/api/userSettingsInterfaces';
|
||||||
import { Language } from '../../../../../server/lib/settings';
|
import { Language } from '../../../../../server/lib/settings';
|
||||||
import { availableLanguages } from '../../../../context/LanguageContext';
|
import {
|
||||||
|
availableLanguages,
|
||||||
|
AvailableLocales,
|
||||||
|
} from '../../../../context/LanguageContext';
|
||||||
import useLocale from '../../../../hooks/useLocale';
|
import useLocale from '../../../../hooks/useLocale';
|
||||||
import useSettings from '../../../../hooks/useSettings';
|
import useSettings from '../../../../hooks/useSettings';
|
||||||
import { Permission, UserType, useUser } from '../../../../hooks/useUser';
|
import { Permission, UserType, useUser } from '../../../../hooks/useUser';
|
||||||
@@ -47,14 +50,14 @@ const messages = defineMessages({
|
|||||||
const UserGeneralSettings: React.FC = () => {
|
const UserGeneralSettings: React.FC = () => {
|
||||||
const intl = useIntl();
|
const intl = useIntl();
|
||||||
const { addToast } = useToasts();
|
const { addToast } = useToasts();
|
||||||
const { locale, setLocale } = useLocale();
|
const { setLocale } = useLocale();
|
||||||
const [movieQuotaEnabled, setMovieQuotaEnabled] = useState(false);
|
const [movieQuotaEnabled, setMovieQuotaEnabled] = useState(false);
|
||||||
const [tvQuotaEnabled, setTvQuotaEnabled] = useState(false);
|
const [tvQuotaEnabled, setTvQuotaEnabled] = useState(false);
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { user, hasPermission, mutate } = useUser({
|
const { user, hasPermission, mutate } = useUser({
|
||||||
id: Number(router.query.userId),
|
id: Number(router.query.userId),
|
||||||
});
|
});
|
||||||
const { hasPermission: currentHasPermission } = useUser();
|
const { user: currentUser, hasPermission: currentHasPermission } = useUser();
|
||||||
const { currentSettings } = useSettings();
|
const { currentSettings } = useSettings();
|
||||||
const { data, error, revalidate } = useSWR<UserSettingsGeneralResponse>(
|
const { data, error, revalidate } = useSWR<UserSettingsGeneralResponse>(
|
||||||
user ? `/api/v1/user/${user?.id}/settings/main` : null
|
user ? `/api/v1/user/${user?.id}/settings/main` : null
|
||||||
@@ -119,7 +122,7 @@ const UserGeneralSettings: React.FC = () => {
|
|||||||
</div>
|
</div>
|
||||||
<Formik
|
<Formik
|
||||||
initialValues={{
|
initialValues={{
|
||||||
locale,
|
locale: data?.locale ?? 'en',
|
||||||
displayName: data?.username,
|
displayName: data?.username,
|
||||||
region: data?.region,
|
region: data?.region,
|
||||||
originalLanguage: data?.originalLanguage,
|
originalLanguage: data?.originalLanguage,
|
||||||
@@ -144,8 +147,8 @@ const UserGeneralSettings: React.FC = () => {
|
|||||||
locale: values.locale,
|
locale: values.locale,
|
||||||
});
|
});
|
||||||
|
|
||||||
if (setLocale) {
|
if (currentUser?.id === user?.id && setLocale) {
|
||||||
setLocale(values.locale);
|
setLocale(values.locale as AvailableLocales);
|
||||||
}
|
}
|
||||||
|
|
||||||
addToast(intl.formatMessage(messages.toastSettingsSuccess), {
|
addToast(intl.formatMessage(messages.toastSettingsSuccess), {
|
||||||
|
Reference in New Issue
Block a user