- No list items or recommendations found, to get started you'll want to add a new movie, import some existing ones, or add a list.
+ {translate('NoListRecommendations')}
diff --git a/frontend/src/DiscoverMovie/Overview/DiscoverMovieOverviewInfo.js b/frontend/src/DiscoverMovie/Overview/DiscoverMovieOverviewInfo.js
index ca728f2e4..5352dd464 100644
--- a/frontend/src/DiscoverMovie/Overview/DiscoverMovieOverviewInfo.js
+++ b/frontend/src/DiscoverMovie/Overview/DiscoverMovieOverviewInfo.js
@@ -2,6 +2,7 @@ import PropTypes from 'prop-types';
import React from 'react';
import { icons } from 'Helpers/Props';
import dimensions from 'Styles/Variables/dimensions';
+import translate from 'Utilities/String/translate';
import DiscoverMovieOverviewInfoRow from './DiscoverMovieOverviewInfoRow';
import styles from './DiscoverMovieOverviewInfo.css';
@@ -54,7 +55,7 @@ function getInfoRowProps(row, props) {
if (name === 'year') {
return {
- title: 'Year',
+ title: translate('Year'),
iconName: icons.CALENDAR,
label: props.year
};
@@ -62,7 +63,7 @@ function getInfoRowProps(row, props) {
if (name === 'genres') {
return {
- title: 'Genres',
+ title: translate('Genres'),
iconName: icons.GENRE,
label: props.genres.slice(0, 2).join(', ')
};
@@ -70,7 +71,7 @@ function getInfoRowProps(row, props) {
if (name === 'ratings') {
return {
- title: 'Ratings',
+ title: translate('Ratings'),
iconName: icons.HEART,
label: `${props.ratings.value * 10}%`
};
@@ -78,7 +79,7 @@ function getInfoRowProps(row, props) {
if (name === 'certification') {
return {
- title: 'Certification',
+ title: translate('Certification'),
iconName: icons.FILM,
label: props.certification
};
@@ -86,7 +87,7 @@ function getInfoRowProps(row, props) {
if (name === 'studio') {
return {
- title: 'Studio',
+ title: translate('Studio'),
iconName: icons.STUDIO,
label: props.studio
};
diff --git a/frontend/src/DiscoverMovie/Overview/Options/DiscoverMovieOverviewOptionsModalContent.js b/frontend/src/DiscoverMovie/Overview/Options/DiscoverMovieOverviewOptionsModalContent.js
index 2bc383416..e6a2e6e29 100644
--- a/frontend/src/DiscoverMovie/Overview/Options/DiscoverMovieOverviewOptionsModalContent.js
+++ b/frontend/src/DiscoverMovie/Overview/Options/DiscoverMovieOverviewOptionsModalContent.js
@@ -14,9 +14,9 @@ import { inputTypes } from 'Helpers/Props';
import translate from 'Utilities/String/translate';
const posterSizeOptions = [
- { key: 'small', value: 'Small' },
- { key: 'medium', value: 'Medium' },
- { key: 'large', value: 'Large' }
+ { key: 'small', value: translate('Small') },
+ { key: 'medium', value: translate('Medium') },
+ { key: 'large', value: translate('Large') }
];
class DiscoverMovieOverviewOptionsModalContent extends Component {
diff --git a/frontend/src/DiscoverMovie/Posters/Options/DiscoverMoviePosterOptionsModalContent.js b/frontend/src/DiscoverMovie/Posters/Options/DiscoverMoviePosterOptionsModalContent.js
index c15b5ebb7..dbaf00100 100644
--- a/frontend/src/DiscoverMovie/Posters/Options/DiscoverMoviePosterOptionsModalContent.js
+++ b/frontend/src/DiscoverMovie/Posters/Options/DiscoverMoviePosterOptionsModalContent.js
@@ -14,9 +14,9 @@ import { inputTypes } from 'Helpers/Props';
import translate from 'Utilities/String/translate';
const posterSizeOptions = [
- { key: 'small', value: 'Small' },
- { key: 'medium', value: 'Medium' },
- { key: 'large', value: 'Large' }
+ { key: 'small', value: translate('Small') },
+ { key: 'medium', value: translate('Medium') },
+ { key: 'large', value: translate('Large') }
];
class DiscoverMoviePosterOptionsModalContent extends Component {
diff --git a/frontend/src/InteractiveImport/Folder/InteractiveImportSelectFolderModalContent.js b/frontend/src/InteractiveImport/Folder/InteractiveImportSelectFolderModalContent.js
index c99f4e33a..5cc14ffbe 100644
--- a/frontend/src/InteractiveImport/Folder/InteractiveImportSelectFolderModalContent.js
+++ b/frontend/src/InteractiveImport/Folder/InteractiveImportSelectFolderModalContent.js
@@ -17,11 +17,11 @@ import styles from './InteractiveImportSelectFolderModalContent.css';
const recentFoldersColumns = [
{
name: 'folder',
- label: 'Folder'
+ label: translate('Folder')
},
{
name: 'lastUsed',
- label: 'Last Used'
+ label: translate('LastUsed')
},
{
name: 'actions',
diff --git a/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js b/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js
index 1aab8f6dc..48d31e397 100644
--- a/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js
+++ b/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js
@@ -69,8 +69,8 @@ const columns = [
];
const filterExistingFilesOptions = {
- ALL: 'all',
- NEW: 'new'
+ ALL: translate('All'),
+ NEW: translate('New')
};
const importModeOptions = [
@@ -198,25 +198,25 @@ class InteractiveImportModalContent extends Component {
} = this.state;
const selectedIds = this.getSelectedIds();
- const errorMessage = getErrorMessage(error, 'Unable to load manual import items');
+ const errorMessage = getErrorMessage(error, translate('UnableToLoadManualImportItems'));
const bulkSelectOptions = [
- { key: SELECT, value: 'Select...', disabled: true },
- { key: LANGUAGE, value: 'Select Language' },
- { key: QUALITY, value: 'Select Quality' }
- ];
+ {
+ key: SELECT, value: translate('SelectDotDot'), disabled: true },
+ { key: LANGUAGE, value: translate('SelectLanguage') },
+ { key: QUALITY, value: translate('SelectQuality') }];
if (allowMovieChange) {
bulkSelectOptions.splice(1, 0, {
key: MOVIE,
- value: 'Select Movie'
+ value: translate('SelectMovie')
});
}
return (
- Manual Import - {title || folder}
+ {translate('ManualImport')} - {title || folder}
@@ -232,7 +232,7 @@ class InteractiveImportModalContent extends Component {
{
- filterExistingFiles ? 'Unmapped Files Only' : 'All Files'
+ filterExistingFiles ? translate('UnmappedFilesOnly') : translate('AllFiles')
}
@@ -243,7 +243,7 @@ class InteractiveImportModalContent extends Component {
isSelected={!filterExistingFiles}
onPress={this.onFilterExistingFilesChange}
>
- All Files
+ {translate('AllFiles')}
- Unmapped Files Only
+ {translate('UnmappedFilesOnly')}
@@ -302,7 +302,7 @@ class InteractiveImportModalContent extends Component {
{
isPopulated && !items.length && !isFetching &&
- 'No video files were found in the selected folder'
+ translate('NoVideoFilesFoundSelectedFolder')
}
@@ -345,7 +345,7 @@ class InteractiveImportModalContent extends Component {
isDisabled={!selectedIds.length || !!invalidRowsSelected.length}
onPress={this.onImportSelectedPress}
>
- Import
+ {translate('Import')}
diff --git a/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContentConnector.js b/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContentConnector.js
index d1544c79c..75bedbc0d 100644
--- a/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContentConnector.js
+++ b/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContentConnector.js
@@ -7,6 +7,7 @@ import * as commandNames from 'Commands/commandNames';
import { executeCommand } from 'Store/Actions/commandActions';
import { clearInteractiveImport, fetchInteractiveImportItems, setInteractiveImportMode, setInteractiveImportSort } from 'Store/Actions/interactiveImportActions';
import createClientSideCollectionSelector from 'Store/Selectors/createClientSideCollectionSelector';
+import translate from 'Utilities/String/translate';
import InteractiveImportModalContent from './InteractiveImportModalContent';
function createMapStateToProps() {
@@ -113,17 +114,17 @@ class InteractiveImportModalContentConnector extends Component {
} = item;
if (!movie) {
- this.setState({ interactiveImportErrorMessage: 'Movie must be chosen for each selected file' });
+ this.setState({ interactiveImportErrorMessage: translate('InteractiveImportErrMovie') });
return false;
}
if (!quality) {
- this.setState({ interactiveImportErrorMessage: 'Quality must be chosen for each selected file' });
+ this.setState({ interactiveImportErrorMessage: translate('InteractiveImportErrQuality') });
return false;
}
if (!languages) {
- this.setState({ interactiveImportErrorMessage: 'Language must be chosen for each selected file' });
+ this.setState({ interactiveImportErrorMessage: translate('InteractiveImportErrLanguage') });
return false;
}
diff --git a/frontend/src/InteractiveImport/Language/SelectLanguageModalContent.js b/frontend/src/InteractiveImport/Language/SelectLanguageModalContent.js
index 67f182ad7..3184c8607 100644
--- a/frontend/src/InteractiveImport/Language/SelectLanguageModalContent.js
+++ b/frontend/src/InteractiveImport/Language/SelectLanguageModalContent.js
@@ -77,7 +77,7 @@ class SelectLanguageModalContent extends Component {
return (
diff --git a/frontend/src/InteractiveImport/Movie/SelectMovieModalContent.js b/frontend/src/InteractiveImport/Movie/SelectMovieModalContent.js
index a35c30ecd..5182c8a4f 100644
--- a/frontend/src/InteractiveImport/Movie/SelectMovieModalContent.js
+++ b/frontend/src/InteractiveImport/Movie/SelectMovieModalContent.js
@@ -173,7 +173,7 @@ class SelectMovieModalContent extends Component {