1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-21 22:05:38 -04:00

Translate frontend/AddSeries

This commit is contained in:
Stevie Robinson
2023-08-04 14:16:29 +02:00
committed by Mark McDowall
parent f6c05d4456
commit 02b0710814
13 changed files with 161 additions and 94 deletions
@@ -9,6 +9,7 @@ import PageContent from 'Components/Page/PageContent';
import PageContentBody from 'Components/Page/PageContentBody';
import { icons, kinds } from 'Helpers/Props';
import getErrorMessage from 'Utilities/Object/getErrorMessage';
import translate from 'Utilities/String/translate';
import AddNewSeriesSearchResultConnector from './AddNewSeriesSearchResultConnector';
import styles from './AddNewSeries.css';
@@ -87,7 +88,7 @@ class AddNewSeries extends Component {
const isFetching = this.state.isFetching;
return (
<PageContent title="Add New Series">
<PageContent title={translate('AddNewSeries')}>
<PageContentBody>
<div className={styles.searchContainer}>
<div className={styles.searchIconContainer}>
@@ -126,7 +127,7 @@ class AddNewSeries extends Component {
!isFetching && !!error ?
<div className={styles.message}>
<div className={styles.helpText}>
Failed to load search results, please try again.
{translate('AddNewSeriesError')}
</div>
<div>{getErrorMessage(error)}</div>
</div> : null
@@ -151,11 +152,11 @@ class AddNewSeries extends Component {
{
!isFetching && !error && !items.length && !!term &&
<div className={styles.message}>
<div className={styles.noResults}>Couldn't find any results for '{term}'</div>
<div>You can also search using TVDB ID of a show. eg. tvdb:71663</div>
<div className={styles.noResults}>{translate('CouldNotFindResults', { term })}</div>
<div>{translate('SearchByTvdbId')}</div>
<div>
<Link to="https://wiki.servarr.com/sonarr/faq#why-cant-i-add-a-new-series-when-i-know-the-tvdb-id">
Why can't I find my show?
{translate('WhyCantIFindMyShow')}
</Link>
</div>
</div>
@@ -166,9 +167,9 @@ class AddNewSeries extends Component {
null :
<div className={styles.message}>
<div className={styles.helpText}>
It's easy to add a new series, just start typing the name the series you want to add.
{translate('AddNewSeriesHelpText')}
</div>
<div>You can also search using TVDB ID of a show. eg. tvdb:71663</div>
<div>{translate('SearchByTvdbId')}</div>
</div>
}
@@ -176,14 +177,14 @@ class AddNewSeries extends Component {
!term && !hasExistingSeries ?
<div className={styles.message}>
<div className={styles.noSeriesText}>
You haven't added any series yet, do you want to import some or all of your series first?
{translate('NoSeriesHaveBeenAdded')}
</div>
<div>
<Button
to="/add/import"
kind={kinds.PRIMARY}
>
Import Existing Series
{translate('ImportExistingSeries')}
</Button>
</div>
</div> :
@@ -120,7 +120,7 @@ class AddNewSeriesModalContent extends Component {
<Form {...otherProps}>
<FormGroup>
<FormLabel>Root Folder</FormLabel>
<FormLabel>{translate('RootFolder')}</FormLabel>
<FormInputGroup
type={inputTypes.ROOT_FOLDER_SELECT}
@@ -133,7 +133,7 @@ class AddNewSeriesModalContent extends Component {
seriesFolder: folder,
isWindows
}}
helpText={`'${folder}' subfolder will be created automatically`}
helpText={translate('AddNewSeriesRootFolderHelpText', { folder })}
onChange={onInputChange}
{...rootFolderPath}
/>
@@ -141,7 +141,7 @@ class AddNewSeriesModalContent extends Component {
<FormGroup>
<FormLabel>
Monitor
{translate('Monitor')}
<Popover
anchor={
@@ -150,7 +150,7 @@ class AddNewSeriesModalContent extends Component {
name={icons.INFO}
/>
}
title="Monitoring Options"
title={translate('MonitoringOptions')}
body={<SeriesMonitoringOptionsPopoverContent />}
position={tooltipPositions.RIGHT}
/>
@@ -165,7 +165,7 @@ class AddNewSeriesModalContent extends Component {
</FormGroup>
<FormGroup>
<FormLabel>Quality Profile</FormLabel>
<FormLabel>{translate('QualityProfile')}</FormLabel>
<FormInputGroup
type={inputTypes.QUALITY_PROFILE_SELECT}
@@ -177,7 +177,7 @@ class AddNewSeriesModalContent extends Component {
<FormGroup>
<FormLabel>
Series Type
{translate('SeriesType')}
<Popover
anchor={
@@ -186,7 +186,7 @@ class AddNewSeriesModalContent extends Component {
name={icons.INFO}
/>
}
title="Series Types"
title={translate('SeriesTypes')}
body={<SeriesTypePopoverContent />}
position={tooltipPositions.RIGHT}
/>
@@ -198,14 +198,12 @@ class AddNewSeriesModalContent extends Component {
onChange={onInputChange}
{...seriesType}
value={this.state.seriesType}
helpText={translate(
'Series type is used for renaming, parsing and searching'
)}
helpText={translate('SeriesTypesHelpText')}
/>
</FormGroup>
<FormGroup>
<FormLabel>Season Folder</FormLabel>
<FormLabel>{translate('SeasonFolder')}</FormLabel>
<FormInputGroup
type={inputTypes.CHECK}
@@ -216,7 +214,7 @@ class AddNewSeriesModalContent extends Component {
</FormGroup>
<FormGroup>
<FormLabel>Tags</FormLabel>
<FormLabel>{translate('Tags')}</FormLabel>
<FormInputGroup
type={inputTypes.TAG}
@@ -234,7 +232,7 @@ class AddNewSeriesModalContent extends Component {
<div>
<label className={styles.searchLabelContainer}>
<span className={styles.searchLabel}>
Start search for missing episodes
{translate('AddNewSeriesSearchForMissingEpisodes')}
</span>
<CheckInput
@@ -248,7 +246,7 @@ class AddNewSeriesModalContent extends Component {
<label className={styles.searchLabelContainer}>
<span className={styles.searchLabel}>
Start search for cutoff unmet episodes
{translate('AddNewSeriesSearchForCutoffUnmetEpisodes')}
</span>
<CheckInput
@@ -267,7 +265,7 @@ class AddNewSeriesModalContent extends Component {
isSpinning={isAdding}
onPress={this.onAddSeriesPress}
>
Add {title}
{translate('AddSeriesWithTitle', { title })}
</SpinnerButton>
</ModalFooter>
</ModalContent>
@@ -7,6 +7,7 @@ import Link from 'Components/Link/Link';
import MetadataAttribution from 'Components/MetadataAttribution';
import { icons, kinds, sizes } from 'Helpers/Props';
import SeriesPoster from 'Series/SeriesPoster';
import translate from 'Utilities/String/translate';
import AddNewSeriesModal from './AddNewSeriesModal';
import styles from './AddNewSeriesSearchResult.css';
@@ -72,10 +73,10 @@ class AddNewSeriesSearchResult extends Component {
} = this.state;
const linkProps = isExistingSeries ? { to: `/series/${titleSlug}` } : { onPress: this.onPress };
let seasons = '1 Season';
let seasons = translate('OneSeason');
if (seasonCount > 1) {
seasons = `${seasonCount} Seasons`;
seasons = translate('CountSeasons', { count: seasonCount });
}
return (
@@ -121,14 +122,14 @@ class AddNewSeriesSearchResult extends Component {
className={styles.alreadyExistsIcon}
name={icons.CHECK_CIRCLE}
size={36}
title="Already in your library"
title={translate('AlreadyInYourLibrary')}
/> :
null
}
<Link
className={styles.tvdbLink}
to={`http://www.thetvdb.com/?tab=series&id=${tvdbId}`}
to={`https://www.thetvdb.com/?tab=series&id=${tvdbId}`}
onPress={this.onTVDBLinkPress}
>
<Icon
@@ -170,7 +171,7 @@ class AddNewSeriesSearchResult extends Component {
kind={kinds.DANGER}
size={sizes.LARGE}
>
Ended
{translate('Ended')}
</Label> :
null
}
@@ -181,7 +182,7 @@ class AddNewSeriesSearchResult extends Component {
kind={kinds.INFO}
size={sizes.LARGE}
>
Upcoming
{translate('Upcoming')}
</Label> :
null
}