Add guard to "enable flaresolverr" setting
This commit is contained in:
@@ -15,10 +15,11 @@ import Stack from '@mui/material/Stack';
|
||||
import type { AwaitableComponentProps } from 'awaitable-component';
|
||||
import { Link as RouterLink } from 'react-router-dom';
|
||||
import { useLingui } from '@lingui/react/macro';
|
||||
import type { ReactNode } from 'react';
|
||||
|
||||
type Action = {
|
||||
show?: boolean;
|
||||
title?: string;
|
||||
title?: ReactNode;
|
||||
contain?: boolean;
|
||||
};
|
||||
|
||||
@@ -38,8 +39,8 @@ export const ConfirmDialog = ({
|
||||
isVisible,
|
||||
onExitComplete,
|
||||
}: AwaitableComponentProps & {
|
||||
title: string;
|
||||
message: string;
|
||||
title: ReactNode;
|
||||
message: ReactNode;
|
||||
actions?: Actions;
|
||||
onExtra?: () => void;
|
||||
}) => {
|
||||
|
||||
@@ -41,6 +41,7 @@ import { ServerAddressSetting } from '@/features/settings/components/ServerAddre
|
||||
import { AuthManager } from '@/features/authentication/AuthManager.ts';
|
||||
import type { ServerSettings as ServerSettingsType } from '@/features/settings/Settings.types.ts';
|
||||
import { KoreaderSyncSettings } from '@/features/settings/components/koreaderSync/KoreaderSyncSettings.tsx';
|
||||
import { Confirmation } from '@/base/AppAwaitableComponent.ts';
|
||||
|
||||
const getLogFilesCleanupDisplayValue = (ttl: number): string => {
|
||||
if (ttl === 0) {
|
||||
@@ -346,7 +347,70 @@ export const ServerSettings = () => {
|
||||
<Switch
|
||||
edge="end"
|
||||
checked={serverSettings.flareSolverrEnabled}
|
||||
onChange={(e) => updateSetting('flareSolverrEnabled', e.target.checked)}
|
||||
onChange={async (e) => {
|
||||
const enabled = e.target.checked;
|
||||
|
||||
if (!enabled) {
|
||||
updateSetting('flareSolverrEnabled', enabled);
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
await Confirmation.show({
|
||||
title: t`Flaresolverr setup confirmation`,
|
||||
message: (
|
||||
<Trans>
|
||||
Flaresolverr is a{' '}
|
||||
<u>
|
||||
<b>separate</b>
|
||||
</u>
|
||||
, Suwayomi{' '}
|
||||
<u>
|
||||
<b>unrelated</b>
|
||||
</u>{' '}
|
||||
program that needs to be manually{' '}
|
||||
<u>
|
||||
<b>installed</b>
|
||||
</u>{' '}
|
||||
and{' '}
|
||||
<u>
|
||||
<b>run</b>
|
||||
</u>
|
||||
.<br />
|
||||
See{' '}
|
||||
<Link
|
||||
href="https://github.com/FlareSolverr/FlareSolverr?tab=readme-ov-file#installation"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
>
|
||||
FlareSolverr
|
||||
</Link>{' '}
|
||||
for information on how to set it up
|
||||
<br />
|
||||
<br />
|
||||
If it is{' '}
|
||||
<u>
|
||||
<b>not</b>
|
||||
</u>{' '}
|
||||
properly set up and running, enabling this setting{' '}
|
||||
<u>
|
||||
<b>won't</b>
|
||||
</u>{' '}
|
||||
do anything
|
||||
</Trans>
|
||||
),
|
||||
actions: {
|
||||
confirm: {
|
||||
title: t`I understand`,
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
updateSetting('flareSolverrEnabled', enabled);
|
||||
} catch (_) {
|
||||
// Ignore
|
||||
}
|
||||
}}
|
||||
/>
|
||||
</ListItem>
|
||||
<TextSetting
|
||||
|
||||
@@ -1587,6 +1587,10 @@ msgstr "Fit width"
|
||||
msgid "FlareSolverr enabled"
|
||||
msgstr "FlareSolverr enabled"
|
||||
|
||||
#: src/features/settings/screens/ServerSettings.tsx
|
||||
msgid "Flaresolverr is a <0><1>separate</1></0>, Suwayomi <2><3>unrelated</3></2> program that needs to be manually <4><5>installed</5></4> and <6><7>run</7></6>.<8/>See <9>FlareSolverr</9> for information on how to set it up<10/><11/>If it is <12><13>not</13></12> properly set up and running, enabling this setting <14><15>won't</15></14> do anything"
|
||||
msgstr "Flaresolverr is a <0><1>separate</1></0>, Suwayomi <2><3>unrelated</3></2> program that needs to be manually <4><5>installed</5></4> and <6><7>run</7></6>.<8/>See <9>FlareSolverr</9> for information on how to set it up<10/><11/>If it is <12><13>not</13></12> properly set up and running, enabling this setting <14><15>won't</15></14> do anything"
|
||||
|
||||
#: src/features/settings/screens/ServerSettings.tsx
|
||||
msgid "FlareSolverr request timeout"
|
||||
msgstr "FlareSolverr request timeout"
|
||||
@@ -1603,6 +1607,10 @@ msgstr "FlareSolverr session name"
|
||||
msgid "FlareSolverr session TTL"
|
||||
msgstr "FlareSolverr session TTL"
|
||||
|
||||
#: src/features/settings/screens/ServerSettings.tsx
|
||||
msgid "Flaresolverr setup confirmation"
|
||||
msgstr "Flaresolverr setup confirmation"
|
||||
|
||||
#: src/features/settings/screens/ServerSettings.tsx
|
||||
msgid "FlareSolverr will automatically rotate expired sessions based on the TTL provided in minutes"
|
||||
msgstr "FlareSolverr will automatically rotate expired sessions based on the TTL provided in minutes"
|
||||
@@ -1733,6 +1741,10 @@ msgstr "How many chapters should get downloaded while reading."
|
||||
msgid "How much time FlareSolverr has to handle the request"
|
||||
msgstr "How much time FlareSolverr has to handle the request"
|
||||
|
||||
#: src/features/settings/screens/ServerSettings.tsx
|
||||
msgid "I understand"
|
||||
msgstr "I understand"
|
||||
|
||||
#: src/features/app-updates/components/VersionUpdateInfoDialog.tsx
|
||||
msgid "Ignore"
|
||||
msgstr "Ignore"
|
||||
|
||||
Reference in New Issue
Block a user