mirror of
https://github.com/Ernous/TorrServerJellyfin.git
synced 2025-12-19 21:46:11 +05:00
added new translations
This commit is contained in:
@@ -43,6 +43,9 @@ import {
|
|||||||
import defaultSettings from './defaultSettings'
|
import defaultSettings from './defaultSettings'
|
||||||
import { a11yProps, TabPanel } from './tabComponents'
|
import { a11yProps, TabPanel } from './tabComponents'
|
||||||
|
|
||||||
|
// {t('UseDisk')}
|
||||||
|
// {t('UseDiskDesc')}
|
||||||
|
|
||||||
const SliderInput = ({
|
const SliderInput = ({
|
||||||
isProMode,
|
isProMode,
|
||||||
title,
|
title,
|
||||||
@@ -118,6 +121,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
|
|
||||||
const inputForm = ({ target: { type, value, checked, id } }) => {
|
const inputForm = ({ target: { type, value, checked, id } }) => {
|
||||||
const sets = JSON.parse(JSON.stringify(settings))
|
const sets = JSON.parse(JSON.stringify(settings))
|
||||||
|
|
||||||
if (type === 'number' || type === 'select-one') {
|
if (type === 'number' || type === 'select-one') {
|
||||||
sets[id] = Number(value)
|
sets[id] = Number(value)
|
||||||
} else if (type === 'checkbox') {
|
} else if (type === 'checkbox') {
|
||||||
@@ -174,29 +178,29 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Dialog open onClose={handleClose} fullScreen={fullScreen} fullWidth maxWidth='md'>
|
<Dialog open onClose={handleClose} fullScreen={fullScreen} fullWidth maxWidth='md'>
|
||||||
<Header>{t('Settings')}</Header>
|
<Header>{t('SettingsDialog.Settings')}</Header>
|
||||||
|
|
||||||
|
<AppBar position='static' color='default'>
|
||||||
|
<Tabs
|
||||||
|
value={selectedTab}
|
||||||
|
onChange={handleChange}
|
||||||
|
indicatorColor='primary'
|
||||||
|
textColor='primary'
|
||||||
|
variant='fullWidth'
|
||||||
|
>
|
||||||
|
<Tab label={t('SettingsDialog.Tabs.Main')} {...a11yProps(0)} />
|
||||||
|
|
||||||
|
<Tab
|
||||||
|
disabled={!isProMode}
|
||||||
|
label={isProMode ? t('SettingsDialog.Tabs.Additional') : t('SettingsDialog.Tabs.AdditionalDisabled')}
|
||||||
|
{...a11yProps(1)}
|
||||||
|
/>
|
||||||
|
</Tabs>
|
||||||
|
</AppBar>
|
||||||
|
|
||||||
<Content isLoading={!settings}>
|
<Content isLoading={!settings}>
|
||||||
{settings ? (
|
{settings ? (
|
||||||
<>
|
<>
|
||||||
<AppBar position='static' color='default'>
|
|
||||||
<Tabs
|
|
||||||
value={selectedTab}
|
|
||||||
onChange={handleChange}
|
|
||||||
indicatorColor='primary'
|
|
||||||
textColor='primary'
|
|
||||||
variant='fullWidth'
|
|
||||||
>
|
|
||||||
<Tab label='Основные' {...a11yProps(0)} />
|
|
||||||
|
|
||||||
<Tab
|
|
||||||
disabled={!isProMode}
|
|
||||||
label={isProMode ? 'Дополнительные' : 'Дополнительные (включите pro mode)'}
|
|
||||||
{...a11yProps(1)}
|
|
||||||
/>
|
|
||||||
</Tabs>
|
|
||||||
</AppBar>
|
|
||||||
|
|
||||||
<SwipeableViews
|
<SwipeableViews
|
||||||
axis={direction === 'rtl' ? 'x-reverse' : 'x'}
|
axis={direction === 'rtl' ? 'x-reverse' : 'x'}
|
||||||
index={selectedTab}
|
index={selectedTab}
|
||||||
@@ -205,11 +209,11 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
<TabPanel value={selectedTab} index={0} dir={direction}>
|
<TabPanel value={selectedTab} index={0} dir={direction}>
|
||||||
<MainSettingsContent>
|
<MainSettingsContent>
|
||||||
<div>
|
<div>
|
||||||
<SettingSectionLabel>Настройки кеша</SettingSectionLabel>
|
<SettingSectionLabel>{t('SettingsDialog.CacheSettings')}</SettingSectionLabel>
|
||||||
|
|
||||||
<PreloadCachePercentage
|
<PreloadCachePercentage
|
||||||
value={100 - cachePercentage}
|
value={100 - cachePercentage}
|
||||||
label={`Кеш ${cacheSize} МБ`}
|
label={t('SettingsDialog.CacheSizeLabel', { cacheSize })}
|
||||||
isPreloadEnabled={PreloadBuffer}
|
isPreloadEnabled={PreloadBuffer}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -233,7 +237,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
|
|
||||||
<SliderInput
|
<SliderInput
|
||||||
isProMode={isProMode}
|
isProMode={isProMode}
|
||||||
title='Размер кеша'
|
title={t('SettingsDialog.CacheSize')}
|
||||||
value={cacheSize}
|
value={cacheSize}
|
||||||
setValue={setCacheSize}
|
setValue={setCacheSize}
|
||||||
sliderMin={32}
|
sliderMin={32}
|
||||||
@@ -246,7 +250,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
|
|
||||||
<SliderInput
|
<SliderInput
|
||||||
isProMode={isProMode}
|
isProMode={isProMode}
|
||||||
title='Кеш предзагрузки'
|
title={t('SettingsDialog.ReaderReadAHead')}
|
||||||
value={cachePercentage}
|
value={cachePercentage}
|
||||||
setValue={setCachePercentage}
|
setValue={setCachePercentage}
|
||||||
sliderMin={40}
|
sliderMin={40}
|
||||||
@@ -259,7 +263,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
control={
|
control={
|
||||||
<Switch checked={!!PreloadBuffer} onChange={inputForm} id='PreloadBuffer' color='primary' />
|
<Switch checked={!!PreloadBuffer} onChange={inputForm} id='PreloadBuffer' color='primary' />
|
||||||
}
|
}
|
||||||
label={t('PreloadBuffer')}
|
label={t('SettingsDialog.PreloadBuffer')}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -294,15 +298,15 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
color='primary'
|
color='primary'
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label={t('RemoveCacheOnDrop')}
|
label={t('SettingsDialog.RemoveCacheOnDrop')}
|
||||||
/>
|
/>
|
||||||
<small>{t('RemoveCacheOnDropDesc')}</small>
|
<small>{t('SettingsDialog.RemoveCacheOnDropDesc')}</small>
|
||||||
|
|
||||||
<TextField
|
<TextField
|
||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='TorrentsSavePath'
|
id='TorrentsSavePath'
|
||||||
label={t('TorrentsSavePath')}
|
label={t('SettingsDialog.TorrentsSavePath')}
|
||||||
value={TorrentsSavePath}
|
value={TorrentsSavePath}
|
||||||
type='url'
|
type='url'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -340,34 +344,34 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
|
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={EnableIPv6} onChange={inputForm} id='EnableIPv6' color='primary' />}
|
control={<Switch checked={EnableIPv6} onChange={inputForm} id='EnableIPv6' color='primary' />}
|
||||||
label={t('EnableIPv6')}
|
label='IPv6'
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={!DisableTCP} onChange={inputForm} id='DisableTCP' color='primary' />}
|
control={<Switch checked={!DisableTCP} onChange={inputForm} id='DisableTCP' color='primary' />}
|
||||||
label={t('TCP')}
|
label='TCP (Transmission Control Protocol)'
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={!DisableUTP} onChange={inputForm} id='DisableUTP' color='primary' />}
|
control={<Switch checked={!DisableUTP} onChange={inputForm} id='DisableUTP' color='primary' />}
|
||||||
label={t('UTP')}
|
label='μTP (Micro Transport Protocol)'
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={!DisablePEX} onChange={inputForm} id='DisablePEX' color='primary' />}
|
control={<Switch checked={!DisablePEX} onChange={inputForm} id='DisablePEX' color='primary' />}
|
||||||
label={t('PEX')}
|
label='PEX (Peer Exchange)'
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={ForceEncrypt} onChange={inputForm} id='ForceEncrypt' color='primary' />}
|
control={<Switch checked={ForceEncrypt} onChange={inputForm} id='ForceEncrypt' color='primary' />}
|
||||||
label={t('ForceEncrypt')}
|
label={t('SettingsDialog.ForceEncrypt')}
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<TextField
|
<TextField
|
||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='TorrentDisconnectTimeout'
|
id='TorrentDisconnectTimeout'
|
||||||
label={t('TorrentDisconnectTimeout')}
|
label={t('SettingsDialog.TorrentDisconnectTimeout')}
|
||||||
value={TorrentDisconnectTimeout}
|
value={TorrentDisconnectTimeout}
|
||||||
type='number'
|
type='number'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -377,7 +381,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='ConnectionsLimit'
|
id='ConnectionsLimit'
|
||||||
label={t('ConnectionsLimit')}
|
label={t('SettingsDialog.ConnectionsLimit')}
|
||||||
value={ConnectionsLimit}
|
value={ConnectionsLimit}
|
||||||
type='number'
|
type='number'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -385,14 +389,14 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
<br />
|
<br />
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={!DisableDHT} onChange={inputForm} id='DisableDHT' color='primary' />}
|
control={<Switch checked={!DisableDHT} onChange={inputForm} id='DisableDHT' color='primary' />}
|
||||||
label={t('DHT')}
|
label={t('SettingsDialog.DHT')}
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<TextField
|
<TextField
|
||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='DhtConnectionLimit'
|
id='DhtConnectionLimit'
|
||||||
label={t('DhtConnectionLimit')}
|
label={t('SettingsDialog.DhtConnectionLimit')}
|
||||||
value={DhtConnectionLimit}
|
value={DhtConnectionLimit}
|
||||||
type='number'
|
type='number'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -402,7 +406,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='DownloadRateLimit'
|
id='DownloadRateLimit'
|
||||||
label={t('DownloadRateLimit')}
|
label={t('SettingsDialog.DownloadRateLimit')}
|
||||||
value={DownloadRateLimit}
|
value={DownloadRateLimit}
|
||||||
type='number'
|
type='number'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -412,14 +416,14 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
control={
|
control={
|
||||||
<Switch checked={!DisableUpload} onChange={inputForm} id='DisableUpload' color='primary' />
|
<Switch checked={!DisableUpload} onChange={inputForm} id='DisableUpload' color='primary' />
|
||||||
}
|
}
|
||||||
label={t('Upload')}
|
label={t('SettingsDialog.Upload')}
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<TextField
|
<TextField
|
||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='UploadRateLimit'
|
id='UploadRateLimit'
|
||||||
label={t('UploadRateLimit')}
|
label={t('SettingsDialog.UploadRateLimit')}
|
||||||
value={UploadRateLimit}
|
value={UploadRateLimit}
|
||||||
type='number'
|
type='number'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -429,7 +433,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
onChange={inputForm}
|
onChange={inputForm}
|
||||||
margin='dense'
|
margin='dense'
|
||||||
id='PeersListenPort'
|
id='PeersListenPort'
|
||||||
label={t('PeersListenPort')}
|
label={t('SettingsDialog.PeersListenPort')}
|
||||||
value={PeersListenPort}
|
value={PeersListenPort}
|
||||||
type='number'
|
type='number'
|
||||||
fullWidth
|
fullWidth
|
||||||
@@ -437,15 +441,15 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
<br />
|
<br />
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Switch checked={!DisableUPNP} onChange={inputForm} id='DisableUPNP' color='primary' />}
|
control={<Switch checked={!DisableUPNP} onChange={inputForm} id='DisableUPNP' color='primary' />}
|
||||||
label={t('UPNP')}
|
label='UPnP (Universal Plug and Play)'
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<InputLabel htmlFor='RetrackersMode'>{t('RetrackersMode')}</InputLabel>
|
<InputLabel htmlFor='RetrackersMode'>{t('SettingsDialog.RetrackersMode')}</InputLabel>
|
||||||
<Select onChange={inputForm} type='number' native id='RetrackersMode' value={RetrackersMode}>
|
<Select onChange={inputForm} type='number' native id='RetrackersMode' value={RetrackersMode}>
|
||||||
<option value={0}>{t('DontAddRetrackers')}</option>
|
<option value={0}>{t('SettingsDialog.DontAddRetrackers')}</option>
|
||||||
<option value={1}>{t('AddRetrackers')}</option>
|
<option value={1}>{t('SettingsDialog.AddRetrackers')}</option>
|
||||||
<option value={2}>{t('RemoveRetrackers')}</option>
|
<option value={2}>{t('SettingsDialog.RemoveRetrackers')}</option>
|
||||||
<option value={3}>{t('ReplaceRetrackers')}</option>
|
<option value={3}>{t('SettingsDialog.ReplaceRetrackers')}</option>
|
||||||
</Select>
|
</Select>
|
||||||
<br />
|
<br />
|
||||||
</SecondarySettingsContent>
|
</SecondarySettingsContent>
|
||||||
@@ -456,191 +460,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
<CircularProgress color='secondary' />
|
<CircularProgress color='secondary' />
|
||||||
)}
|
)}
|
||||||
</Content>
|
</Content>
|
||||||
{/* <DialogTitle id='form-dialog-title'>{t('Settings')}</DialogTitle>
|
|
||||||
<DialogContent>
|
|
||||||
<TextField
|
|
||||||
onChange={onInputHost}
|
|
||||||
margin='dense'
|
|
||||||
id='TorrServerHost'
|
|
||||||
label={t('Host')}
|
|
||||||
value={tsHost}
|
|
||||||
type='url'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
{show && (
|
|
||||||
<>
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='CacheSize'
|
|
||||||
label={t('CacheSize')}
|
|
||||||
value={CacheSize}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='ReaderReadAHead'
|
|
||||||
label={t('ReaderReadAHead')}
|
|
||||||
value={ReaderReadAHead}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={PreloadBuffer} onChange={inputForm} id='PreloadBuffer' color='primary' />}
|
|
||||||
label={t('PreloadBuffer')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={UseDisk} onChange={inputForm} id='UseDisk' color='primary' />}
|
|
||||||
label={t('UseDisk')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<small>{t('UseDiskDesc')}</small>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={
|
|
||||||
<Switch checked={RemoveCacheOnDrop} onChange={inputForm} id='RemoveCacheOnDrop' color='primary' />
|
|
||||||
}
|
|
||||||
label={t('RemoveCacheOnDrop')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<small>{t('RemoveCacheOnDropDesc')}</small>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='TorrentsSavePath'
|
|
||||||
label={t('TorrentsSavePath')}
|
|
||||||
value={TorrentsSavePath}
|
|
||||||
type='url'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={EnableIPv6} onChange={inputForm} id='EnableIPv6' color='primary' />}
|
|
||||||
label={t('EnableIPv6')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={!DisableTCP} onChange={inputForm} id='DisableTCP' color='primary' />}
|
|
||||||
label={t('TCP')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={!DisableUTP} onChange={inputForm} id='DisableUTP' color='primary' />}
|
|
||||||
label={t('UTP')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={!DisablePEX} onChange={inputForm} id='DisablePEX' color='primary' />}
|
|
||||||
label={t('PEX')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={ForceEncrypt} onChange={inputForm} id='ForceEncrypt' color='primary' />}
|
|
||||||
label={t('ForceEncrypt')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='TorrentDisconnectTimeout'
|
|
||||||
label={t('TorrentDisconnectTimeout')}
|
|
||||||
value={TorrentDisconnectTimeout}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='ConnectionsLimit'
|
|
||||||
label={t('ConnectionsLimit')}
|
|
||||||
value={ConnectionsLimit}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={!DisableDHT} onChange={inputForm} id='DisableDHT' color='primary' />}
|
|
||||||
label={t('DHT')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='DhtConnectionLimit'
|
|
||||||
label={t('DhtConnectionLimit')}
|
|
||||||
value={DhtConnectionLimit}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='DownloadRateLimit'
|
|
||||||
label={t('DownloadRateLimit')}
|
|
||||||
value={DownloadRateLimit}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={!DisableUpload} onChange={inputForm} id='DisableUpload' color='primary' />}
|
|
||||||
label={t('Upload')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='UploadRateLimit'
|
|
||||||
label={t('UploadRateLimit')}
|
|
||||||
value={UploadRateLimit}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<TextField
|
|
||||||
onChange={inputForm}
|
|
||||||
margin='dense'
|
|
||||||
id='PeersListenPort'
|
|
||||||
label={t('PeersListenPort')}
|
|
||||||
value={PeersListenPort}
|
|
||||||
type='number'
|
|
||||||
fullWidth
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<FormControlLabel
|
|
||||||
control={<Switch checked={!DisableUPNP} onChange={inputForm} id='DisableUPNP' color='primary' />}
|
|
||||||
label={t('UPNP')}
|
|
||||||
/>
|
|
||||||
<br />
|
|
||||||
<InputLabel htmlFor='RetrackersMode'>{t('RetrackersMode')}</InputLabel>
|
|
||||||
<Select onChange={inputForm} type='number' native id='RetrackersMode' value={RetrackersMode}>
|
|
||||||
<option value={0}>{t('DontAddRetrackers')}</option>
|
|
||||||
<option value={1}>{t('AddRetrackers')}</option>
|
|
||||||
<option value={2}>{t('RemoveRetrackers')}</option>
|
|
||||||
<option value={3}>{t('ReplaceRetrackers')}</option>
|
|
||||||
</Select>
|
|
||||||
<br />
|
|
||||||
</>
|
|
||||||
)}
|
|
||||||
</DialogContent>
|
|
||||||
|
|
||||||
<DialogActions>
|
|
||||||
<Button onClick={handleClose} color='primary' variant='outlined'>
|
|
||||||
{t('Cancel')}
|
|
||||||
</Button>
|
|
||||||
|
|
||||||
<Button onClick={handleSave} color='primary' variant='outlined'>
|
|
||||||
{t('Save')}
|
|
||||||
</Button>
|
|
||||||
</DialogActions> */}
|
|
||||||
<FooterSection>
|
<FooterSection>
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={
|
control={
|
||||||
@@ -654,7 +474,7 @@ export default function SettingsDialog({ handleClose }) {
|
|||||||
color='primary'
|
color='primary'
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label='Pro mode'
|
label={t('SettingsDialog.ProMode')}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ export const Content = styled.div`
|
|||||||
${({ isLoading }) => css`
|
${({ isLoading }) => css`
|
||||||
background: #f1eff3;
|
background: #f1eff3;
|
||||||
min-height: 500px;
|
min-height: 500px;
|
||||||
|
overflow: auto;
|
||||||
|
|
||||||
${isLoading &&
|
${isLoading &&
|
||||||
css`
|
css`
|
||||||
|
|||||||
@@ -20,17 +20,14 @@
|
|||||||
},
|
},
|
||||||
"AddFromLink": "Add from Link",
|
"AddFromLink": "Add from Link",
|
||||||
"AddNewTorrent": "Add new torrent",
|
"AddNewTorrent": "Add new torrent",
|
||||||
"AddRetrackers": "Add retrackers",
|
|
||||||
"Buffer": "Preload Buffer / Cache",
|
"Buffer": "Preload Buffer / Cache",
|
||||||
"BufferNote": "Enable “Preload Buffer” in settings to see cache loading progress",
|
"BufferNote": "Enable “Preload Buffer” in settings to see cache loading progress",
|
||||||
"Cache": "Cache",
|
"Cache": "Cache",
|
||||||
"CacheSize": "Cache Size (Megabytes)",
|
|
||||||
"Cancel": "Cancel",
|
"Cancel": "Cancel",
|
||||||
"Clear": "Clear",
|
"Clear": "Clear",
|
||||||
"Close": "Close",
|
"Close": "Close",
|
||||||
"CloseServer?": "Do you want to turn off server?",
|
"CloseServer?": "Do you want to turn off server?",
|
||||||
"CloseServer": "Turn Off",
|
"CloseServer": "Turn Off",
|
||||||
"ConnectionsLimit": "Connections Limit",
|
|
||||||
"CopyHash": "Copy Hash",
|
"CopyHash": "Copy Hash",
|
||||||
"CopyLink": "Copy link",
|
"CopyLink": "Copy link",
|
||||||
"Data": "Data",
|
"Data": "Data",
|
||||||
@@ -42,21 +39,15 @@
|
|||||||
"header": "$t(DetailedCacheView.button)"
|
"header": "$t(DetailedCacheView.button)"
|
||||||
},
|
},
|
||||||
"Details": "Details",
|
"Details": "Details",
|
||||||
"DHT": "DHT (Distributed Hash Table)",
|
|
||||||
"DhtConnectionLimit": "DHT Connection Limit",
|
|
||||||
"Donate?": "Want to donate?",
|
"Donate?": "Want to donate?",
|
||||||
"Donate": "Donate",
|
"Donate": "Donate",
|
||||||
"DontAddRetrackers": "Don`t add retrackers",
|
|
||||||
"DownloadPlaylist": "Download Playlist",
|
"DownloadPlaylist": "Download Playlist",
|
||||||
"DownloadRateLimit": "Download Rate Limit (Kilobytes)",
|
|
||||||
"DownloadSpeed": "Download speed",
|
"DownloadSpeed": "Download speed",
|
||||||
"Drop": "Drop",
|
"Drop": "Drop",
|
||||||
"DropTorrent": "Reset Torrent",
|
"DropTorrent": "Reset Torrent",
|
||||||
"Edit": "Edit",
|
"Edit": "Edit",
|
||||||
"EditTorrent": "Edit torrent",
|
"EditTorrent": "Edit torrent",
|
||||||
"EnableIPv6": "IPv6",
|
|
||||||
"Episode": "Episode",
|
"Episode": "Episode",
|
||||||
"ForceEncrypt": "Force Encrypt Headers",
|
|
||||||
"FromLatestFile": "From Latest File",
|
"FromLatestFile": "From Latest File",
|
||||||
"Full": "Full",
|
"Full": "Full",
|
||||||
"Host": "Host",
|
"Host": "Host",
|
||||||
@@ -69,55 +60,69 @@
|
|||||||
"OK": "OK",
|
"OK": "OK",
|
||||||
"OpenLink": "Open link",
|
"OpenLink": "Open link",
|
||||||
"Peers": "Peers",
|
"Peers": "Peers",
|
||||||
"PeersListenPort": "Peers Listen Port",
|
|
||||||
"PEX": "PEX (Peer Exchange)",
|
|
||||||
"PiecesCount": "Pieces count",
|
"PiecesCount": "Pieces count",
|
||||||
"PiecesLength": "Pieces length",
|
"PiecesLength": "Pieces length",
|
||||||
"Preload": "Preload",
|
"Preload": "Preload",
|
||||||
"PreloadBuffer": "Preload Buffer",
|
|
||||||
"ProjectSource": "Project page",
|
"ProjectSource": "Project page",
|
||||||
"ReaderReadAHead": "Reader Read Ahead (5-100%)",
|
|
||||||
"Releases": "Releases",
|
"Releases": "Releases",
|
||||||
"RemoveAll": "Remove All",
|
"RemoveAll": "Remove All",
|
||||||
"RemoveCacheOnDrop": "Remove Cache from Disk on Drop Torrent",
|
|
||||||
"RemoveCacheOnDropDesc": "If disabled, remove cache on delete torrent.",
|
|
||||||
"RemoveRetrackers": "Remove retrackers",
|
|
||||||
"RemoveViews": "Remove View States",
|
"RemoveViews": "Remove View States",
|
||||||
"ReplaceRetrackers": "Replace retrackers",
|
|
||||||
"Resolution": "Resolution",
|
"Resolution": "Resolution",
|
||||||
"RetrackersMode": "Retrackers Mode",
|
|
||||||
"Save": "Save",
|
"Save": "Save",
|
||||||
"ScrollDown": "scroll down",
|
"ScrollDown": "scroll down",
|
||||||
"Season": "Season",
|
"Season": "Season",
|
||||||
"SelectSeason": "Select Season",
|
"SelectSeason": "Select Season",
|
||||||
"Settings": "Settings",
|
"SettingsDialog": {
|
||||||
|
"AddRetrackers": "Add retrackers",
|
||||||
|
"CacheSize": "Cache Size",
|
||||||
|
"CacheSizeLabel": "Cache {{cacheSize}} MB",
|
||||||
|
"CacheSettings": "Cache Settings",
|
||||||
|
"ConnectionsLimit": "Connections Limit",
|
||||||
|
"DHT": "DHT (Distributed Hash Table)",
|
||||||
|
"DhtConnectionLimit": "DHT Connection Limit",
|
||||||
|
"DontAddRetrackers": "Don`t add retrackers",
|
||||||
|
"DownloadRateLimit": "Download Rate Limit (Kilobytes)",
|
||||||
|
"ForceEncrypt": "Force Encrypt Headers",
|
||||||
|
"PeersListenPort": "Peers Listen Port",
|
||||||
|
"PreloadBuffer": "Preload Buffer",
|
||||||
|
"ProMode": "PRO mode",
|
||||||
|
"ReaderReadAHead": "Reader Read Ahead (5-100%)",
|
||||||
|
"RemoveCacheOnDrop": "Remove Cache from Disk on Drop Torrent",
|
||||||
|
"RemoveCacheOnDropDesc": "If disabled, remove cache on delete torrent.",
|
||||||
|
"RemoveRetrackers": "Remove retrackers",
|
||||||
|
"ReplaceRetrackers": "Replace retrackers",
|
||||||
|
"RetrackersMode": "Retrackers Mode",
|
||||||
|
"Settings": "Settings",
|
||||||
|
"TorrentDisconnectTimeout": "Torrent Disconnect Timeout",
|
||||||
|
"TorrentsSavePath": "Torrents Save Path",
|
||||||
|
"Upload": "Upload (not recommended to disable)",
|
||||||
|
"UploadRateLimit": "Upload Rate Limit (Kilobytes)",
|
||||||
|
"UseDisk": "Use Disk for Cache",
|
||||||
|
"UseDiskDesc": "Better use external media on flash-based devices",
|
||||||
|
"Tabs": {
|
||||||
|
"Main": "Main",
|
||||||
|
"Additional": "Additional",
|
||||||
|
"AdditionalDisabled": "Additional (enable PRO mode)"
|
||||||
|
}
|
||||||
|
},
|
||||||
"Size": "Size",
|
"Size": "Size",
|
||||||
"SpecialThanks": "Special Thanks",
|
"SpecialThanks": "Special Thanks",
|
||||||
"Speed": "Speed",
|
"Speed": "Speed",
|
||||||
"Support": "Support",
|
"Support": "Support",
|
||||||
"TCP": "TCP (Transmission Control Protocol)",
|
|
||||||
"ThanksToEveryone": "Thanks to everyone who tested and helped.",
|
"ThanksToEveryone": "Thanks to everyone who tested and helped.",
|
||||||
"TorrentAdded": "Added",
|
"TorrentAdded": "Added",
|
||||||
"TorrentClosed": "Сlosed",
|
"TorrentClosed": "Сlosed",
|
||||||
"TorrentContent": "Torrent Content",
|
"TorrentContent": "Torrent Content",
|
||||||
"TorrentDetails": "Torrent Details",
|
"TorrentDetails": "Torrent Details",
|
||||||
"TorrentDisconnectTimeout": "Torrent Disconnect Timeout",
|
|
||||||
"TorrentGettingInfo": "Getting Info",
|
"TorrentGettingInfo": "Getting Info",
|
||||||
"TorrentInDb": "In DB",
|
"TorrentInDb": "In DB",
|
||||||
"TorrentPreload": "Preload",
|
"TorrentPreload": "Preload",
|
||||||
"TorrentSize": "Torrent size",
|
"TorrentSize": "Torrent size",
|
||||||
"TorrentsSavePath": "Torrents Save Path",
|
|
||||||
"TorrentState": "Torrent State",
|
"TorrentState": "Torrent State",
|
||||||
"TorrentStatus": "Torrent Status",
|
"TorrentStatus": "Torrent Status",
|
||||||
"TorrentWorking": "Active",
|
"TorrentWorking": "Active",
|
||||||
"TurnOff": "Turn Off",
|
"TurnOff": "Turn Off",
|
||||||
"Upload": "Upload (not recommended to disable)",
|
|
||||||
"UploadFile": "Upload File",
|
"UploadFile": "Upload File",
|
||||||
"UploadRateLimit": "Upload Rate Limit (Kilobytes)",
|
|
||||||
"UploadSpeed": "Upload speed",
|
"UploadSpeed": "Upload speed",
|
||||||
"UPNP": "UPnP (Universal Plug and Play)",
|
|
||||||
"UseDisk": "Use Disk for Cache",
|
|
||||||
"UseDiskDesc": "Better use external media on flash-based devices",
|
|
||||||
"UTP": "μTP (Micro Transport Protocol)",
|
|
||||||
"Viewed": "Viewed"
|
"Viewed": "Viewed"
|
||||||
}
|
}
|
||||||
@@ -20,17 +20,14 @@
|
|||||||
},
|
},
|
||||||
"AddFromLink": "Добавить",
|
"AddFromLink": "Добавить",
|
||||||
"AddNewTorrent": "Добавить новый торрент",
|
"AddNewTorrent": "Добавить новый торрент",
|
||||||
"AddRetrackers": "Добавлять",
|
|
||||||
"Buffer": "Предзагрузка / Кеш",
|
"Buffer": "Предзагрузка / Кеш",
|
||||||
"BufferNote": "Включите «Наполнять кеш перед началом воспроизведения» в настройках для показа заполнения кеша",
|
"BufferNote": "Включите «Наполнять кеш перед началом воспроизведения» в настройках для показа заполнения кеша",
|
||||||
"Cache": "Кеш",
|
"Cache": "Кеш",
|
||||||
"CacheSize": "Размер кеша (Мегабайты)",
|
|
||||||
"Cancel": "Отмена",
|
"Cancel": "Отмена",
|
||||||
"Clear": "Очистить",
|
"Clear": "Очистить",
|
||||||
"Close": "Закрыть",
|
"Close": "Закрыть",
|
||||||
"CloseServer?": "Хотите выключить сервер?",
|
"CloseServer?": "Хотите выключить сервер?",
|
||||||
"CloseServer": "Выкл. сервер",
|
"CloseServer": "Выкл. сервер",
|
||||||
"ConnectionsLimit": "Торрент-соединения (рек. 20-25)",
|
|
||||||
"CopyHash": "Скопировать хеш",
|
"CopyHash": "Скопировать хеш",
|
||||||
"CopyLink": "Копировать",
|
"CopyLink": "Копировать",
|
||||||
"Data": "Данные",
|
"Data": "Данные",
|
||||||
@@ -42,21 +39,15 @@
|
|||||||
"header": "Заполнение кеша"
|
"header": "Заполнение кеша"
|
||||||
},
|
},
|
||||||
"Details": "Инфо",
|
"Details": "Инфо",
|
||||||
"DHT": "DHT (Distributed Hash Table)",
|
|
||||||
"DhtConnectionLimit": "Лимит подключений DHT",
|
|
||||||
"Donate?": "Хотите поддержать проект?",
|
"Donate?": "Хотите поддержать проект?",
|
||||||
"Donate": "Поддержка",
|
"Donate": "Поддержка",
|
||||||
"DontAddRetrackers": "Ничего не делать",
|
|
||||||
"DownloadPlaylist": "Скачать плейлист",
|
"DownloadPlaylist": "Скачать плейлист",
|
||||||
"DownloadRateLimit": "Ограничение скорости загрузки (Килобайты)",
|
|
||||||
"DownloadSpeed": "Скорость загрузки",
|
"DownloadSpeed": "Скорость загрузки",
|
||||||
"Drop": "Сброс",
|
"Drop": "Сброс",
|
||||||
"DropTorrent": "Сбросить торрент",
|
"DropTorrent": "Сбросить торрент",
|
||||||
"Edit": "Изменить",
|
"Edit": "Изменить",
|
||||||
"EditTorrent": "Изменить торрент",
|
"EditTorrent": "Изменить торрент",
|
||||||
"EnableIPv6": "IPv6",
|
|
||||||
"Episode": "Серия",
|
"Episode": "Серия",
|
||||||
"ForceEncrypt": "Принудительное шифрование заголовков",
|
|
||||||
"FromLatestFile": "C последнего файла",
|
"FromLatestFile": "C последнего файла",
|
||||||
"Full": "Полный",
|
"Full": "Полный",
|
||||||
"Host": "Хост",
|
"Host": "Хост",
|
||||||
@@ -69,55 +60,69 @@
|
|||||||
"OK": "OK",
|
"OK": "OK",
|
||||||
"OpenLink": "Открыть",
|
"OpenLink": "Открыть",
|
||||||
"Peers": "Пиры",
|
"Peers": "Пиры",
|
||||||
"PeersListenPort": "Порт для входящих подключений",
|
|
||||||
"PEX": "PEX (Peer Exchange)",
|
|
||||||
"PiecesCount": "Кол-во блоков",
|
"PiecesCount": "Кол-во блоков",
|
||||||
"PiecesLength": "Размер блока",
|
"PiecesLength": "Размер блока",
|
||||||
"Preload": "Предзагр.",
|
"Preload": "Предзагр.",
|
||||||
"PreloadBuffer": "Наполнять кеш перед началом воспроизведения",
|
|
||||||
"ProjectSource": "Сайт проекта",
|
"ProjectSource": "Сайт проекта",
|
||||||
"ReaderReadAHead": "Кеш предзагрузки (5-100%, рек. 95%)",
|
|
||||||
"Releases": "Релизы",
|
"Releases": "Релизы",
|
||||||
"RemoveAll": "Удалить все",
|
"RemoveAll": "Удалить все",
|
||||||
"RemoveCacheOnDrop": "Очищать кеш на диске при отключении торрента",
|
|
||||||
"RemoveCacheOnDropDesc": "Если отключено, кэш очищается при удалении торрента.",
|
|
||||||
"RemoveRetrackers": "Удалять",
|
|
||||||
"RemoveViews": "Очистить просмотры",
|
"RemoveViews": "Очистить просмотры",
|
||||||
"ReplaceRetrackers": "Заменять",
|
|
||||||
"Resolution": "Разреш.",
|
"Resolution": "Разреш.",
|
||||||
"RetrackersMode": "Ретрекеры",
|
|
||||||
"Save": "Сохранить",
|
"Save": "Сохранить",
|
||||||
"ScrollDown": "прокрутить вниз",
|
"ScrollDown": "прокрутить вниз",
|
||||||
"Season": "Сезон",
|
"Season": "Сезон",
|
||||||
"SelectSeason": "Выбор сезона",
|
"SelectSeason": "Выбор сезона",
|
||||||
"Settings": "Настройки",
|
"SettingsDialog": {
|
||||||
|
"AddRetrackers": "Добавлять",
|
||||||
|
"CacheSize": "Размер кеша",
|
||||||
|
"CacheSizeLabel": "Кеш {{cacheSize}} МБ",
|
||||||
|
"CacheSettings": "Настройки кеша",
|
||||||
|
"ConnectionsLimit": "Торрент-соединения (рек. 20-25)",
|
||||||
|
"DHT": "DHT (Distributed Hash Table)",
|
||||||
|
"DhtConnectionLimit": "Лимит подключений DHT",
|
||||||
|
"DontAddRetrackers": "Ничего не делать",
|
||||||
|
"DownloadRateLimit": "Ограничение скорости загрузки (Килобайты)",
|
||||||
|
"ForceEncrypt": "Принудительное шифрование заголовков",
|
||||||
|
"PeersListenPort": "Порт для входящих подключений",
|
||||||
|
"PreloadBuffer": "Наполнять кеш перед началом воспроизведения",
|
||||||
|
"ProMode": "ПРО режим",
|
||||||
|
"ReaderReadAHead": "Кеш предзагрузки (5-100%, рек. 95%)",
|
||||||
|
"RemoveCacheOnDrop": "Очищать кеш на диске при отключении торрента",
|
||||||
|
"RemoveCacheOnDropDesc": "Если отключено, кэш очищается при удалении торрента.",
|
||||||
|
"RemoveRetrackers": "Удалять",
|
||||||
|
"ReplaceRetrackers": "Заменять",
|
||||||
|
"RetrackersMode": "Ретрекеры",
|
||||||
|
"Settings": "Настройки",
|
||||||
|
"TorrentDisconnectTimeout": "Тайм-аут отключения торрента (секунды)",
|
||||||
|
"TorrentsSavePath": "Путь хранения кеша",
|
||||||
|
"Upload": "Отдача (не рекомендуется отключать)",
|
||||||
|
"UploadRateLimit": "Ограничение скорости отдачи (Килобайты)",
|
||||||
|
"UseDisk": "Использовать диск для кеша",
|
||||||
|
"UseDiskDesc": "Рекомендуется использовать внешние носители на устройствах с flash-памятью",
|
||||||
|
"Tabs": {
|
||||||
|
"Main": "Основные",
|
||||||
|
"Additional": "Дополнительные",
|
||||||
|
"AdditionalDisabled": "Дополнительные (включите ПРО режим)"
|
||||||
|
}
|
||||||
|
},
|
||||||
"Size": "Размер",
|
"Size": "Размер",
|
||||||
"SpecialThanks": "Отдельное спасибо",
|
"SpecialThanks": "Отдельное спасибо",
|
||||||
"Speed": "Скорость",
|
"Speed": "Скорость",
|
||||||
"Support": "Поддержать",
|
"Support": "Поддержать",
|
||||||
"TCP": "TCP (Transmission Control Protocol)",
|
|
||||||
"ThanksToEveryone": "Спасибо всем, кто тестировал и помогал!",
|
"ThanksToEveryone": "Спасибо всем, кто тестировал и помогал!",
|
||||||
"TorrentAdded": "Добавлен",
|
"TorrentAdded": "Добавлен",
|
||||||
"TorrentClosed": "Закрыт",
|
"TorrentClosed": "Закрыт",
|
||||||
"TorrentContent": "Содержимое торрента",
|
"TorrentContent": "Содержимое торрента",
|
||||||
"TorrentDetails": "Информация о торренте",
|
"TorrentDetails": "Информация о торренте",
|
||||||
"TorrentDisconnectTimeout": "Тайм-аут отключения торрента (секунды)",
|
|
||||||
"TorrentGettingInfo": "Получение инфо",
|
"TorrentGettingInfo": "Получение инфо",
|
||||||
"TorrentInDb": "Торрент в БД",
|
"TorrentInDb": "Торрент в БД",
|
||||||
"TorrentPreload": "Предзагрузка",
|
"TorrentPreload": "Предзагрузка",
|
||||||
"TorrentSize": "Размер торрента",
|
"TorrentSize": "Размер торрента",
|
||||||
"TorrentsSavePath": "Путь хранения кеша",
|
|
||||||
"TorrentState": "Данные торрента",
|
"TorrentState": "Данные торрента",
|
||||||
"TorrentStatus": "Состояние торрента",
|
"TorrentStatus": "Состояние торрента",
|
||||||
"TorrentWorking": "Активен",
|
"TorrentWorking": "Активен",
|
||||||
"TurnOff": "Выключить",
|
"TurnOff": "Выключить",
|
||||||
"Upload": "Отдача (не рекомендуется отключать)",
|
|
||||||
"UploadFile": "Загрузить файл",
|
"UploadFile": "Загрузить файл",
|
||||||
"UploadRateLimit": "Ограничение скорости отдачи (Килобайты)",
|
|
||||||
"UploadSpeed": "Скорость отдачи",
|
"UploadSpeed": "Скорость отдачи",
|
||||||
"UPNP": "UPnP (Universal Plug and Play)",
|
|
||||||
"UseDisk": "Использовать диск для кеша",
|
|
||||||
"UseDiskDesc": "Рекомендуется использовать внешние носители на устройствах с flash-памятью",
|
|
||||||
"UTP": "μTP (Micro Transport Protocol)",
|
|
||||||
"Viewed": "Просм."
|
"Viewed": "Просм."
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user