mirror of
https://github.com/Radarr/Radarr.git
synced 2024-09-17 15:02:34 +02:00
New: Translation support for UI Sidebar, Search Input, Base Menus
This commit is contained in:
parent
bfc0361784
commit
074b49fa8c
@ -12,6 +12,7 @@ import PageToolbar from 'Components/Page/Toolbar/PageToolbar';
|
|||||||
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
|
import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
|
||||||
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
||||||
import BlacklistRowConnector from './BlacklistRowConnector';
|
import BlacklistRowConnector from './BlacklistRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
class Blacklist extends Component {
|
class Blacklist extends Component {
|
||||||
|
|
||||||
@ -36,7 +37,7 @@ class Blacklist extends Component {
|
|||||||
<PageToolbar>
|
<PageToolbar>
|
||||||
<PageToolbarSection>
|
<PageToolbarSection>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Clear"
|
label={translate('Clear')}
|
||||||
iconName={icons.CLEAR}
|
iconName={icons.CLEAR}
|
||||||
isSpinning={isClearingBlacklistExecuting}
|
isSpinning={isClearingBlacklistExecuting}
|
||||||
onPress={onClearBlacklistPress}
|
onPress={onClearBlacklistPress}
|
||||||
@ -49,7 +50,7 @@ class Blacklist extends Component {
|
|||||||
columns={columns}
|
columns={columns}
|
||||||
>
|
>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.TABLE}
|
iconName={icons.TABLE}
|
||||||
/>
|
/>
|
||||||
</TableOptionsModalWrapper>
|
</TableOptionsModalWrapper>
|
||||||
|
@ -13,6 +13,7 @@ import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
|
|||||||
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
||||||
import FilterMenu from 'Components/Menu/FilterMenu';
|
import FilterMenu from 'Components/Menu/FilterMenu';
|
||||||
import HistoryRowConnector from './HistoryRowConnector';
|
import HistoryRowConnector from './HistoryRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
class History extends Component {
|
class History extends Component {
|
||||||
|
|
||||||
@ -46,7 +47,7 @@ class History extends Component {
|
|||||||
<PageToolbar>
|
<PageToolbar>
|
||||||
<PageToolbarSection>
|
<PageToolbarSection>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Refresh"
|
label={translate('Refresh')}
|
||||||
iconName={icons.REFRESH}
|
iconName={icons.REFRESH}
|
||||||
isSpinning={isFetching}
|
isSpinning={isFetching}
|
||||||
onPress={onFirstPagePress}
|
onPress={onFirstPagePress}
|
||||||
@ -59,7 +60,7 @@ class History extends Component {
|
|||||||
columns={columns}
|
columns={columns}
|
||||||
>
|
>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.TABLE}
|
iconName={icons.TABLE}
|
||||||
/>
|
/>
|
||||||
</TableOptionsModalWrapper>
|
</TableOptionsModalWrapper>
|
||||||
|
@ -22,6 +22,7 @@ import TableOptionsModalWrapper from 'Components/Table/TableOptions/TableOptions
|
|||||||
import RemoveQueueItemsModal from './RemoveQueueItemsModal';
|
import RemoveQueueItemsModal from './RemoveQueueItemsModal';
|
||||||
import QueueOptionsConnector from './QueueOptionsConnector';
|
import QueueOptionsConnector from './QueueOptionsConnector';
|
||||||
import QueueRowConnector from './QueueRowConnector';
|
import QueueRowConnector from './QueueRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
class Queue extends Component {
|
class Queue extends Component {
|
||||||
|
|
||||||
@ -152,7 +153,7 @@ class Queue extends Component {
|
|||||||
<PageToolbar>
|
<PageToolbar>
|
||||||
<PageToolbarSection>
|
<PageToolbarSection>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Refresh"
|
label={translate('Refresh')}
|
||||||
iconName={icons.REFRESH}
|
iconName={icons.REFRESH}
|
||||||
isSpinning={isRefreshing}
|
isSpinning={isRefreshing}
|
||||||
onPress={onRefreshPress}
|
onPress={onRefreshPress}
|
||||||
@ -186,7 +187,7 @@ class Queue extends Component {
|
|||||||
optionsComponent={QueueOptionsConnector}
|
optionsComponent={QueueOptionsConnector}
|
||||||
>
|
>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.TABLE}
|
iconName={icons.TABLE}
|
||||||
/>
|
/>
|
||||||
</TableOptionsModalWrapper>
|
</TableOptionsModalWrapper>
|
||||||
|
@ -10,6 +10,7 @@ import TextInput from 'Components/Form/TextInput';
|
|||||||
import PageContent from 'Components/Page/PageContent';
|
import PageContent from 'Components/Page/PageContent';
|
||||||
import PageContentBody from 'Components/Page/PageContentBody';
|
import PageContentBody from 'Components/Page/PageContentBody';
|
||||||
import AddNewMovieSearchResultConnector from './AddNewMovieSearchResultConnector';
|
import AddNewMovieSearchResultConnector from './AddNewMovieSearchResultConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './AddNewMovie.css';
|
import styles from './AddNewMovie.css';
|
||||||
|
|
||||||
class AddNewMovie extends Component {
|
class AddNewMovie extends Component {
|
||||||
@ -166,9 +167,9 @@ class AddNewMovie extends Component {
|
|||||||
null :
|
null :
|
||||||
<div className={styles.message}>
|
<div className={styles.message}>
|
||||||
<div className={styles.helpText}>
|
<div className={styles.helpText}>
|
||||||
It's easy to add a new movie, just start typing the name the movie you want to add.
|
{translate('AddNewMessage')}
|
||||||
</div>
|
</div>
|
||||||
<div>You can also search using TMDB ID of a movie. eg. tmdb:71663</div>
|
<div>{translate('AddNewTmdbIdMessage')}</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,6 +11,7 @@ import PageContentBody from 'Components/Page/PageContentBody';
|
|||||||
import Table from 'Components/Table/Table';
|
import Table from 'Components/Table/Table';
|
||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import ImportMovieRootFolderRowConnector from './ImportMovieRootFolderRowConnector';
|
import ImportMovieRootFolderRowConnector from './ImportMovieRootFolderRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './ImportMovieSelectFolder.css';
|
import styles from './ImportMovieSelectFolder.css';
|
||||||
|
|
||||||
const rootFolderColumns = [
|
const rootFolderColumns = [
|
||||||
@ -92,11 +93,11 @@ class ImportMovieSelectFolder extends Component {
|
|||||||
!error && isPopulated &&
|
!error && isPopulated &&
|
||||||
<div>
|
<div>
|
||||||
<div className={styles.header}>
|
<div className={styles.header}>
|
||||||
Import movies you already have
|
{translate('ImportHeader')}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className={styles.tips}>
|
<div className={styles.tips}>
|
||||||
Some tips to ensure the import goes smoothly:
|
{translate('ImportTipsMessage')}
|
||||||
<ul>
|
<ul>
|
||||||
<li className={styles.tip}>
|
<li className={styles.tip}>
|
||||||
Make sure that your files include the quality in their filenames. eg. <span className={styles.code}>movie.2008.bluray.mkv</span>
|
Make sure that your files include the quality in their filenames. eg. <span className={styles.code}>movie.2008.bluray.mkv</span>
|
||||||
@ -141,7 +142,7 @@ class ImportMovieSelectFolder extends Component {
|
|||||||
className={styles.importButtonIcon}
|
className={styles.importButtonIcon}
|
||||||
name={icons.DRIVE}
|
name={icons.DRIVE}
|
||||||
/>
|
/>
|
||||||
Choose another folder
|
{translate('ChooseAnotherFolder')}
|
||||||
</Button>
|
</Button>
|
||||||
</div> :
|
</div> :
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ import CalendarLinkModal from './iCal/CalendarLinkModal';
|
|||||||
import CalendarOptionsModal from './Options/CalendarOptionsModal';
|
import CalendarOptionsModal from './Options/CalendarOptionsModal';
|
||||||
import LegendConnector from './Legend/LegendConnector';
|
import LegendConnector from './Legend/LegendConnector';
|
||||||
import CalendarConnector from './CalendarConnector';
|
import CalendarConnector from './CalendarConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './CalendarPage.css';
|
import styles from './CalendarPage.css';
|
||||||
|
|
||||||
const MINIMUM_DAY_WIDTH = 120;
|
const MINIMUM_DAY_WIDTH = 120;
|
||||||
@ -109,7 +110,7 @@ class CalendarPage extends Component {
|
|||||||
<PageToolbarSeparator />
|
<PageToolbarSeparator />
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="RSS Sync"
|
label={translate('RSSSync')}
|
||||||
iconName={icons.RSS}
|
iconName={icons.RSS}
|
||||||
isSpinning={isRssSyncExecuting}
|
isSpinning={isRssSyncExecuting}
|
||||||
onPress={onRssSyncPress}
|
onPress={onRssSyncPress}
|
||||||
@ -126,7 +127,7 @@ class CalendarPage extends Component {
|
|||||||
|
|
||||||
<PageToolbarSection alignContent={align.RIGHT}>
|
<PageToolbarSection alignContent={align.RIGHT}>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.POSTER}
|
iconName={icons.POSTER}
|
||||||
onPress={this.onOptionsPress}
|
onPress={this.onOptionsPress}
|
||||||
/>
|
/>
|
||||||
|
@ -11,6 +11,7 @@ import MenuContent from 'Components/Menu/MenuContent';
|
|||||||
import ViewMenuItem from 'Components/Menu/ViewMenuItem';
|
import ViewMenuItem from 'Components/Menu/ViewMenuItem';
|
||||||
import * as calendarViews from 'Calendar/calendarViews';
|
import * as calendarViews from 'Calendar/calendarViews';
|
||||||
import CalendarHeaderViewButton from './CalendarHeaderViewButton';
|
import CalendarHeaderViewButton from './CalendarHeaderViewButton';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './CalendarHeader.css';
|
import styles from './CalendarHeader.css';
|
||||||
|
|
||||||
function getTitle(time, start, end, view, longDateFormat) {
|
function getTitle(time, start, end, view, longDateFormat) {
|
||||||
@ -192,7 +193,7 @@ class CalendarHeader extends Component {
|
|||||||
selectedView={view}
|
selectedView={view}
|
||||||
onPress={this.onViewChange}
|
onPress={this.onViewChange}
|
||||||
>
|
>
|
||||||
Day
|
{translate('Day')}
|
||||||
</ViewMenuItem>
|
</ViewMenuItem>
|
||||||
|
|
||||||
<ViewMenuItem
|
<ViewMenuItem
|
||||||
@ -200,7 +201,7 @@ class CalendarHeader extends Component {
|
|||||||
selectedView={view}
|
selectedView={view}
|
||||||
onPress={this.onViewChange}
|
onPress={this.onViewChange}
|
||||||
>
|
>
|
||||||
Agenda
|
{translate('Agenda')}
|
||||||
</ViewMenuItem>
|
</ViewMenuItem>
|
||||||
</MenuContent>
|
</MenuContent>
|
||||||
</Menu> :
|
</Menu> :
|
||||||
|
@ -6,6 +6,7 @@ import ModalHeader from 'Components/Modal/ModalHeader';
|
|||||||
import ModalBody from 'Components/Modal/ModalBody';
|
import ModalBody from 'Components/Modal/ModalBody';
|
||||||
import ModalFooter from 'Components/Modal/ModalFooter';
|
import ModalFooter from 'Components/Modal/ModalFooter';
|
||||||
import CustomFilter from './CustomFilter';
|
import CustomFilter from './CustomFilter';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './CustomFiltersModalContent.css';
|
import styles from './CustomFiltersModalContent.css';
|
||||||
|
|
||||||
function CustomFiltersModalContent(props) {
|
function CustomFiltersModalContent(props) {
|
||||||
@ -24,7 +25,7 @@ function CustomFiltersModalContent(props) {
|
|||||||
return (
|
return (
|
||||||
<ModalContent onModalClose={onModalClose}>
|
<ModalContent onModalClose={onModalClose}>
|
||||||
<ModalHeader>
|
<ModalHeader>
|
||||||
Custom Filters
|
{translate('CustomFilters')}
|
||||||
</ModalHeader>
|
</ModalHeader>
|
||||||
|
|
||||||
<ModalBody>
|
<ModalBody>
|
||||||
|
@ -21,6 +21,7 @@ import TagSelectInputConnector from './TagSelectInputConnector';
|
|||||||
import TextTagInputConnector from './TextTagInputConnector';
|
import TextTagInputConnector from './TextTagInputConnector';
|
||||||
import TextInput from './TextInput';
|
import TextInput from './TextInput';
|
||||||
import FormInputHelpText from './FormInputHelpText';
|
import FormInputHelpText from './FormInputHelpText';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './FormInputGroup.css';
|
import styles from './FormInputGroup.css';
|
||||||
|
|
||||||
function getComponent(type) {
|
function getComponent(type) {
|
||||||
@ -195,7 +196,7 @@ function FormInputGroup(props) {
|
|||||||
<Link
|
<Link
|
||||||
to={helpLink}
|
to={helpLink}
|
||||||
>
|
>
|
||||||
More Info
|
{translate('MoreInfo')}
|
||||||
</Link>
|
</Link>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ import { icons } from 'Helpers/Props';
|
|||||||
import FilterMenuContent from './FilterMenuContent';
|
import FilterMenuContent from './FilterMenuContent';
|
||||||
import Menu from './Menu';
|
import Menu from './Menu';
|
||||||
import ToolbarMenuButton from './ToolbarMenuButton';
|
import ToolbarMenuButton from './ToolbarMenuButton';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './FilterMenu.css';
|
import styles from './FilterMenu.css';
|
||||||
|
|
||||||
class FilterMenu extends Component {
|
class FilterMenu extends Component {
|
||||||
@ -57,7 +58,7 @@ class FilterMenu extends Component {
|
|||||||
>
|
>
|
||||||
<ButtonComponent
|
<ButtonComponent
|
||||||
iconName={icons.FILTER}
|
iconName={icons.FILTER}
|
||||||
text="Filter"
|
text={translate('Filter')}
|
||||||
isDisabled={isDisabled}
|
isDisabled={isDisabled}
|
||||||
indicator={selectedFilterKey !== 'all'}
|
indicator={selectedFilterKey !== 'all'}
|
||||||
/>
|
/>
|
||||||
|
@ -4,6 +4,7 @@ import MenuContent from './MenuContent';
|
|||||||
import FilterMenuItem from './FilterMenuItem';
|
import FilterMenuItem from './FilterMenuItem';
|
||||||
import MenuItem from './MenuItem';
|
import MenuItem from './MenuItem';
|
||||||
import MenuItemSeparator from './MenuItemSeparator';
|
import MenuItemSeparator from './MenuItemSeparator';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
class FilterMenuContent extends Component {
|
class FilterMenuContent extends Component {
|
||||||
|
|
||||||
@ -61,7 +62,7 @@ class FilterMenuContent extends Component {
|
|||||||
{
|
{
|
||||||
showCustomFilters &&
|
showCustomFilters &&
|
||||||
<MenuItem onPress={onCustomFiltersPress}>
|
<MenuItem onPress={onCustomFiltersPress}>
|
||||||
Custom Filters
|
{translate('CustomFilters')}
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
}
|
}
|
||||||
</MenuContent>
|
</MenuContent>
|
||||||
|
@ -3,6 +3,7 @@ import React from 'react';
|
|||||||
import { icons } from 'Helpers/Props';
|
import { icons } from 'Helpers/Props';
|
||||||
import Menu from 'Components/Menu/Menu';
|
import Menu from 'Components/Menu/Menu';
|
||||||
import ToolbarMenuButton from 'Components/Menu/ToolbarMenuButton';
|
import ToolbarMenuButton from 'Components/Menu/ToolbarMenuButton';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function SortMenu(props) {
|
function SortMenu(props) {
|
||||||
const {
|
const {
|
||||||
@ -19,7 +20,7 @@ function SortMenu(props) {
|
|||||||
>
|
>
|
||||||
<ToolbarMenuButton
|
<ToolbarMenuButton
|
||||||
iconName={icons.SORT}
|
iconName={icons.SORT}
|
||||||
text="Sort"
|
text={translate('Sort')}
|
||||||
isDisabled={isDisabled}
|
isDisabled={isDisabled}
|
||||||
/>
|
/>
|
||||||
{children}
|
{children}
|
||||||
|
@ -3,6 +3,7 @@ import React from 'react';
|
|||||||
import { icons } from 'Helpers/Props';
|
import { icons } from 'Helpers/Props';
|
||||||
import Menu from 'Components/Menu/Menu';
|
import Menu from 'Components/Menu/Menu';
|
||||||
import ToolbarMenuButton from 'Components/Menu/ToolbarMenuButton';
|
import ToolbarMenuButton from 'Components/Menu/ToolbarMenuButton';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function ViewMenu(props) {
|
function ViewMenu(props) {
|
||||||
const {
|
const {
|
||||||
@ -17,7 +18,7 @@ function ViewMenu(props) {
|
|||||||
>
|
>
|
||||||
<ToolbarMenuButton
|
<ToolbarMenuButton
|
||||||
iconName={icons.VIEW}
|
iconName={icons.VIEW}
|
||||||
text="View"
|
text={translate('View')}
|
||||||
isDisabled={isDisabled}
|
isDisabled={isDisabled}
|
||||||
/>
|
/>
|
||||||
{children}
|
{children}
|
||||||
|
@ -7,6 +7,7 @@ import Icon from 'Components/Icon';
|
|||||||
import keyboardShortcuts, { shortcuts } from 'Components/keyboardShortcuts';
|
import keyboardShortcuts, { shortcuts } from 'Components/keyboardShortcuts';
|
||||||
import MovieSearchResult from './MovieSearchResult';
|
import MovieSearchResult from './MovieSearchResult';
|
||||||
import LoadingIndicator from 'Components/Loading/LoadingIndicator';
|
import LoadingIndicator from 'Components/Loading/LoadingIndicator';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import FuseWorker from './fuse.worker';
|
import FuseWorker from './fuse.worker';
|
||||||
import styles from './MovieSearchInput.css';
|
import styles from './MovieSearchInput.css';
|
||||||
|
|
||||||
@ -227,7 +228,7 @@ class MovieSearchInput extends Component {
|
|||||||
className: styles.input,
|
className: styles.input,
|
||||||
name: 'movieSearch',
|
name: 'movieSearch',
|
||||||
value,
|
value,
|
||||||
placeholder: 'Search',
|
placeholder: translate('Search'),
|
||||||
autoComplete: 'off',
|
autoComplete: 'off',
|
||||||
spellCheck: false,
|
spellCheck: false,
|
||||||
onChange: this.onChange,
|
onChange: this.onChange,
|
||||||
|
@ -43,9 +43,28 @@
|
|||||||
flex-grow: 1;
|
flex-grow: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.translate {
|
||||||
|
composes: link from '~Components/Link/Link.css';
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
width: 35px;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 60px;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: $toobarButtonHoverColor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.donate {
|
.donate {
|
||||||
composes: link from '~Components/Link/Link.css';
|
composes: link from '~Components/Link/Link.css';
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
width: 30px;
|
width: 30px;
|
||||||
color: $themeRed;
|
color: $themeRed;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@ -64,8 +83,11 @@
|
|||||||
.sidebarToggleContainer {
|
.sidebarToggleContainer {
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.donate {
|
@media only screen and (max-width: $breakpointExtraSmall) {
|
||||||
|
.donate,
|
||||||
|
.translate {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -77,6 +77,13 @@ class PageHeader extends Component {
|
|||||||
to="https://radarr.video/donate.html"
|
to="https://radarr.video/donate.html"
|
||||||
size={14}
|
size={14}
|
||||||
/>
|
/>
|
||||||
|
<IconButton
|
||||||
|
className={styles.translate}
|
||||||
|
title="Suggest translation change"
|
||||||
|
name={icons.TRANSLATE}
|
||||||
|
to="https://translate.servarr.com/projects/radarr/radarr/"
|
||||||
|
size={24}
|
||||||
|
/>
|
||||||
<PageHeaderActionsMenuConnector
|
<PageHeaderActionsMenuConnector
|
||||||
onKeyboardShortcutsPress={this.onOpenKeyboardShortcutsModal}
|
onKeyboardShortcutsPress={this.onOpenKeyboardShortcutsModal}
|
||||||
/>
|
/>
|
||||||
|
@ -8,6 +8,7 @@ import locationShape from 'Helpers/Props/Shapes/locationShape';
|
|||||||
import dimensions from 'Styles/Variables/dimensions';
|
import dimensions from 'Styles/Variables/dimensions';
|
||||||
import OverlayScroller from 'Components/Scroller/OverlayScroller';
|
import OverlayScroller from 'Components/Scroller/OverlayScroller';
|
||||||
import Scroller from 'Components/Scroller/Scroller';
|
import Scroller from 'Components/Scroller/Scroller';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import QueueStatusConnector from 'Activity/Queue/Status/QueueStatusConnector';
|
import QueueStatusConnector from 'Activity/Queue/Status/QueueStatusConnector';
|
||||||
import HealthStatusConnector from 'System/Status/Health/HealthStatusConnector';
|
import HealthStatusConnector from 'System/Status/Health/HealthStatusConnector';
|
||||||
import MessagesConnector from './Messages/MessagesConnector';
|
import MessagesConnector from './Messages/MessagesConnector';
|
||||||
@ -20,20 +21,20 @@ const SIDEBAR_WIDTH = parseInt(dimensions.sidebarWidth);
|
|||||||
const links = [
|
const links = [
|
||||||
{
|
{
|
||||||
iconName: icons.MOVIE_CONTINUING,
|
iconName: icons.MOVIE_CONTINUING,
|
||||||
title: 'Movies',
|
title: translate('Movies'),
|
||||||
to: '/',
|
to: '/',
|
||||||
alias: '/movies',
|
alias: '/movies',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
title: 'Add New',
|
title: translate('AddNew'),
|
||||||
to: '/add/new'
|
to: '/add/new'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Import',
|
title: translate('Import'),
|
||||||
to: '/add/import'
|
to: '/add/import'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Discover',
|
title: translate('Discover'),
|
||||||
to: '/add/discover'
|
to: '/add/discover'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@ -41,26 +42,26 @@ const links = [
|
|||||||
|
|
||||||
{
|
{
|
||||||
iconName: icons.CALENDAR,
|
iconName: icons.CALENDAR,
|
||||||
title: 'Calendar',
|
title: translate('Calendar'),
|
||||||
to: '/calendar'
|
to: '/calendar'
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
iconName: icons.ACTIVITY,
|
iconName: icons.ACTIVITY,
|
||||||
title: 'Activity',
|
title: translate('Activity'),
|
||||||
to: '/activity/queue',
|
to: '/activity/queue',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
title: 'Queue',
|
title: translate('Queue'),
|
||||||
to: '/activity/queue',
|
to: '/activity/queue',
|
||||||
statusComponent: QueueStatusConnector
|
statusComponent: QueueStatusConnector
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'History',
|
title: translate('History'),
|
||||||
to: '/activity/history'
|
to: '/activity/history'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Blacklist',
|
title: translate('Blacklist'),
|
||||||
to: '/activity/blacklist'
|
to: '/activity/blacklist'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@ -68,55 +69,55 @@ const links = [
|
|||||||
|
|
||||||
{
|
{
|
||||||
iconName: icons.SETTINGS,
|
iconName: icons.SETTINGS,
|
||||||
title: 'Settings',
|
title: translate('Settings'),
|
||||||
to: '/settings',
|
to: '/settings',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
title: 'Media Management',
|
title: translate('MediaManagement'),
|
||||||
to: '/settings/mediamanagement'
|
to: '/settings/mediamanagement'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Profiles',
|
title: translate('Profiles'),
|
||||||
to: '/settings/profiles'
|
to: '/settings/profiles'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Quality',
|
title: translate('Quality'),
|
||||||
to: '/settings/quality'
|
to: '/settings/quality'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Custom Formats',
|
title: translate('CustomFormats'),
|
||||||
to: '/settings/customformats'
|
to: '/settings/customformats'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Indexers',
|
title: translate('Indexers'),
|
||||||
to: '/settings/indexers'
|
to: '/settings/indexers'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Download Clients',
|
title: translate('DownloadClients'),
|
||||||
to: '/settings/downloadclients'
|
to: '/settings/downloadclients'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Lists',
|
title: translate('Lists'),
|
||||||
to: '/settings/netimports'
|
to: '/settings/netimports'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Connect',
|
title: translate('Connect'),
|
||||||
to: '/settings/connect'
|
to: '/settings/connect'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Metadata',
|
title: translate('Metadata'),
|
||||||
to: '/settings/metadata'
|
to: '/settings/metadata'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Tags',
|
title: translate('Tags'),
|
||||||
to: '/settings/tags'
|
to: '/settings/tags'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'General',
|
title: translate('General'),
|
||||||
to: '/settings/general'
|
to: '/settings/general'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'UI',
|
title: translate('UI'),
|
||||||
to: '/settings/ui'
|
to: '/settings/ui'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@ -124,32 +125,32 @@ const links = [
|
|||||||
|
|
||||||
{
|
{
|
||||||
iconName: icons.SYSTEM,
|
iconName: icons.SYSTEM,
|
||||||
title: 'System',
|
title: translate('System'),
|
||||||
to: '/system/status',
|
to: '/system/status',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
title: 'Status',
|
title: translate('Status'),
|
||||||
to: '/system/status',
|
to: '/system/status',
|
||||||
statusComponent: HealthStatusConnector
|
statusComponent: HealthStatusConnector
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Tasks',
|
title: translate('Tasks'),
|
||||||
to: '/system/tasks'
|
to: '/system/tasks'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Backup',
|
title: translate('Backup'),
|
||||||
to: '/system/backup'
|
to: '/system/backup'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Updates',
|
title: translate('Updates'),
|
||||||
to: '/system/updates'
|
to: '/system/updates'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Events',
|
title: translate('Events'),
|
||||||
to: '/system/events'
|
to: '/system/events'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Log Files',
|
title: translate('LogFiles'),
|
||||||
to: '/system/logs/files'
|
to: '/system/logs/files'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -25,6 +25,7 @@ import AddListMovieSortMenu from './Menus/AddListMovieSortMenu';
|
|||||||
import AddListMovieViewMenu from './Menus/AddListMovieViewMenu';
|
import AddListMovieViewMenu from './Menus/AddListMovieViewMenu';
|
||||||
import NoDiscoverMovie from './NoDiscoverMovie';
|
import NoDiscoverMovie from './NoDiscoverMovie';
|
||||||
import DiscoverMovieFooterConnector from './DiscoverMovieFooterConnector';
|
import DiscoverMovieFooterConnector from './DiscoverMovieFooterConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from 'Movie/Index/MovieIndex.css';
|
import styles from 'Movie/Index/MovieIndex.css';
|
||||||
|
|
||||||
function getViewComponent(view) {
|
function getViewComponent(view) {
|
||||||
@ -290,7 +291,7 @@ class DiscoverMovie extends Component {
|
|||||||
columns={columns}
|
columns={columns}
|
||||||
>
|
>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.TABLE}
|
iconName={icons.TABLE}
|
||||||
/>
|
/>
|
||||||
</TableOptionsModalWrapper> :
|
</TableOptionsModalWrapper> :
|
||||||
@ -300,7 +301,7 @@ class DiscoverMovie extends Component {
|
|||||||
{
|
{
|
||||||
view === 'posters' ?
|
view === 'posters' ?
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.POSTER}
|
iconName={icons.POSTER}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onPosterOptionsPress}
|
onPress={this.onPosterOptionsPress}
|
||||||
@ -311,7 +312,7 @@ class DiscoverMovie extends Component {
|
|||||||
{
|
{
|
||||||
view === 'overview' ?
|
view === 'overview' ?
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.OVERVIEW}
|
iconName={icons.OVERVIEW}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onOverviewOptionsPress}
|
onPress={this.onOverviewOptionsPress}
|
||||||
|
@ -10,6 +10,7 @@ import SpinnerButton from 'Components/Link/SpinnerButton';
|
|||||||
import PageContentFooter from 'Components/Page/PageContentFooter';
|
import PageContentFooter from 'Components/Page/PageContentFooter';
|
||||||
import ExcludeMovieModal from './Exclusion/ExcludeMovieModal';
|
import ExcludeMovieModal from './Exclusion/ExcludeMovieModal';
|
||||||
import DiscoverMovieFooterLabel from './DiscoverMovieFooterLabel';
|
import DiscoverMovieFooterLabel from './DiscoverMovieFooterLabel';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DiscoverMovieFooter.css';
|
import styles from './DiscoverMovieFooter.css';
|
||||||
|
|
||||||
class DiscoverMovieFooter extends Component {
|
class DiscoverMovieFooter extends Component {
|
||||||
@ -208,7 +209,7 @@ class DiscoverMovieFooter extends Component {
|
|||||||
isDisabled={!selectedCount || isAdding}
|
isDisabled={!selectedCount || isAdding}
|
||||||
onPress={this.onAddMoviesPress}
|
onPress={this.onAddMoviesPress}
|
||||||
>
|
>
|
||||||
Add Movies
|
{translate('AddMovies')}
|
||||||
</SpinnerButton>
|
</SpinnerButton>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -219,7 +220,7 @@ class DiscoverMovieFooter extends Component {
|
|||||||
isDisabled={!selectedCount || isExcluding}
|
isDisabled={!selectedCount || isExcluding}
|
||||||
onPress={this.props.onExcludeMoviesPress}
|
onPress={this.props.onExcludeMoviesPress}
|
||||||
>
|
>
|
||||||
Add Exclusion
|
{translate('AddExclusion')}
|
||||||
</SpinnerButton>
|
</SpinnerButton>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -66,6 +66,7 @@ import {
|
|||||||
faHistory as fasHistory,
|
faHistory as fasHistory,
|
||||||
faHome as fasHome,
|
faHome as fasHome,
|
||||||
faInfoCircle as fasInfoCircle,
|
faInfoCircle as fasInfoCircle,
|
||||||
|
faLanguage as fasLanguage,
|
||||||
faLaptop as fasLaptop,
|
faLaptop as fasLaptop,
|
||||||
faLevelUpAlt as fasLevelUpAlt,
|
faLevelUpAlt as fasLevelUpAlt,
|
||||||
faMedkit as fasMedkit,
|
faMedkit as fasMedkit,
|
||||||
@ -207,6 +208,7 @@ export const TABLE = fasTable;
|
|||||||
export const TAGS = fasTags;
|
export const TAGS = fasTags;
|
||||||
export const TBA = fasQuestionCircle;
|
export const TBA = fasQuestionCircle;
|
||||||
export const TEST = fasVial;
|
export const TEST = fasVial;
|
||||||
|
export const TRANSLATE = fasLanguage;
|
||||||
export const UNGROUP = farObjectUngroup;
|
export const UNGROUP = farObjectUngroup;
|
||||||
export const UNKNOWN = fasQuestion;
|
export const UNKNOWN = fasQuestion;
|
||||||
export const UNMONITORED = farBookmark;
|
export const UNMONITORED = farBookmark;
|
||||||
|
@ -11,6 +11,7 @@ import ModalContent from 'Components/Modal/ModalContent';
|
|||||||
import ModalHeader from 'Components/Modal/ModalHeader';
|
import ModalHeader from 'Components/Modal/ModalHeader';
|
||||||
import ModalBody from 'Components/Modal/ModalBody';
|
import ModalBody from 'Components/Modal/ModalBody';
|
||||||
import ModalFooter from 'Components/Modal/ModalFooter';
|
import ModalFooter from 'Components/Modal/ModalFooter';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DeleteMovieModalContent.css';
|
import styles from './DeleteMovieModalContent.css';
|
||||||
|
|
||||||
class DeleteMovieModalContent extends Component {
|
class DeleteMovieModalContent extends Component {
|
||||||
@ -140,7 +141,7 @@ class DeleteMovieModalContent extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={this.onDeleteMovieConfirmed}
|
onPress={this.onDeleteMovieConfirmed}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
</ModalFooter>
|
</ModalFooter>
|
||||||
</ModalContent>
|
</ModalContent>
|
||||||
|
@ -42,6 +42,7 @@ import InteractiveSearchTable from 'InteractiveSearch/InteractiveSearchTable';
|
|||||||
import InteractiveSearchFilterMenuConnector from 'InteractiveSearch/InteractiveSearchFilterMenuConnector';
|
import InteractiveSearchFilterMenuConnector from 'InteractiveSearch/InteractiveSearchFilterMenuConnector';
|
||||||
import MovieTagsConnector from './MovieTagsConnector';
|
import MovieTagsConnector from './MovieTagsConnector';
|
||||||
import MovieReleaseDatesConnector from './MovieReleaseDatesConnector';
|
import MovieReleaseDatesConnector from './MovieReleaseDatesConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './MovieDetails.css';
|
import styles from './MovieDetails.css';
|
||||||
|
|
||||||
const defaultFontSize = parseInt(fonts.defaultFontSize);
|
const defaultFontSize = parseInt(fonts.defaultFontSize);
|
||||||
@ -326,7 +327,7 @@ class MovieDetails extends Component {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Delete"
|
label={translate('Delete')}
|
||||||
iconName={icons.DELETE}
|
iconName={icons.DELETE}
|
||||||
onPress={this.onDeleteMoviePress}
|
onPress={this.onDeleteMoviePress}
|
||||||
/>
|
/>
|
||||||
@ -604,42 +605,42 @@ class MovieDetails extends Component {
|
|||||||
className={styles.tab}
|
className={styles.tab}
|
||||||
selectedClassName={styles.selectedTab}
|
selectedClassName={styles.selectedTab}
|
||||||
>
|
>
|
||||||
History
|
{translate('History')}
|
||||||
</Tab>
|
</Tab>
|
||||||
|
|
||||||
<Tab
|
<Tab
|
||||||
className={styles.tab}
|
className={styles.tab}
|
||||||
selectedClassName={styles.selectedTab}
|
selectedClassName={styles.selectedTab}
|
||||||
>
|
>
|
||||||
Search
|
{translate('Search')}
|
||||||
</Tab>
|
</Tab>
|
||||||
|
|
||||||
<Tab
|
<Tab
|
||||||
className={styles.tab}
|
className={styles.tab}
|
||||||
selectedClassName={styles.selectedTab}
|
selectedClassName={styles.selectedTab}
|
||||||
>
|
>
|
||||||
Files
|
{translate('Files')}
|
||||||
</Tab>
|
</Tab>
|
||||||
|
|
||||||
<Tab
|
<Tab
|
||||||
className={styles.tab}
|
className={styles.tab}
|
||||||
selectedClassName={styles.selectedTab}
|
selectedClassName={styles.selectedTab}
|
||||||
>
|
>
|
||||||
Titles
|
{translate('Titles')}
|
||||||
</Tab>
|
</Tab>
|
||||||
|
|
||||||
<Tab
|
<Tab
|
||||||
className={styles.tab}
|
className={styles.tab}
|
||||||
selectedClassName={styles.selectedTab}
|
selectedClassName={styles.selectedTab}
|
||||||
>
|
>
|
||||||
Cast
|
{translate('Cast')}
|
||||||
</Tab>
|
</Tab>
|
||||||
|
|
||||||
<Tab
|
<Tab
|
||||||
className={styles.tab}
|
className={styles.tab}
|
||||||
selectedClassName={styles.selectedTab}
|
selectedClassName={styles.selectedTab}
|
||||||
>
|
>
|
||||||
Crew
|
{translate('Crew')}
|
||||||
</Tab>
|
</Tab>
|
||||||
|
|
||||||
{
|
{
|
||||||
|
@ -12,6 +12,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import MoveMovieModal from 'Movie/MoveMovie/MoveMovieModal';
|
import MoveMovieModal from 'Movie/MoveMovie/MoveMovieModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditMovieModalContent.css';
|
import styles from './EditMovieModalContent.css';
|
||||||
|
|
||||||
class EditMovieModalContent extends Component {
|
class EditMovieModalContent extends Component {
|
||||||
@ -149,7 +150,7 @@ class EditMovieModalContent extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteMoviePress}
|
onPress={onDeleteMoviePress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
|
@ -9,6 +9,7 @@ import ModalContent from 'Components/Modal/ModalContent';
|
|||||||
import ModalHeader from 'Components/Modal/ModalHeader';
|
import ModalHeader from 'Components/Modal/ModalHeader';
|
||||||
import ModalBody from 'Components/Modal/ModalBody';
|
import ModalBody from 'Components/Modal/ModalBody';
|
||||||
import ModalFooter from 'Components/Modal/ModalFooter';
|
import ModalFooter from 'Components/Modal/ModalFooter';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DeleteMovieModalContent.css';
|
import styles from './DeleteMovieModalContent.css';
|
||||||
|
|
||||||
class DeleteMovieModalContent extends Component {
|
class DeleteMovieModalContent extends Component {
|
||||||
@ -127,7 +128,7 @@ class DeleteMovieModalContent extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={this.onDeleteMovieConfirmed}
|
onPress={this.onDeleteMovieConfirmed}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
</ModalFooter>
|
</ModalFooter>
|
||||||
</ModalContent>
|
</ModalContent>
|
||||||
|
@ -11,6 +11,7 @@ import MoveMovieModal from 'Movie/MoveMovie/MoveMovieModal';
|
|||||||
import TagsModal from './Tags/TagsModal';
|
import TagsModal from './Tags/TagsModal';
|
||||||
import DeleteMovieModal from './Delete/DeleteMovieModal';
|
import DeleteMovieModal from './Delete/DeleteMovieModal';
|
||||||
import MovieEditorFooterLabel from './MovieEditorFooterLabel';
|
import MovieEditorFooterLabel from './MovieEditorFooterLabel';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './MovieEditorFooter.css';
|
import styles from './MovieEditorFooter.css';
|
||||||
|
|
||||||
const NO_CHANGE = 'noChange';
|
const NO_CHANGE = 'noChange';
|
||||||
@ -257,7 +258,7 @@ class MovieEditorFooter extends Component {
|
|||||||
isDisabled={!selectedCount || isDeleting}
|
isDisabled={!selectedCount || isDeleting}
|
||||||
onPress={this.onDeleteSelectedPress}
|
onPress={this.onDeleteSelectedPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</SpinnerButton>
|
</SpinnerButton>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -6,6 +6,7 @@ import LoadingIndicator from 'Components/Loading/LoadingIndicator';
|
|||||||
import Table from 'Components/Table/Table';
|
import Table from 'Components/Table/Table';
|
||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import MovieHistoryRowConnector from './MovieHistoryRowConnector';
|
import MovieHistoryRowConnector from './MovieHistoryRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './MovieHistoryTableContent.css';
|
import styles from './MovieHistoryTableContent.css';
|
||||||
|
|
||||||
const columns = [
|
const columns = [
|
||||||
@ -30,13 +31,13 @@ const columns = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'customFormats',
|
name: 'customFormats',
|
||||||
label: 'Custom Formats',
|
label: translate('CustomFormats'),
|
||||||
isSortable: false,
|
isSortable: false,
|
||||||
isVisible: true
|
isVisible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'date',
|
name: 'date',
|
||||||
label: 'Date',
|
label: translate('Date'),
|
||||||
isVisible: true
|
isVisible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -31,6 +31,7 @@ import MovieIndexFooterConnector from './MovieIndexFooterConnector';
|
|||||||
import MovieEditorFooter from 'Movie/Editor/MovieEditorFooter.js';
|
import MovieEditorFooter from 'Movie/Editor/MovieEditorFooter.js';
|
||||||
import InteractiveImportModal from 'InteractiveImport/InteractiveImportModal';
|
import InteractiveImportModal from 'InteractiveImport/InteractiveImportModal';
|
||||||
import OrganizeMovieModal from 'Movie/Editor/Organize/OrganizeMovieModal';
|
import OrganizeMovieModal from 'Movie/Editor/Organize/OrganizeMovieModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './MovieIndex.css';
|
import styles from './MovieIndex.css';
|
||||||
|
|
||||||
function getViewComponent(view) {
|
function getViewComponent(view) {
|
||||||
@ -351,15 +352,15 @@ class MovieIndex extends Component {
|
|||||||
const isLoaded = !!(!error && isPopulated && items.length && scroller);
|
const isLoaded = !!(!error && isPopulated && items.length && scroller);
|
||||||
const hasNoMovie = !totalItems;
|
const hasNoMovie = !totalItems;
|
||||||
|
|
||||||
const searchIndexLabel = selectedFilterKey === 'all' ? 'Search All' : 'Search Filtered';
|
const searchIndexLabel = selectedFilterKey === 'all' ? translate('SearchAll') : 'Search Filtered';
|
||||||
const searchEditorLabel = selectedMovieIds.length > 0 ? 'Search Selected' : 'Search All';
|
const searchEditorLabel = selectedMovieIds.length > 0 ? 'Search Selected' : translate('SearchAll');
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<PageContent>
|
<PageContent>
|
||||||
<PageToolbar>
|
<PageToolbar>
|
||||||
<PageToolbarSection>
|
<PageToolbarSection>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label={isMovieEditorActive && selectedMovieIds.length > 0 ? 'Update Selected' : 'Update All'}
|
label={isMovieEditorActive && selectedMovieIds.length > 0 ? 'Update Selected' : translate('UpdateAll')}
|
||||||
iconName={icons.REFRESH}
|
iconName={icons.REFRESH}
|
||||||
spinningName={icons.REFRESH}
|
spinningName={icons.REFRESH}
|
||||||
isSpinning={isRefreshingMovie}
|
isSpinning={isRefreshingMovie}
|
||||||
@ -368,7 +369,7 @@ class MovieIndex extends Component {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="RSS Sync"
|
label={translate('RssSync')}
|
||||||
iconName={icons.RSS}
|
iconName={icons.RSS}
|
||||||
isSpinning={isRssSyncExecuting}
|
isSpinning={isRssSyncExecuting}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
@ -385,7 +386,7 @@ class MovieIndex extends Component {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Manual Import"
|
label={translate('ManualImport')}
|
||||||
iconName={icons.INTERACTIVE}
|
iconName={icons.INTERACTIVE}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onInteractiveImportPress}
|
onPress={this.onInteractiveImportPress}
|
||||||
@ -396,13 +397,13 @@ class MovieIndex extends Component {
|
|||||||
{
|
{
|
||||||
isMovieEditorActive ?
|
isMovieEditorActive ?
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Movie Index"
|
label={translate('MovieIndex')}
|
||||||
iconName={icons.MOVIE_CONTINUING}
|
iconName={icons.MOVIE_CONTINUING}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onMovieEditorTogglePress}
|
onPress={this.onMovieEditorTogglePress}
|
||||||
/> :
|
/> :
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Movie Editor"
|
label={translate('MovieEditor')}
|
||||||
iconName={icons.EDIT}
|
iconName={icons.EDIT}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onMovieEditorTogglePress}
|
onPress={this.onMovieEditorTogglePress}
|
||||||
@ -412,7 +413,7 @@ class MovieIndex extends Component {
|
|||||||
{
|
{
|
||||||
isMovieEditorActive ?
|
isMovieEditorActive ?
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label={allSelected ? 'Unselect All' : 'Select All'}
|
label={allSelected ? translate('UnselectAll') : translate('SelectAll')}
|
||||||
iconName={icons.CHECK_SQUARE}
|
iconName={icons.CHECK_SQUARE}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onSelectAllPress}
|
onPress={this.onSelectAllPress}
|
||||||
@ -434,7 +435,7 @@ class MovieIndex extends Component {
|
|||||||
optionsComponent={MovieIndexTableOptionsConnector}
|
optionsComponent={MovieIndexTableOptionsConnector}
|
||||||
>
|
>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.TABLE}
|
iconName={icons.TABLE}
|
||||||
/>
|
/>
|
||||||
</TableOptionsModalWrapper> :
|
</TableOptionsModalWrapper> :
|
||||||
@ -444,7 +445,7 @@ class MovieIndex extends Component {
|
|||||||
{
|
{
|
||||||
view === 'posters' ?
|
view === 'posters' ?
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.POSTER}
|
iconName={icons.POSTER}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onPosterOptionsPress}
|
onPress={this.onPosterOptionsPress}
|
||||||
@ -455,7 +456,7 @@ class MovieIndex extends Component {
|
|||||||
{
|
{
|
||||||
view === 'overview' ?
|
view === 'overview' ?
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.OVERVIEW}
|
iconName={icons.OVERVIEW}
|
||||||
isDisabled={hasNoMovie}
|
isDisabled={hasNoMovie}
|
||||||
onPress={this.onOverviewOptionsPress}
|
onPress={this.onOverviewOptionsPress}
|
||||||
|
@ -15,8 +15,9 @@ import SelectLanguageModal from 'MovieFile/Language/SelectLanguageModal';
|
|||||||
import * as mediaInfoTypes from 'MovieFile/mediaInfoTypes';
|
import * as mediaInfoTypes from 'MovieFile/mediaInfoTypes';
|
||||||
import MediaInfoConnector from 'MovieFile/MediaInfoConnector';
|
import MediaInfoConnector from 'MovieFile/MediaInfoConnector';
|
||||||
import MovieFileRowCellPlaceholder from './MovieFileRowCellPlaceholder';
|
import MovieFileRowCellPlaceholder from './MovieFileRowCellPlaceholder';
|
||||||
import styles from './MovieFileEditorRow.css';
|
|
||||||
import FileDetailsModal from '../FileDetailsModal';
|
import FileDetailsModal from '../FileDetailsModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
import styles from './MovieFileEditorRow.css';
|
||||||
|
|
||||||
class MovieFileEditorRow extends Component {
|
class MovieFileEditorRow extends Component {
|
||||||
|
|
||||||
@ -203,7 +204,7 @@ class MovieFileEditorRow extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Selected Movie Files"
|
title="Delete Selected Movie Files"
|
||||||
message={'Are you sure you want to delete the selected movie files?'}
|
message={'Are you sure you want to delete the selected movie files?'}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDelete}
|
onConfirm={this.onConfirmDelete}
|
||||||
onCancel={this.onConfirmDeleteModalClose}
|
onCancel={this.onConfirmDeleteModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -4,6 +4,7 @@ import classNames from 'classnames';
|
|||||||
import { icons } from 'Helpers/Props';
|
import { icons } from 'Helpers/Props';
|
||||||
import Icon from 'Components/Icon';
|
import Icon from 'Components/Icon';
|
||||||
import Link from 'Components/Link/Link';
|
import Link from 'Components/Link/Link';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './AdvancedSettingsButton.css';
|
import styles from './AdvancedSettingsButton.css';
|
||||||
|
|
||||||
function AdvancedSettingsButton(props) {
|
function AdvancedSettingsButton(props) {
|
||||||
@ -44,7 +45,7 @@ function AdvancedSettingsButton(props) {
|
|||||||
|
|
||||||
<div className={styles.labelContainer}>
|
<div className={styles.labelContainer}>
|
||||||
<div className={styles.label}>
|
<div className={styles.label}>
|
||||||
{advancedSettings ? 'Hide Advanced' : 'Show Advanced'}
|
{advancedSettings ? translate('HideAdvanced') : translate('ShowAdvanced')}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Link>
|
</Link>
|
||||||
|
@ -6,6 +6,7 @@ import Label from 'Components/Label';
|
|||||||
import IconButton from 'Components/Link/IconButton';
|
import IconButton from 'Components/Link/IconButton';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditCustomFormatModalConnector from './EditCustomFormatModalConnector';
|
import EditCustomFormatModalConnector from './EditCustomFormatModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './CustomFormat.css';
|
import styles from './CustomFormat.css';
|
||||||
|
|
||||||
class CustomFormat extends Component {
|
class CustomFormat extends Component {
|
||||||
@ -132,7 +133,7 @@ class CustomFormat extends Component {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
isSpinning={isDeleting}
|
isSpinning={isDeleting}
|
||||||
onConfirm={this.onConfirmDeleteCustomFormat}
|
onConfirm={this.onConfirmDeleteCustomFormat}
|
||||||
onCancel={this.onDeleteCustomFormatModalClose}
|
onCancel={this.onDeleteCustomFormatModalClose}
|
||||||
|
@ -7,6 +7,7 @@ import Icon from 'Components/Icon';
|
|||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import CustomFormat from './CustomFormat';
|
import CustomFormat from './CustomFormat';
|
||||||
import EditCustomFormatModalConnector from './EditCustomFormatModalConnector';
|
import EditCustomFormatModalConnector from './EditCustomFormatModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './CustomFormats.css';
|
import styles from './CustomFormats.css';
|
||||||
|
|
||||||
class CustomFormats extends Component {
|
class CustomFormats extends Component {
|
||||||
@ -58,7 +59,7 @@ class CustomFormats extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Custom Formats">
|
<FieldSet legend={translate('CustomFormats')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Custom Formats"
|
errorMessage="Unable to load Custom Formats"
|
||||||
{...otherProps}c={true}
|
{...otherProps}c={true}
|
||||||
|
@ -18,6 +18,7 @@ import FormInputGroup from 'Components/Form/FormInputGroup';
|
|||||||
import Specification from './Specifications/Specification';
|
import Specification from './Specifications/Specification';
|
||||||
import AddSpecificationModal from './Specifications/AddSpecificationModal';
|
import AddSpecificationModal from './Specifications/AddSpecificationModal';
|
||||||
import EditSpecificationModalConnector from './Specifications/EditSpecificationModalConnector';
|
import EditSpecificationModalConnector from './Specifications/EditSpecificationModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditCustomFormatModalContent.css';
|
import styles from './EditCustomFormatModalContent.css';
|
||||||
|
|
||||||
class EditCustomFormatModalContent extends Component {
|
class EditCustomFormatModalContent extends Component {
|
||||||
@ -185,7 +186,7 @@ class EditCustomFormatModalContent extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteCustomFormatPress}
|
onPress={onDeleteCustomFormatPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditSpecificationModalContent.css';
|
import styles from './EditSpecificationModalContent.css';
|
||||||
|
|
||||||
function EditSpecificationModalContent(props) {
|
function EditSpecificationModalContent(props) {
|
||||||
@ -120,7 +121,7 @@ function EditSpecificationModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteSpecificationPress}
|
onPress={onDeleteSpecificationPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import Label from 'Components/Label';
|
|||||||
import IconButton from 'Components/Link/IconButton';
|
import IconButton from 'Components/Link/IconButton';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditSpecificationModalConnector from './EditSpecificationModal';
|
import EditSpecificationModalConnector from './EditSpecificationModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Specification.css';
|
import styles from './Specification.css';
|
||||||
|
|
||||||
class Specification extends Component {
|
class Specification extends Component {
|
||||||
@ -121,7 +122,7 @@ class Specification extends Component {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteSpecification}
|
onConfirm={this.onConfirmDeleteSpecification}
|
||||||
onCancel={this.onDeleteSpecificationModalClose}
|
onCancel={this.onDeleteSpecificationModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -5,6 +5,7 @@ import Card from 'Components/Card';
|
|||||||
import Label from 'Components/Label';
|
import Label from 'Components/Label';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditDownloadClientModalConnector from './EditDownloadClientModalConnector';
|
import EditDownloadClientModalConnector from './EditDownloadClientModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DownloadClient.css';
|
import styles from './DownloadClient.css';
|
||||||
|
|
||||||
class DownloadClient extends Component {
|
class DownloadClient extends Component {
|
||||||
@ -105,7 +106,7 @@ class DownloadClient extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Download Client"
|
title="Delete Download Client"
|
||||||
message={`Are you sure you want to delete the download client '${name}'?`}
|
message={`Are you sure you want to delete the download client '${name}'?`}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteDownloadClient}
|
onConfirm={this.onConfirmDeleteDownloadClient}
|
||||||
onCancel={this.onDeleteDownloadClientModalClose}
|
onCancel={this.onDeleteDownloadClientModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -8,6 +8,7 @@ import PageSectionContent from 'Components/Page/PageSectionContent';
|
|||||||
import DownloadClient from './DownloadClient';
|
import DownloadClient from './DownloadClient';
|
||||||
import AddDownloadClientModal from './AddDownloadClientModal';
|
import AddDownloadClientModal from './AddDownloadClientModal';
|
||||||
import EditDownloadClientModalConnector from './EditDownloadClientModalConnector';
|
import EditDownloadClientModalConnector from './EditDownloadClientModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DownloadClients.css';
|
import styles from './DownloadClients.css';
|
||||||
|
|
||||||
class DownloadClients extends Component {
|
class DownloadClients extends Component {
|
||||||
@ -58,7 +59,7 @@ class DownloadClients extends Component {
|
|||||||
} = this.state;
|
} = this.state;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Download Clients">
|
<FieldSet legend={translate('DownloadClients')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load download clients"
|
errorMessage="Unable to load download clients"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -14,6 +14,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditDownloadClientModalContent.css';
|
import styles from './EditDownloadClientModalContent.css';
|
||||||
|
|
||||||
class EditDownloadClientModalContent extends Component {
|
class EditDownloadClientModalContent extends Component {
|
||||||
@ -144,7 +145,7 @@ class EditDownloadClientModalContent extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteDownloadClientPress}
|
onPress={onDeleteDownloadClientPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function DownloadClientOptions(props) {
|
function DownloadClientOptions(props) {
|
||||||
const {
|
const {
|
||||||
@ -33,7 +34,7 @@ function DownloadClientOptions(props) {
|
|||||||
{
|
{
|
||||||
hasSettings && !isFetching && !error &&
|
hasSettings && !isFetching && !error &&
|
||||||
<div>
|
<div>
|
||||||
<FieldSet legend="Completed Download Handling">
|
<FieldSet legend={translate('CompletedDownloadHandling')}>
|
||||||
<Form>
|
<Form>
|
||||||
<FormGroup size={sizes.MEDIUM}>
|
<FormGroup size={sizes.MEDIUM}>
|
||||||
<FormLabel>Enable</FormLabel>
|
<FormLabel>Enable</FormLabel>
|
||||||
@ -85,7 +86,7 @@ function DownloadClientOptions(props) {
|
|||||||
</FieldSet>
|
</FieldSet>
|
||||||
|
|
||||||
<FieldSet
|
<FieldSet
|
||||||
legend="Failed Download Handling"
|
legend={translate('FailedDownloadHandling')}
|
||||||
>
|
>
|
||||||
<Form>
|
<Form>
|
||||||
<FormGroup size={sizes.MEDIUM}>
|
<FormGroup size={sizes.MEDIUM}>
|
||||||
|
@ -13,6 +13,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditRemotePathMappingModalContent.css';
|
import styles from './EditRemotePathMappingModalContent.css';
|
||||||
|
|
||||||
function EditRemotePathMappingModalContent(props) {
|
function EditRemotePathMappingModalContent(props) {
|
||||||
@ -105,7 +106,7 @@ function EditRemotePathMappingModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteRemotePathMappingPress}
|
onPress={onDeleteRemotePathMappingPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import Icon from 'Components/Icon';
|
|||||||
import Link from 'Components/Link/Link';
|
import Link from 'Components/Link/Link';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditRemotePathMappingModalConnector from './EditRemotePathMappingModalConnector';
|
import EditRemotePathMappingModalConnector from './EditRemotePathMappingModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './RemotePathMapping.css';
|
import styles from './RemotePathMapping.css';
|
||||||
|
|
||||||
class RemotePathMapping extends Component {
|
class RemotePathMapping extends Component {
|
||||||
@ -89,7 +90,7 @@ class RemotePathMapping extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Delay Profile"
|
title="Delete Delay Profile"
|
||||||
message="Are you sure you want to delete this remote path mapping?"
|
message="Are you sure you want to delete this remote path mapping?"
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteRemotePathMapping}
|
onConfirm={this.onConfirmDeleteRemotePathMapping}
|
||||||
onCancel={this.onDeleteRemotePathMappingModalClose}
|
onCancel={this.onDeleteRemotePathMappingModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -7,6 +7,7 @@ import Link from 'Components/Link/Link';
|
|||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import RemotePathMapping from './RemotePathMapping';
|
import RemotePathMapping from './RemotePathMapping';
|
||||||
import EditRemotePathMappingModalConnector from './EditRemotePathMappingModalConnector';
|
import EditRemotePathMappingModalConnector from './EditRemotePathMappingModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './RemotePathMappings.css';
|
import styles from './RemotePathMappings.css';
|
||||||
|
|
||||||
class RemotePathMappings extends Component {
|
class RemotePathMappings extends Component {
|
||||||
@ -44,7 +45,7 @@ class RemotePathMappings extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Remote Path Mappings">
|
<FieldSet legend={translate('RemotePathMappings')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Remote Path Mappings"
|
errorMessage="Unable to load Remote Path Mappings"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -5,6 +5,7 @@ import FieldSet from 'Components/FieldSet';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function AnalyticSettings(props) {
|
function AnalyticSettings(props) {
|
||||||
const {
|
const {
|
||||||
@ -17,7 +18,7 @@ function AnalyticSettings(props) {
|
|||||||
} = settings;
|
} = settings;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Analytics">
|
<FieldSet legend={translate('Analytics')}>
|
||||||
<FormGroup size={sizes.MEDIUM}>
|
<FormGroup size={sizes.MEDIUM}>
|
||||||
<FormLabel>Send Anonymous Usage Data</FormLabel>
|
<FormLabel>Send Anonymous Usage Data</FormLabel>
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import FieldSet from 'Components/FieldSet';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function HostSettings(props) {
|
function HostSettings(props) {
|
||||||
const {
|
const {
|
||||||
@ -27,7 +28,7 @@ function HostSettings(props) {
|
|||||||
} = settings;
|
} = settings;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Host">
|
<FieldSet legend={translate('Host')}>
|
||||||
<FormGroup
|
<FormGroup
|
||||||
advancedSettings={advancedSettings}
|
advancedSettings={advancedSettings}
|
||||||
isAdvanced={true}
|
isAdvanced={true}
|
||||||
|
@ -5,6 +5,7 @@ import FieldSet from 'Components/FieldSet';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const logLevelOptions = [
|
const logLevelOptions = [
|
||||||
{ key: 'info', value: 'Info' },
|
{ key: 'info', value: 'Info' },
|
||||||
@ -23,7 +24,7 @@ function LoggingSettings(props) {
|
|||||||
} = settings;
|
} = settings;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Logging">
|
<FieldSet legend={translate('Logging')}>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
<FormLabel>Log Level</FormLabel>
|
<FormLabel>Log Level</FormLabel>
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import FieldSet from 'Components/FieldSet';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function ProxySettings(props) {
|
function ProxySettings(props) {
|
||||||
const {
|
const {
|
||||||
@ -30,7 +31,7 @@ function ProxySettings(props) {
|
|||||||
];
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Proxy">
|
<FieldSet legend={translate('Proxy')}>
|
||||||
<FormGroup size={sizes.MEDIUM}>
|
<FormGroup size={sizes.MEDIUM}>
|
||||||
<FormLabel>Use Proxy</FormLabel>
|
<FormLabel>Use Proxy</FormLabel>
|
||||||
|
|
||||||
|
@ -9,6 +9,7 @@ import FormLabel from 'Components/Form/FormLabel';
|
|||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import FormInputButton from 'Components/Form/FormInputButton';
|
import FormInputButton from 'Components/Form/FormInputButton';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const authenticationMethodOptions = [
|
const authenticationMethodOptions = [
|
||||||
{ key: 'none', value: 'None' },
|
{ key: 'none', value: 'None' },
|
||||||
@ -76,7 +77,7 @@ class SecuritySettings extends Component {
|
|||||||
const authenticationEnabled = authenticationMethod && authenticationMethod.value !== 'none';
|
const authenticationEnabled = authenticationMethod && authenticationMethod.value !== 'none';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Security">
|
<FieldSet legend={translate('Security')}>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
<FormLabel>Authentication</FormLabel>
|
<FormLabel>Authentication</FormLabel>
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import FieldSet from 'Components/FieldSet';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function UpdateSettings(props) {
|
function UpdateSettings(props) {
|
||||||
const {
|
const {
|
||||||
@ -43,7 +44,7 @@ function UpdateSettings(props) {
|
|||||||
updateOptions.push({ key: 'script', value: 'Script' });
|
updateOptions.push({ key: 'script', value: 'Script' });
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Updates">
|
<FieldSet legend={translate('Updates')}>
|
||||||
<FormGroup
|
<FormGroup
|
||||||
advancedSettings={advancedSettings}
|
advancedSettings={advancedSettings}
|
||||||
isAdvanced={true}
|
isAdvanced={true}
|
||||||
|
@ -13,6 +13,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditIndexerModalContent.css';
|
import styles from './EditIndexerModalContent.css';
|
||||||
|
|
||||||
function EditIndexerModalContent(props) {
|
function EditIndexerModalContent(props) {
|
||||||
@ -143,7 +144,7 @@ function EditIndexerModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteIndexerPress}
|
onPress={onDeleteIndexerPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import Label from 'Components/Label';
|
|||||||
import IconButton from 'Components/Link/IconButton';
|
import IconButton from 'Components/Link/IconButton';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditIndexerModalConnector from './EditIndexerModalConnector';
|
import EditIndexerModalConnector from './EditIndexerModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Indexer.css';
|
import styles from './Indexer.css';
|
||||||
|
|
||||||
class Indexer extends Component {
|
class Indexer extends Component {
|
||||||
@ -136,7 +137,7 @@ class Indexer extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Indexer"
|
title="Delete Indexer"
|
||||||
message={`Are you sure you want to delete the indexer '${name}'?`}
|
message={`Are you sure you want to delete the indexer '${name}'?`}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteIndexer}
|
onConfirm={this.onConfirmDeleteIndexer}
|
||||||
onCancel={this.onDeleteIndexerModalClose}
|
onCancel={this.onDeleteIndexerModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -8,6 +8,7 @@ import PageSectionContent from 'Components/Page/PageSectionContent';
|
|||||||
import Indexer from './Indexer';
|
import Indexer from './Indexer';
|
||||||
import AddIndexerModal from './AddIndexerModal';
|
import AddIndexerModal from './AddIndexerModal';
|
||||||
import EditIndexerModalConnector from './EditIndexerModalConnector';
|
import EditIndexerModalConnector from './EditIndexerModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Indexers.css';
|
import styles from './Indexers.css';
|
||||||
|
|
||||||
class Indexers extends Component {
|
class Indexers extends Component {
|
||||||
@ -64,7 +65,7 @@ class Indexers extends Component {
|
|||||||
} = this.state;
|
} = this.state;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Indexers">
|
<FieldSet legend={translate('Indexers')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Indexers"
|
errorMessage="Unable to load Indexers"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -7,6 +7,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function IndexerOptions(props) {
|
function IndexerOptions(props) {
|
||||||
const {
|
const {
|
||||||
@ -19,7 +20,7 @@ function IndexerOptions(props) {
|
|||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Options">
|
<FieldSet legend={translate('Options')}>
|
||||||
{
|
{
|
||||||
isFetching &&
|
isFetching &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
@ -11,6 +11,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditRestrictionModalContent.css';
|
import styles from './EditRestrictionModalContent.css';
|
||||||
|
|
||||||
function EditRestrictionModalContent(props) {
|
function EditRestrictionModalContent(props) {
|
||||||
@ -91,7 +92,7 @@ function EditRestrictionModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteRestrictionPress}
|
onPress={onDeleteRestrictionPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@ import Label from 'Components/Label';
|
|||||||
import TagList from 'Components/TagList';
|
import TagList from 'Components/TagList';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditRestrictionModalConnector from './EditRestrictionModalConnector';
|
import EditRestrictionModalConnector from './EditRestrictionModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Restriction.css';
|
import styles from './Restriction.css';
|
||||||
|
|
||||||
class Restriction extends Component {
|
class Restriction extends Component {
|
||||||
@ -122,7 +123,7 @@ class Restriction extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Restriction"
|
title="Delete Restriction"
|
||||||
message={'Are you sure you want to delete this restriction?'}
|
message={'Are you sure you want to delete this restriction?'}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteRestriction}
|
onConfirm={this.onConfirmDeleteRestriction}
|
||||||
onCancel={this.onDeleteRestrictionModalClose}
|
onCancel={this.onDeleteRestrictionModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -7,6 +7,7 @@ import Icon from 'Components/Icon';
|
|||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import Restriction from './Restriction';
|
import Restriction from './Restriction';
|
||||||
import EditRestrictionModalConnector from './EditRestrictionModalConnector';
|
import EditRestrictionModalConnector from './EditRestrictionModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Restrictions.css';
|
import styles from './Restrictions.css';
|
||||||
|
|
||||||
class Restrictions extends Component {
|
class Restrictions extends Component {
|
||||||
@ -45,7 +46,7 @@ class Restrictions extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Restrictions">
|
<FieldSet legend={translate('Restrictions')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Restrictions"
|
errorMessage="Unable to load Restrictions"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -13,6 +13,7 @@ import FormInputGroup from 'Components/Form/FormInputGroup';
|
|||||||
import RootFoldersConnector from 'RootFolder/RootFoldersConnector';
|
import RootFoldersConnector from 'RootFolder/RootFoldersConnector';
|
||||||
import NamingConnector from './Naming/NamingConnector';
|
import NamingConnector from './Naming/NamingConnector';
|
||||||
import AddRootFolderConnector from './RootFolder/AddRootFolderConnector';
|
import AddRootFolderConnector from './RootFolder/AddRootFolderConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const rescanAfterRefreshOptions = [
|
const rescanAfterRefreshOptions = [
|
||||||
{ key: 'always', value: 'Always' },
|
{ key: 'always', value: 'Always' },
|
||||||
@ -208,7 +209,7 @@ class MediaManagement extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
<FieldSet
|
<FieldSet
|
||||||
legend="File Management"
|
legend={translate('FileManagement')}
|
||||||
>
|
>
|
||||||
<FormGroup size={sizes.MEDIUM}>
|
<FormGroup size={sizes.MEDIUM}>
|
||||||
<FormLabel>Ignore Deleted Movies</FormLabel>
|
<FormLabel>Ignore Deleted Movies</FormLabel>
|
||||||
@ -364,7 +365,7 @@ class MediaManagement extends Component {
|
|||||||
</Form>
|
</Form>
|
||||||
}
|
}
|
||||||
|
|
||||||
<FieldSet legend="Root Folders">
|
<FieldSet legend={translate('RootFolders')}>
|
||||||
<RootFoldersConnector />
|
<RootFoldersConnector />
|
||||||
<AddRootFolderConnector />
|
<AddRootFolderConnector />
|
||||||
</FieldSet>
|
</FieldSet>
|
||||||
|
@ -9,6 +9,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import NamingModal from './NamingModal';
|
import NamingModal from './NamingModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Naming.css';
|
import styles from './Naming.css';
|
||||||
|
|
||||||
const colonReplacementOptions = [
|
const colonReplacementOptions = [
|
||||||
@ -101,7 +102,7 @@ class Naming extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Movie Naming">
|
<FieldSet legend={translate('MovieNaming')}>
|
||||||
{
|
{
|
||||||
isFetching &&
|
isFetching &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
@ -11,6 +11,7 @@ import ModalHeader from 'Components/Modal/ModalHeader';
|
|||||||
import ModalBody from 'Components/Modal/ModalBody';
|
import ModalBody from 'Components/Modal/ModalBody';
|
||||||
import ModalFooter from 'Components/Modal/ModalFooter';
|
import ModalFooter from 'Components/Modal/ModalFooter';
|
||||||
import NamingOption from './NamingOption';
|
import NamingOption from './NamingOption';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './NamingModal.css';
|
import styles from './NamingModal.css';
|
||||||
|
|
||||||
class NamingModal extends Component {
|
class NamingModal extends Component {
|
||||||
@ -354,7 +355,7 @@ class NamingModal extends Component {
|
|||||||
</div>
|
</div>
|
||||||
</FieldSet>
|
</FieldSet>
|
||||||
|
|
||||||
<FieldSet legend="Custom Formats">
|
<FieldSet legend={translate('CustomFormats')}>
|
||||||
<div className={styles.groups}>
|
<div className={styles.groups}>
|
||||||
{
|
{
|
||||||
customFormatTokens.map(({ token, example }) => {
|
customFormatTokens.map(({ token, example }) => {
|
||||||
|
@ -3,6 +3,7 @@ import React from 'react';
|
|||||||
import FieldSet from 'Components/FieldSet';
|
import FieldSet from 'Components/FieldSet';
|
||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import Metadata from './Metadata';
|
import Metadata from './Metadata';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Metadatas.css';
|
import styles from './Metadatas.css';
|
||||||
|
|
||||||
function Metadatas(props) {
|
function Metadatas(props) {
|
||||||
@ -12,7 +13,7 @@ function Metadatas(props) {
|
|||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Metadata">
|
<FieldSet legend={translate('Metadata')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Metadata"
|
errorMessage="Unable to load Metadata"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -7,6 +7,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
export const certificationCountryOptions = [
|
export const certificationCountryOptions = [
|
||||||
{ key: 'us', value: 'United States' },
|
{ key: 'us', value: 'United States' },
|
||||||
@ -23,7 +24,7 @@ function MetadataOptions(props) {
|
|||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Options">
|
<FieldSet legend={translate('Options')}>
|
||||||
{
|
{
|
||||||
isFetching &&
|
isFetching &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
@ -13,6 +13,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditNetImportModalContent.css';
|
import styles from './EditNetImportModalContent.css';
|
||||||
|
|
||||||
function EditNetImportModalContent(props) {
|
function EditNetImportModalContent(props) {
|
||||||
@ -186,7 +187,7 @@ function EditNetImportModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteNetImportPress}
|
onPress={onDeleteNetImportPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import Card from 'Components/Card';
|
|||||||
import Label from 'Components/Label';
|
import Label from 'Components/Label';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditNetImportModalConnector from './EditNetImportModalConnector';
|
import EditNetImportModalConnector from './EditNetImportModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './NetImport.css';
|
import styles from './NetImport.css';
|
||||||
|
|
||||||
class NetImport extends Component {
|
class NetImport extends Component {
|
||||||
@ -107,7 +108,7 @@ class NetImport extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete List"
|
title="Delete List"
|
||||||
message={`Are you sure you want to delete the list '${name}'?`}
|
message={`Are you sure you want to delete the list '${name}'?`}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteNetImport}
|
onConfirm={this.onConfirmDeleteNetImport}
|
||||||
onCancel={this.onDeleteNetImportModalClose}
|
onCancel={this.onDeleteNetImportModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -8,6 +8,7 @@ import PageSectionContent from 'Components/Page/PageSectionContent';
|
|||||||
import NetImport from './NetImport';
|
import NetImport from './NetImport';
|
||||||
import AddNetImportModal from './AddNetImportModal';
|
import AddNetImportModal from './AddNetImportModal';
|
||||||
import EditNetImportModalConnector from './EditNetImportModalConnector';
|
import EditNetImportModalConnector from './EditNetImportModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './NetImports.css';
|
import styles from './NetImports.css';
|
||||||
|
|
||||||
class NetImports extends Component {
|
class NetImports extends Component {
|
||||||
@ -58,7 +59,7 @@ class NetImports extends Component {
|
|||||||
} = this.state;
|
} = this.state;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Lists">
|
<FieldSet legend={translate('Lists')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Lists"
|
errorMessage="Unable to load Lists"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -12,6 +12,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditNetImportExclusionModalContent.css';
|
import styles from './EditNetImportExclusionModalContent.css';
|
||||||
|
|
||||||
function EditNetImportExclusionModalContent(props) {
|
function EditNetImportExclusionModalContent(props) {
|
||||||
@ -105,7 +106,7 @@ function EditNetImportExclusionModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteNetImportExclusionPress}
|
onPress={onDeleteNetImportExclusionPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import Icon from 'Components/Icon';
|
|||||||
import Link from 'Components/Link/Link';
|
import Link from 'Components/Link/Link';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditNetImportExclusionModalConnector from './EditNetImportExclusionModalConnector';
|
import EditNetImportExclusionModalConnector from './EditNetImportExclusionModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './NetImportExclusion.css';
|
import styles from './NetImportExclusion.css';
|
||||||
|
|
||||||
class NetImportExclusion extends Component {
|
class NetImportExclusion extends Component {
|
||||||
@ -89,7 +90,7 @@ class NetImportExclusion extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Import List Exclusion"
|
title="Delete Import List Exclusion"
|
||||||
message="Are you sure you want to delete this import list exclusion?"
|
message="Are you sure you want to delete this import list exclusion?"
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteNetImportExclusion}
|
onConfirm={this.onConfirmDeleteNetImportExclusion}
|
||||||
onCancel={this.onDeleteNetImportExclusionModalClose}
|
onCancel={this.onDeleteNetImportExclusionModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -7,6 +7,7 @@ import Link from 'Components/Link/Link';
|
|||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import NetImportExclusion from './NetImportExclusion';
|
import NetImportExclusion from './NetImportExclusion';
|
||||||
import EditNetImportExclusionModalConnector from './EditNetImportExclusionModalConnector';
|
import EditNetImportExclusionModalConnector from './EditNetImportExclusionModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './NetImportExclusions.css';
|
import styles from './NetImportExclusions.css';
|
||||||
|
|
||||||
class NetImportExclusions extends Component {
|
class NetImportExclusions extends Component {
|
||||||
@ -44,7 +45,7 @@ class NetImportExclusions extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="List Exclusions">
|
<FieldSet legend={translate('ListExclusions')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load List Exclusions"
|
errorMessage="Unable to load List Exclusions"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -7,6 +7,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function NetImportOptions(props) {
|
function NetImportOptions(props) {
|
||||||
const {
|
const {
|
||||||
@ -26,7 +27,7 @@ function NetImportOptions(props) {
|
|||||||
];
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Options">
|
<FieldSet legend={translate('Options')}>
|
||||||
{
|
{
|
||||||
isFetching &&
|
isFetching &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
@ -14,6 +14,7 @@ import FormGroup from 'Components/Form/FormGroup';
|
|||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
import ProviderFieldFormGroup from 'Components/Form/ProviderFieldFormGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditNotificationModalContent.css';
|
import styles from './EditNotificationModalContent.css';
|
||||||
|
|
||||||
function EditNotificationModalContent(props) {
|
function EditNotificationModalContent(props) {
|
||||||
@ -218,7 +219,7 @@ function EditNotificationModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteNotificationPress}
|
onPress={onDeleteNotificationPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import Card from 'Components/Card';
|
|||||||
import Label from 'Components/Label';
|
import Label from 'Components/Label';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditNotificationModalConnector from './EditNotificationModalConnector';
|
import EditNotificationModalConnector from './EditNotificationModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Notification.css';
|
import styles from './Notification.css';
|
||||||
|
|
||||||
class Notification extends Component {
|
class Notification extends Component {
|
||||||
@ -133,7 +134,7 @@ class Notification extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Notification"
|
title="Delete Notification"
|
||||||
message={`Are you sure you want to delete the notification '${name}'?`}
|
message={`Are you sure you want to delete the notification '${name}'?`}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteNotification}
|
onConfirm={this.onConfirmDeleteNotification}
|
||||||
onCancel={this.onDeleteNotificationModalClose}
|
onCancel={this.onDeleteNotificationModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -8,6 +8,7 @@ import PageSectionContent from 'Components/Page/PageSectionContent';
|
|||||||
import Notification from './Notification';
|
import Notification from './Notification';
|
||||||
import AddNotificationModal from './AddNotificationModal';
|
import AddNotificationModal from './AddNotificationModal';
|
||||||
import EditNotificationModalConnector from './EditNotificationModalConnector';
|
import EditNotificationModalConnector from './EditNotificationModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Notifications.css';
|
import styles from './Notifications.css';
|
||||||
|
|
||||||
class Notifications extends Component {
|
class Notifications extends Component {
|
||||||
@ -58,7 +59,7 @@ class Notifications extends Component {
|
|||||||
} = this.state;
|
} = this.state;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Connections">
|
<FieldSet legend={translate('Connections')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Notifications"
|
errorMessage="Unable to load Notifications"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -8,6 +8,7 @@ import Link from 'Components/Link/Link';
|
|||||||
import TagList from 'Components/TagList';
|
import TagList from 'Components/TagList';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import EditDelayProfileModalConnector from './EditDelayProfileModalConnector';
|
import EditDelayProfileModalConnector from './EditDelayProfileModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DelayProfile.css';
|
import styles from './DelayProfile.css';
|
||||||
|
|
||||||
function getDelay(enabled, delay) {
|
function getDelay(enabled, delay) {
|
||||||
@ -141,7 +142,7 @@ class DelayProfile extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Delay Profile"
|
title="Delete Delay Profile"
|
||||||
message="Are you sure you want to delete this delay profile?"
|
message="Are you sure you want to delete this delay profile?"
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteDelayProfile}
|
onConfirm={this.onConfirmDeleteDelayProfile}
|
||||||
onCancel={this.onDeleteDelayProfileModalClose}
|
onCancel={this.onDeleteDelayProfileModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -10,6 +10,7 @@ import DelayProfileDragSource from './DelayProfileDragSource';
|
|||||||
import DelayProfileDragPreview from './DelayProfileDragPreview';
|
import DelayProfileDragPreview from './DelayProfileDragPreview';
|
||||||
import DelayProfile from './DelayProfile';
|
import DelayProfile from './DelayProfile';
|
||||||
import EditDelayProfileModalConnector from './EditDelayProfileModalConnector';
|
import EditDelayProfileModalConnector from './EditDelayProfileModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DelayProfiles.css';
|
import styles from './DelayProfiles.css';
|
||||||
|
|
||||||
class DelayProfiles extends Component {
|
class DelayProfiles extends Component {
|
||||||
@ -66,7 +67,7 @@ class DelayProfiles extends Component {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Measure onMeasure={this.onMeasure}>
|
<Measure onMeasure={this.onMeasure}>
|
||||||
<FieldSet legend="Delay Profiles">
|
<FieldSet legend={translate('DelayProfiles')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Delay Profiles"
|
errorMessage="Unable to load Delay Profiles"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -14,6 +14,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditDelayProfileModalContent.css';
|
import styles from './EditDelayProfileModalContent.css';
|
||||||
|
|
||||||
function EditDelayProfileModalContent(props) {
|
function EditDelayProfileModalContent(props) {
|
||||||
@ -136,7 +137,7 @@ function EditDelayProfileModalContent(props) {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
onPress={onDeleteDelayProfilePress}
|
onPress={onDeleteDelayProfilePress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ import FormLabel from 'Components/Form/FormLabel';
|
|||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
import QualityProfileItems from './QualityProfileItems';
|
import QualityProfileItems from './QualityProfileItems';
|
||||||
import QualityProfileFormatItems from './QualityProfileFormatItems';
|
import QualityProfileFormatItems from './QualityProfileFormatItems';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './EditQualityProfileModalContent.css';
|
import styles from './EditQualityProfileModalContent.css';
|
||||||
|
|
||||||
const MODAL_BODY_PADDING = parseInt(dimensions.modalBodyPadding);
|
const MODAL_BODY_PADDING = parseInt(dimensions.modalBodyPadding);
|
||||||
@ -297,7 +298,7 @@ class EditQualityProfileModalContent extends Component {
|
|||||||
isDisabled={isInUse}
|
isDisabled={isInUse}
|
||||||
onPress={onDeleteQualityProfilePress}
|
onPress={onDeleteQualityProfilePress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
</div> :
|
</div> :
|
||||||
null
|
null
|
||||||
|
@ -7,6 +7,7 @@ import IconButton from 'Components/Link/IconButton';
|
|||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import Tooltip from 'Components/Tooltip/Tooltip';
|
import Tooltip from 'Components/Tooltip/Tooltip';
|
||||||
import EditQualityProfileModalConnector from './EditQualityProfileModalConnector';
|
import EditQualityProfileModalConnector from './EditQualityProfileModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './QualityProfile.css';
|
import styles from './QualityProfile.css';
|
||||||
|
|
||||||
class QualityProfile extends Component {
|
class QualityProfile extends Component {
|
||||||
@ -162,7 +163,7 @@ class QualityProfile extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Quality Profile"
|
title="Delete Quality Profile"
|
||||||
message={`Are you sure you want to delete the quality profile '${name}'?`}
|
message={`Are you sure you want to delete the quality profile '${name}'?`}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
isSpinning={isDeleting}
|
isSpinning={isDeleting}
|
||||||
onConfirm={this.onConfirmDeleteQualityProfile}
|
onConfirm={this.onConfirmDeleteQualityProfile}
|
||||||
onCancel={this.onDeleteQualityProfileModalClose}
|
onCancel={this.onDeleteQualityProfileModalClose}
|
||||||
|
@ -7,6 +7,7 @@ import FormLabel from 'Components/Form/FormLabel';
|
|||||||
import FormInputHelpText from 'Components/Form/FormInputHelpText';
|
import FormInputHelpText from 'Components/Form/FormInputHelpText';
|
||||||
import Link from 'Components/Link/Link';
|
import Link from 'Components/Link/Link';
|
||||||
import QualityProfileFormatItem from './QualityProfileFormatItem';
|
import QualityProfileFormatItem from './QualityProfileFormatItem';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './QualityProfileFormatItems.css';
|
import styles from './QualityProfileFormatItems.css';
|
||||||
|
|
||||||
function calcOrder(profileFormatItems) {
|
function calcOrder(profileFormatItems) {
|
||||||
@ -76,7 +77,7 @@ class QualityProfileFormatItems extends Component {
|
|||||||
return (
|
return (
|
||||||
<FormGroup size={sizes.EXTRA_SMALL}>
|
<FormGroup size={sizes.EXTRA_SMALL}>
|
||||||
<FormLabel size={sizes.SMALL}>
|
<FormLabel size={sizes.SMALL}>
|
||||||
Custom Formats
|
{translate('CustomFormats')}
|
||||||
</FormLabel>
|
</FormLabel>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
@ -7,6 +7,7 @@ import Icon from 'Components/Icon';
|
|||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import QualityProfile from './QualityProfile';
|
import QualityProfile from './QualityProfile';
|
||||||
import EditQualityProfileModalConnector from './EditQualityProfileModalConnector';
|
import EditQualityProfileModalConnector from './EditQualityProfileModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './QualityProfiles.css';
|
import styles from './QualityProfiles.css';
|
||||||
|
|
||||||
class QualityProfiles extends Component {
|
class QualityProfiles extends Component {
|
||||||
@ -51,7 +52,7 @@ class QualityProfiles extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Quality Profiles">
|
<FieldSet legend={translate('QualityProfiles')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Quality Profiles"
|
errorMessage="Unable to load Quality Profiles"
|
||||||
{...otherProps}c={true}
|
{...otherProps}c={true}
|
||||||
|
@ -3,6 +3,7 @@ import React, { Component } from 'react';
|
|||||||
import FieldSet from 'Components/FieldSet';
|
import FieldSet from 'Components/FieldSet';
|
||||||
import PageSectionContent from 'Components/Page/PageSectionContent';
|
import PageSectionContent from 'Components/Page/PageSectionContent';
|
||||||
import QualityDefinitionConnector from './QualityDefinitionConnector';
|
import QualityDefinitionConnector from './QualityDefinitionConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './QualityDefinitions.css';
|
import styles from './QualityDefinitions.css';
|
||||||
|
|
||||||
class QualityDefinitions extends Component {
|
class QualityDefinitions extends Component {
|
||||||
@ -18,7 +19,7 @@ class QualityDefinitions extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Quality Definitions">
|
<FieldSet legend={translate('QualityDefinitions')}>
|
||||||
<PageSectionContent
|
<PageSectionContent
|
||||||
errorMessage="Unable to load Quality Definitions"
|
errorMessage="Unable to load Quality Definitions"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
|
@ -3,6 +3,7 @@ import Link from 'Components/Link/Link';
|
|||||||
import PageContent from 'Components/Page/PageContent';
|
import PageContent from 'Components/Page/PageContent';
|
||||||
import PageContentBody from 'Components/Page/PageContentBody';
|
import PageContentBody from 'Components/Page/PageContentBody';
|
||||||
import SettingsToolbarConnector from './SettingsToolbarConnector';
|
import SettingsToolbarConnector from './SettingsToolbarConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Settings.css';
|
import styles from './Settings.css';
|
||||||
|
|
||||||
function Settings() {
|
function Settings() {
|
||||||
@ -50,7 +51,7 @@ function Settings() {
|
|||||||
className={styles.link}
|
className={styles.link}
|
||||||
to="/settings/customformats"
|
to="/settings/customformats"
|
||||||
>
|
>
|
||||||
Custom Formats
|
{translate('CustomFormats')}
|
||||||
</Link>
|
</Link>
|
||||||
|
|
||||||
<div className={styles.summary}>
|
<div className={styles.summary}>
|
||||||
@ -94,7 +95,7 @@ function Settings() {
|
|||||||
className={styles.link}
|
className={styles.link}
|
||||||
to="/settings/connect"
|
to="/settings/connect"
|
||||||
>
|
>
|
||||||
Connect
|
{translate('Connect')}
|
||||||
</Link>
|
</Link>
|
||||||
|
|
||||||
<div className={styles.summary}>
|
<div className={styles.summary}>
|
||||||
|
@ -10,6 +10,7 @@ import ModalHeader from 'Components/Modal/ModalHeader';
|
|||||||
import ModalBody from 'Components/Modal/ModalBody';
|
import ModalBody from 'Components/Modal/ModalBody';
|
||||||
import ModalFooter from 'Components/Modal/ModalFooter';
|
import ModalFooter from 'Components/Modal/ModalFooter';
|
||||||
import TagDetailsDelayProfile from './TagDetailsDelayProfile';
|
import TagDetailsDelayProfile from './TagDetailsDelayProfile';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './TagDetailsModalContent.css';
|
import styles from './TagDetailsModalContent.css';
|
||||||
|
|
||||||
function TagDetailsModalContent(props) {
|
function TagDetailsModalContent(props) {
|
||||||
@ -83,7 +84,7 @@ function TagDetailsModalContent(props) {
|
|||||||
|
|
||||||
{
|
{
|
||||||
!!notifications.length &&
|
!!notifications.length &&
|
||||||
<FieldSet legend="Connections">
|
<FieldSet legend={translate('Connections')}>
|
||||||
{
|
{
|
||||||
notifications.map((item) => {
|
notifications.map((item) => {
|
||||||
return (
|
return (
|
||||||
@ -144,7 +145,7 @@ function TagDetailsModalContent(props) {
|
|||||||
|
|
||||||
{
|
{
|
||||||
!!netImports.length &&
|
!!netImports.length &&
|
||||||
<FieldSet legend="Lists">
|
<FieldSet legend={translate('Lists')}>
|
||||||
{
|
{
|
||||||
netImports.map((item) => {
|
netImports.map((item) => {
|
||||||
return (
|
return (
|
||||||
@ -167,7 +168,7 @@ function TagDetailsModalContent(props) {
|
|||||||
isDisabled={isTagUsed}
|
isDisabled={isTagUsed}
|
||||||
onPress={onDeleteTagPress}
|
onPress={onDeleteTagPress}
|
||||||
>
|
>
|
||||||
Delete
|
{translate('Delete')}
|
||||||
</Button>
|
</Button>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ import { kinds } from 'Helpers/Props';
|
|||||||
import Card from 'Components/Card';
|
import Card from 'Components/Card';
|
||||||
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
import ConfirmModal from 'Components/Modal/ConfirmModal';
|
||||||
import TagDetailsModal from './Details/TagDetailsModal';
|
import TagDetailsModal from './Details/TagDetailsModal';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Tag.css';
|
import styles from './Tag.css';
|
||||||
|
|
||||||
class Tag extends Component {
|
class Tag extends Component {
|
||||||
@ -147,7 +148,7 @@ class Tag extends Component {
|
|||||||
kind={kinds.DANGER}
|
kind={kinds.DANGER}
|
||||||
title="Delete Tag"
|
title="Delete Tag"
|
||||||
message={`Are you sure you want to delete the tag '${label}'?`}
|
message={`Are you sure you want to delete the tag '${label}'?`}
|
||||||
confirmLabel="Delete"
|
confirmLabel={translate('Delete')}
|
||||||
onConfirm={this.onConfirmDeleteTag}
|
onConfirm={this.onConfirmDeleteTag}
|
||||||
onCancel={this.onDeleteTagModalClose}
|
onCancel={this.onDeleteTagModalClose}
|
||||||
/>
|
/>
|
||||||
|
@ -10,6 +10,7 @@ import Form from 'Components/Form/Form';
|
|||||||
import FormGroup from 'Components/Form/FormGroup';
|
import FormGroup from 'Components/Form/FormGroup';
|
||||||
import FormLabel from 'Components/Form/FormLabel';
|
import FormLabel from 'Components/Form/FormLabel';
|
||||||
import FormInputGroup from 'Components/Form/FormInputGroup';
|
import FormInputGroup from 'Components/Form/FormInputGroup';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
export const firstDayOfWeekOptions = [
|
export const firstDayOfWeekOptions = [
|
||||||
{ key: 0, value: 'Sunday' },
|
{ key: 0, value: 'Sunday' },
|
||||||
@ -83,7 +84,7 @@ class UISettings extends Component {
|
|||||||
id="uiSettings"
|
id="uiSettings"
|
||||||
{...otherProps}
|
{...otherProps}
|
||||||
>
|
>
|
||||||
<FieldSet legend="Calendar">
|
<FieldSet legend={translate('Calendar')}>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
<FormLabel>First Day of Week</FormLabel>
|
<FormLabel>First Day of Week</FormLabel>
|
||||||
|
|
||||||
@ -111,7 +112,7 @@ class UISettings extends Component {
|
|||||||
</FieldSet>
|
</FieldSet>
|
||||||
|
|
||||||
<FieldSet
|
<FieldSet
|
||||||
legend="Dates"
|
legend={translate('Dates')}
|
||||||
>
|
>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
<FormLabel>Short Date Format</FormLabel>
|
<FormLabel>Short Date Format</FormLabel>
|
||||||
@ -162,7 +163,7 @@ class UISettings extends Component {
|
|||||||
</FieldSet>
|
</FieldSet>
|
||||||
|
|
||||||
<FieldSet
|
<FieldSet
|
||||||
legend="Style"
|
legend={translate('Style')}
|
||||||
>
|
>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
<FormLabel>Enable Color-Impaired Mode</FormLabel>
|
<FormLabel>Enable Color-Impaired Mode</FormLabel>
|
||||||
@ -177,15 +178,16 @@ class UISettings extends Component {
|
|||||||
</FieldSet>
|
</FieldSet>
|
||||||
|
|
||||||
<FieldSet
|
<FieldSet
|
||||||
legend="Language"
|
legend={translate('Language')}
|
||||||
>
|
>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
<FormLabel>Movie Info Language</FormLabel>
|
<FormLabel>UI Language</FormLabel>
|
||||||
<FormInputGroup
|
<FormInputGroup
|
||||||
type={inputTypes.SELECT}
|
type={inputTypes.SELECT}
|
||||||
name="movieInfoLanguage"
|
name="movieInfoLanguage"
|
||||||
values={languages}
|
values={languages}
|
||||||
helpText="Language that Radarr will use to display Movie Title in UI"
|
helpText="Language that Radarr will use for UI"
|
||||||
|
helpTextWarning="Browser Reload Required"
|
||||||
onChange={onInputChange}
|
onChange={onInputChange}
|
||||||
{...settings.movieInfoLanguage}
|
{...settings.movieInfoLanguage}
|
||||||
/>
|
/>
|
||||||
|
@ -7,6 +7,7 @@ import createSetTableOptionReducer from './Creators/Reducers/createSetTableOptio
|
|||||||
import createHandleActions from './Creators/createHandleActions';
|
import createHandleActions from './Creators/createHandleActions';
|
||||||
import createRemoveItemHandler from './Creators/createRemoveItemHandler';
|
import createRemoveItemHandler from './Creators/createRemoveItemHandler';
|
||||||
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
|
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -58,7 +59,7 @@ export const defaultState = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'date',
|
name: 'date',
|
||||||
label: 'Date',
|
label: translate('Date'),
|
||||||
isSortable: true,
|
isSortable: true,
|
||||||
isVisible: true
|
isVisible: true
|
||||||
},
|
},
|
||||||
|
@ -11,6 +11,7 @@ import createClearReducer from './Creators/Reducers/createClearReducer';
|
|||||||
import createHandleActions from './Creators/createHandleActions';
|
import createHandleActions from './Creators/createHandleActions';
|
||||||
import { set, update } from './baseActions';
|
import { set, update } from './baseActions';
|
||||||
import { executeCommandHelper } from './commandActions';
|
import { executeCommandHelper } from './commandActions';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -49,7 +50,7 @@ export const defaultState = {
|
|||||||
filters: [
|
filters: [
|
||||||
{
|
{
|
||||||
key: 'all',
|
key: 'all',
|
||||||
label: 'All',
|
label: translate('All'),
|
||||||
filters: [
|
filters: [
|
||||||
{
|
{
|
||||||
key: 'monitored',
|
key: 'monitored',
|
||||||
|
@ -16,6 +16,7 @@ import createSetTableOptionReducer from './Creators/Reducers/createSetTableOptio
|
|||||||
import createSetClientSideCollectionSortReducer from './Creators/Reducers/createSetClientSideCollectionSortReducer';
|
import createSetClientSideCollectionSortReducer from './Creators/Reducers/createSetClientSideCollectionSortReducer';
|
||||||
import createSetClientSideCollectionFilterReducer from './Creators/Reducers/createSetClientSideCollectionFilterReducer';
|
import createSetClientSideCollectionFilterReducer from './Creators/Reducers/createSetClientSideCollectionFilterReducer';
|
||||||
import createClearReducer from './Creators/Reducers/createClearReducer';
|
import createClearReducer from './Creators/Reducers/createClearReducer';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -162,7 +163,7 @@ export const defaultState = {
|
|||||||
filters: [
|
filters: [
|
||||||
{
|
{
|
||||||
key: 'all',
|
key: 'all',
|
||||||
label: 'All',
|
label: translate('All'),
|
||||||
filters: []
|
filters: []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -8,6 +8,7 @@ import createSetTableOptionReducer from './Creators/Reducers/createSetTableOptio
|
|||||||
import createHandleActions from './Creators/createHandleActions';
|
import createHandleActions from './Creators/createHandleActions';
|
||||||
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
|
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
|
||||||
import { updateItem } from './baseActions';
|
import { updateItem } from './baseActions';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -59,7 +60,7 @@ export const defaultState = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'date',
|
name: 'date',
|
||||||
label: 'Date',
|
label: translate('Date'),
|
||||||
isSortable: true,
|
isSortable: true,
|
||||||
isVisible: true
|
isVisible: true
|
||||||
},
|
},
|
||||||
@ -91,7 +92,7 @@ export const defaultState = {
|
|||||||
filters: [
|
filters: [
|
||||||
{
|
{
|
||||||
key: 'all',
|
key: 'all',
|
||||||
label: 'All',
|
label: translate('All'),
|
||||||
filters: []
|
filters: []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -12,6 +12,7 @@ import createSaveProviderHandler from './Creators/createSaveProviderHandler';
|
|||||||
import createRemoveItemHandler from './Creators/createRemoveItemHandler';
|
import createRemoveItemHandler from './Creators/createRemoveItemHandler';
|
||||||
import createHandleActions from './Creators/createHandleActions';
|
import createHandleActions from './Creators/createHandleActions';
|
||||||
import { updateItem } from './baseActions';
|
import { updateItem } from './baseActions';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -21,7 +22,7 @@ export const section = 'movies';
|
|||||||
export const filters = [
|
export const filters = [
|
||||||
{
|
{
|
||||||
key: 'all',
|
key: 'all',
|
||||||
label: 'All',
|
label: translate('All'),
|
||||||
filters: []
|
filters: []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -6,6 +6,7 @@ import createSetClientSideCollectionSortReducer from './Creators/Reducers/create
|
|||||||
import createSetClientSideCollectionFilterReducer from './Creators/Reducers/createSetClientSideCollectionFilterReducer';
|
import createSetClientSideCollectionFilterReducer from './Creators/Reducers/createSetClientSideCollectionFilterReducer';
|
||||||
import createFetchHandler from './Creators/createFetchHandler';
|
import createFetchHandler from './Creators/createFetchHandler';
|
||||||
import createHandleActions from './Creators/createHandleActions';
|
import createHandleActions from './Creators/createHandleActions';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -61,7 +62,7 @@ export const defaultState = {
|
|||||||
filters: [
|
filters: [
|
||||||
{
|
{
|
||||||
key: 'all',
|
key: 'all',
|
||||||
label: 'All',
|
label: translate('All'),
|
||||||
filters: []
|
filters: []
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -11,6 +11,7 @@ import createRemoveItemHandler from './Creators/createRemoveItemHandler';
|
|||||||
import createHandleActions from './Creators/createHandleActions';
|
import createHandleActions from './Creators/createHandleActions';
|
||||||
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
|
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
|
||||||
import { set } from './baseActions';
|
import { set } from './baseActions';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables
|
// Variables
|
||||||
@ -119,7 +120,7 @@ export const defaultState = {
|
|||||||
filters: [
|
filters: [
|
||||||
{
|
{
|
||||||
key: 'all',
|
key: 'all',
|
||||||
label: 'All',
|
label: translate('All'),
|
||||||
filters: []
|
filters: []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -11,6 +11,7 @@ import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
|
|||||||
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
||||||
import BackupRow from './BackupRow';
|
import BackupRow from './BackupRow';
|
||||||
import RestoreBackupModalConnector from './RestoreBackupModalConnector';
|
import RestoreBackupModalConnector from './RestoreBackupModalConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const columns = [
|
const columns = [
|
||||||
{
|
{
|
||||||
@ -79,14 +80,14 @@ class Backups extends Component {
|
|||||||
<PageToolbar>
|
<PageToolbar>
|
||||||
<PageToolbarSection>
|
<PageToolbarSection>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Backup Now"
|
label={translate('BackupNow')}
|
||||||
iconName={icons.BACKUP}
|
iconName={icons.BACKUP}
|
||||||
isSpinning={backupExecuting}
|
isSpinning={backupExecuting}
|
||||||
onPress={onBackupPress}
|
onPress={onBackupPress}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Restore Backup"
|
label={translate('RestoreBackup')}
|
||||||
iconName={icons.RESTORE}
|
iconName={icons.RESTORE}
|
||||||
onPress={this.onRestorePress}
|
onPress={this.onRestorePress}
|
||||||
/>
|
/>
|
||||||
|
@ -13,6 +13,7 @@ import PageToolbarSection from 'Components/Page/Toolbar/PageToolbarSection';
|
|||||||
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
||||||
import FilterMenu from 'Components/Menu/FilterMenu';
|
import FilterMenu from 'Components/Menu/FilterMenu';
|
||||||
import LogsTableRow from './LogsTableRow';
|
import LogsTableRow from './LogsTableRow';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
function LogsTable(props) {
|
function LogsTable(props) {
|
||||||
const {
|
const {
|
||||||
@ -36,7 +37,7 @@ function LogsTable(props) {
|
|||||||
<PageToolbar>
|
<PageToolbar>
|
||||||
<PageToolbarSection>
|
<PageToolbarSection>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Refresh"
|
label={translate('Refresh')}
|
||||||
iconName={icons.REFRESH}
|
iconName={icons.REFRESH}
|
||||||
spinningName={icons.REFRESH}
|
spinningName={icons.REFRESH}
|
||||||
isSpinning={isFetching}
|
isSpinning={isFetching}
|
||||||
@ -44,7 +45,7 @@ function LogsTable(props) {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Clear"
|
label={translate('Clear')}
|
||||||
iconName={icons.CLEAR}
|
iconName={icons.CLEAR}
|
||||||
isSpinning={clearLogExecuting}
|
isSpinning={clearLogExecuting}
|
||||||
onPress={onClearLogsPress}
|
onPress={onClearLogsPress}
|
||||||
@ -58,7 +59,7 @@ function LogsTable(props) {
|
|||||||
canModifyColumns={false}
|
canModifyColumns={false}
|
||||||
>
|
>
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Options"
|
label={translate('Options')}
|
||||||
iconName={icons.TABLE}
|
iconName={icons.TABLE}
|
||||||
/>
|
/>
|
||||||
</TableOptionsModalWrapper>
|
</TableOptionsModalWrapper>
|
||||||
|
@ -14,6 +14,7 @@ import PageToolbarButton from 'Components/Page/Toolbar/PageToolbarButton';
|
|||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import LogsNavMenu from '../LogsNavMenu';
|
import LogsNavMenu from '../LogsNavMenu';
|
||||||
import LogFilesTableRow from './LogFilesTableRow';
|
import LogFilesTableRow from './LogFilesTableRow';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const columns = [
|
const columns = [
|
||||||
{
|
{
|
||||||
@ -58,7 +59,7 @@ class LogFiles extends Component {
|
|||||||
<PageToolbarSeparator />
|
<PageToolbarSeparator />
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Refresh"
|
label={translate('Refresh')}
|
||||||
iconName={icons.REFRESH}
|
iconName={icons.REFRESH}
|
||||||
spinningName={icons.REFRESH}
|
spinningName={icons.REFRESH}
|
||||||
isSpinning={isFetching}
|
isSpinning={isFetching}
|
||||||
@ -66,7 +67,7 @@ class LogFiles extends Component {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<PageToolbarButton
|
<PageToolbarButton
|
||||||
label="Clear"
|
label={translate('Clear')}
|
||||||
iconName={icons.CLEAR}
|
iconName={icons.CLEAR}
|
||||||
isSpinning={deleteFilesExecuting}
|
isSpinning={deleteFilesExecuting}
|
||||||
onPress={onDeleteFilesPress}
|
onPress={onDeleteFilesPress}
|
||||||
|
@ -6,6 +6,7 @@ import InlineMarkdown from 'Components/Markdown/InlineMarkdown';
|
|||||||
import DescriptionList from 'Components/DescriptionList/DescriptionList';
|
import DescriptionList from 'Components/DescriptionList/DescriptionList';
|
||||||
import DescriptionListItem from 'Components/DescriptionList/DescriptionListItem';
|
import DescriptionListItem from 'Components/DescriptionList/DescriptionListItem';
|
||||||
import StartTime from './StartTime';
|
import StartTime from './StartTime';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './About.css';
|
import styles from './About.css';
|
||||||
|
|
||||||
class About extends Component {
|
class About extends Component {
|
||||||
@ -32,7 +33,7 @@ class About extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="About">
|
<FieldSet legend={translate('About')}>
|
||||||
<DescriptionList className={styles.descriptionList}>
|
<DescriptionList className={styles.descriptionList}>
|
||||||
<DescriptionListItem
|
<DescriptionListItem
|
||||||
title="Version"
|
title="Version"
|
||||||
|
@ -9,6 +9,7 @@ import TableBody from 'Components/Table/TableBody';
|
|||||||
import TableRow from 'Components/Table/TableRow';
|
import TableRow from 'Components/Table/TableRow';
|
||||||
import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
||||||
import ProgressBar from 'Components/ProgressBar';
|
import ProgressBar from 'Components/ProgressBar';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './DiskSpace.css';
|
import styles from './DiskSpace.css';
|
||||||
|
|
||||||
const columns = [
|
const columns = [
|
||||||
@ -45,7 +46,7 @@ class DiskSpace extends Component {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Disk Space">
|
<FieldSet legend={translate('DiskSpace')}>
|
||||||
{
|
{
|
||||||
isFetching &&
|
isFetching &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
@ -11,6 +11,7 @@ import Table from 'Components/Table/Table';
|
|||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import TableRow from 'Components/Table/TableRow';
|
import TableRow from 'Components/Table/TableRow';
|
||||||
import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
import TableRowCell from 'Components/Table/Cells/TableRowCell';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
import styles from './Health.css';
|
import styles from './Health.css';
|
||||||
|
|
||||||
function getInternalLink(source) {
|
function getInternalLink(source) {
|
||||||
@ -119,7 +120,7 @@ class Health extends Component {
|
|||||||
<FieldSet
|
<FieldSet
|
||||||
legend={
|
legend={
|
||||||
<div className={styles.legend}>
|
<div className={styles.legend}>
|
||||||
Health
|
{translate('Health')}
|
||||||
|
|
||||||
{
|
{
|
||||||
isFetching && isPopulated &&
|
isFetching && isPopulated &&
|
||||||
|
@ -4,6 +4,7 @@ import FieldSet from 'Components/FieldSet';
|
|||||||
import DescriptionList from 'Components/DescriptionList/DescriptionList';
|
import DescriptionList from 'Components/DescriptionList/DescriptionList';
|
||||||
import DescriptionListItemTitle from 'Components/DescriptionList/DescriptionListItemTitle';
|
import DescriptionListItemTitle from 'Components/DescriptionList/DescriptionListItemTitle';
|
||||||
import DescriptionListItemDescription from 'Components/DescriptionList/DescriptionListItemDescription';
|
import DescriptionListItemDescription from 'Components/DescriptionList/DescriptionListItemDescription';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
class MoreInfo extends Component {
|
class MoreInfo extends Component {
|
||||||
|
|
||||||
@ -12,7 +13,7 @@ class MoreInfo extends Component {
|
|||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="More Info">
|
<FieldSet legend={translate('MoreInfo')}>
|
||||||
<DescriptionList>
|
<DescriptionList>
|
||||||
<DescriptionListItemTitle>Home page</DescriptionListItemTitle>
|
<DescriptionListItemTitle>Home page</DescriptionListItemTitle>
|
||||||
<DescriptionListItemDescription>
|
<DescriptionListItemDescription>
|
||||||
|
@ -5,6 +5,7 @@ import LoadingIndicator from 'Components/Loading/LoadingIndicator';
|
|||||||
import Table from 'Components/Table/Table';
|
import Table from 'Components/Table/Table';
|
||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import QueuedTaskRowConnector from './QueuedTaskRowConnector';
|
import QueuedTaskRowConnector from './QueuedTaskRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const columns = [
|
const columns = [
|
||||||
{
|
{
|
||||||
@ -51,7 +52,7 @@ function QueuedTasks(props) {
|
|||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Queue">
|
<FieldSet legend={translate('Queue')}>
|
||||||
{
|
{
|
||||||
isFetching && !isPopulated &&
|
isFetching && !isPopulated &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
@ -5,6 +5,7 @@ import LoadingIndicator from 'Components/Loading/LoadingIndicator';
|
|||||||
import Table from 'Components/Table/Table';
|
import Table from 'Components/Table/Table';
|
||||||
import TableBody from 'Components/Table/TableBody';
|
import TableBody from 'Components/Table/TableBody';
|
||||||
import ScheduledTaskRowConnector from './ScheduledTaskRowConnector';
|
import ScheduledTaskRowConnector from './ScheduledTaskRowConnector';
|
||||||
|
import translate from 'Utilities/String/translate';
|
||||||
|
|
||||||
const columns = [
|
const columns = [
|
||||||
{
|
{
|
||||||
@ -46,7 +47,7 @@ function ScheduledTasks(props) {
|
|||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<FieldSet legend="Scheduled">
|
<FieldSet legend={translate('Scheduled')}>
|
||||||
{
|
{
|
||||||
isFetching && !isPopulated &&
|
isFetching && !isPopulated &&
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
|
Loading…
Reference in New Issue
Block a user