More Translations, Column Headings, Settings page

This commit is contained in:
Qstick 2020-07-19 11:42:03 -04:00
parent fc7091ef0c
commit 9603f9fdb5
14 changed files with 162 additions and 109 deletions

View File

@ -102,7 +102,7 @@ class CalendarPage extends Component {
<PageToolbar>
<PageToolbarSection>
<PageToolbarButton
label="iCal Link"
label={translate('iCalLink')}
iconName={icons.CALENDAR}
onPress={this.onGetCalendarLinkPress}
/>
@ -110,14 +110,14 @@ class CalendarPage extends Component {
<PageToolbarSeparator />
<PageToolbarButton
label={translate('RSSSync')}
label={translate('RssSync')}
iconName={icons.RSS}
isSpinning={isRssSyncExecuting}
onPress={onRssSyncPress}
/>
<PageToolbarButton
label="Search for Missing"
label={translate('SearchForMissing')}
iconName={icons.SEARCH}
isDisabled={!missingMovieIds.length}
isSpinning={isSearchingForMissing}
@ -155,7 +155,7 @@ class CalendarPage extends Component {
{
movieError &&
<div className={styles.errorMessage}>
{getErrorMessage(movieError, 'Failed to load movie from API')}
{getErrorMessage(movieError, 'Failed to load movies from API')}
</div>
}

View File

@ -117,7 +117,7 @@ const links = [
to: '/settings/general'
},
{
title: translate('UI'),
title: translate('Ui'),
to: '/settings/ui'
}
]

View File

@ -352,15 +352,15 @@ class MovieIndex extends Component {
const isLoaded = !!(!error && isPopulated && items.length && scroller);
const hasNoMovie = !totalItems;
const searchIndexLabel = selectedFilterKey === 'all' ? translate('SearchAll') : 'Search Filtered';
const searchEditorLabel = selectedMovieIds.length > 0 ? 'Search Selected' : translate('SearchAll');
const searchIndexLabel = selectedFilterKey === 'all' ? translate('SearchAll') : translate('SearchFiltered');
const searchEditorLabel = selectedMovieIds.length > 0 ? translate('SearchSelected') : translate('SearchAll');
return (
<PageContent>
<PageToolbar>
<PageToolbarSection>
<PageToolbarButton
label={isMovieEditorActive && selectedMovieIds.length > 0 ? 'Update Selected' : translate('UpdateAll')}
label={isMovieEditorActive && selectedMovieIds.length > 0 ? translate('UpdateSelected') : translate('UpdateAll')}
iconName={icons.REFRESH}
spinningName={icons.REFRESH}
isSpinning={isRefreshingMovie}
@ -588,7 +588,7 @@ class MovieIndex extends Component {
<ConfirmModal
isOpen={isConfirmSearchModalOpen}
kind={kinds.DANGER}
title="Mass Movie Search"
title={translate('MassMovieSearch')}
message={
<div>
<div>
@ -599,7 +599,7 @@ class MovieIndex extends Component {
</div>
</div>
}
confirmLabel="Search"
confirmLabel={translate('Search')}
onConfirm={this.onSearchConfirmed}
onCancel={this.onConfirmSearchModalClose}
/>

View File

@ -18,33 +18,33 @@ function Settings() {
className={styles.link}
to="/settings/mediamanagement"
>
Media Management
{translate('MediaManagement')}
</Link>
<div className={styles.summary}>
Naming and file management settings
{translate('MediaManagementSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/profiles"
>
Profiles
{translate('Profiles')}
</Link>
<div className={styles.summary}>
Quality, Language and Delay profiles
{translate('ProfilesSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/quality"
>
Quality
{translate('Quality')}
</Link>
<div className={styles.summary}>
Quality sizes and naming
{translate('QualitySettingsSummary')}
</div>
<Link
@ -55,40 +55,40 @@ function Settings() {
</Link>
<div className={styles.summary}>
Custom Formats and Settings
{translate('CustomFormatsSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/indexers"
>
Indexers
{translate('Indexers')}
</Link>
<div className={styles.summary}>
Indexers and release restrictions
{translate('IndexersSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/downloadclients"
>
Download Clients
{translate('DownloadClients')}
</Link>
<div className={styles.summary}>
Download clients, download handling and remote path mappings
{translate('DownloadClientsSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/netimports"
>
Lists
{translate('Lists')}
</Link>
<div className={styles.summary}>
Import Lists, list exclusions
{translate('ListsSettingsSummary')}
</div>
<Link
@ -99,51 +99,51 @@ function Settings() {
</Link>
<div className={styles.summary}>
Notifications, connections to media servers/players and custom scripts
{translate('ConnectSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/metadata"
>
Metadata
{translate('Metadata')}
</Link>
<div className={styles.summary}>
Create metadata files when movies are imported or refreshed
{translate('MetadataSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/tags"
>
Tags
{translate('Tags')}
</Link>
<div className={styles.summary}>
See all tags and how they are used. Unused tags can be removed
{translate('TagsSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/general"
>
General
{translate('General')}
</Link>
<div className={styles.summary}>
Port, SSL, username/password, proxy, analytics and updates
{translate('GeneralSettingsSummary')}
</div>
<Link
className={styles.link}
to="/settings/ui"
>
UI
{translate('Ui')}
</Link>
<div className={styles.summary}>
Calendar, date and color impaired options
{translate('UiSettingsSummary')}
</div>
</PageContentBody>
</PageContent>

View File

@ -29,31 +29,31 @@ export const defaultState = {
columns: [
{
name: 'movies.sortTitle',
label: 'Movie Title',
label: translate('MovieTitle'),
isSortable: true,
isVisible: true
},
{
name: 'sourceTitle',
label: 'Source Title',
label: translate('SourceTitle'),
isSortable: true,
isVisible: true
},
{
name: 'languages',
label: 'Language',
label: translate('Languages'),
isSortable: true,
isVisible: true
},
{
name: 'quality',
label: 'Quality',
label: translate('Quality'),
isSortable: true,
isVisible: true
},
{
name: 'customFormats',
label: 'Formats',
label: translate('Formats'),
isSortable: false,
isVisible: true
},
@ -65,13 +65,13 @@ export const defaultState = {
},
{
name: 'indexer',
label: 'Indexer',
label: translate('Indexer'),
isSortable: true,
isVisible: false
},
{
name: 'actions',
columnLabel: 'Actions',
columnLabel: translate('Actions'),
isVisible: true,
isModifiable: false
}

View File

@ -61,7 +61,7 @@ export const defaultState = {
},
{
key: 'monitored',
label: 'Monitored Only',
label: translate('MonitoredOnly'),
filters: [
{
key: 'monitored',

View File

@ -66,57 +66,57 @@ export const defaultState = {
columns: [
{
name: 'status',
columnLabel: 'Status',
columnLabel: translate('Status'),
isSortable: true,
isVisible: true,
isModifiable: false
},
{
name: 'sortTitle',
label: 'Movie Title',
label: translate('MovieTitle'),
isSortable: true,
isVisible: true,
isModifiable: false
},
{
name: 'studio',
label: 'Studio',
label: translate('Studio'),
isSortable: true,
isVisible: true
},
{
name: 'inCinemas',
label: 'In Cinemas',
label: translate('InCinemas'),
isSortable: true,
isVisible: true
},
{
name: 'physicalRelease',
label: 'Physical Release',
label: translate('PhysicalRelease'),
isSortable: true,
isVisible: false
},
{
name: 'genres',
label: 'Genres',
label: translate('Genres'),
isSortable: false,
isVisible: false
},
{
name: 'ratings',
label: 'Rating',
label: translate('Ratings'),
isSortable: true,
isVisible: false
},
{
name: 'certification',
label: 'Certification',
label: translate('Certification'),
isSortable: true,
isVisible: false
},
{
name: 'actions',
columnLabel: 'Actions',
columnLabel: translate('Actions'),
isVisible: true,
isModifiable: false
}

View File

@ -30,31 +30,31 @@ export const defaultState = {
columns: [
{
name: 'eventType',
columnLabel: 'Event Type',
columnLabel: translate('EventType'),
isVisible: true,
isModifiable: false
},
{
name: 'movies.sortTitle',
label: 'Movie',
label: translate('Movie'),
isSortable: true,
isVisible: true
},
{
name: 'languages',
label: 'Language',
label: translate('Languages'),
isSortable: true,
isVisible: true
},
{
name: 'quality',
label: 'Quality',
label: translate('Quality'),
isSortable: true,
isVisible: true
},
{
name: 'customFormats',
label: 'Formats',
label: translate('Formats'),
isSortable: false,
isVisible: true
},
@ -66,22 +66,22 @@ export const defaultState = {
},
{
name: 'downloadClient',
label: 'Download Client',
label: translate('DownloadClient'),
isVisible: false
},
{
name: 'indexer',
label: 'Indexer',
label: translate('Indexer'),
isVisible: false
},
{
name: 'releaseGroup',
label: 'Release Group',
label: translate('ReleaseGroup'),
isVisible: false
},
{
name: 'details',
columnLabel: 'Details',
columnLabel: translate('Details'),
isVisible: true,
isModifiable: false
}
@ -97,7 +97,7 @@ export const defaultState = {
},
{
key: 'grabbed',
label: 'Grabbed',
label: translate('Grabbed'),
filters: [
{
key: 'eventType',
@ -108,7 +108,7 @@ export const defaultState = {
},
{
key: 'imported',
label: 'Imported',
label: translate('Imported'),
filters: [
{
key: 'eventType',
@ -119,7 +119,7 @@ export const defaultState = {
},
{
key: 'failed',
label: 'Failed',
label: translate('Failed'),
filters: [
{
key: 'eventType',
@ -130,7 +130,7 @@ export const defaultState = {
},
{
key: 'deleted',
label: 'Deleted',
label: translate('Deleted'),
filters: [
{
key: 'eventType',
@ -141,7 +141,7 @@ export const defaultState = {
},
{
key: 'renamed',
label: 'Renamed',
label: translate('Renamed'),
filters: [
{
key: 'eventType',
@ -152,7 +152,7 @@ export const defaultState = {
},
{
key: 'ignored',
label: 'Ignored',
label: translate('Ignored'),
filters: [
{
key: 'eventType',

View File

@ -27,7 +27,7 @@ export const filters = [
},
{
key: 'monitored',
label: 'Monitored Only',
label: translate('MonitoredOnly'),
filters: [
{
key: 'monitored',
@ -38,7 +38,7 @@ export const filters = [
},
{
key: 'unmonitored',
label: 'Unmonitored Only',
label: translate('Unmonitored'),
filters: [
{
key: 'monitored',
@ -49,7 +49,7 @@ export const filters = [
},
{
key: 'missing',
label: 'Missing',
label: translate('Missing'),
filters: [
{
key: 'monitored',
@ -65,7 +65,7 @@ export const filters = [
},
{
key: 'wanted',
label: 'Wanted',
label: translate('Wanted'),
filters: [
{
key: 'monitored',
@ -86,7 +86,7 @@ export const filters = [
},
{
key: 'cutoffunmet',
label: 'Cut-off Unmet',
label: translate('CutoffUnmet'),
filters: [
{
key: 'monitored',

View File

@ -10,6 +10,7 @@ import { createThunk, handleThunks } from 'Store/thunks';
import createHandleActions from './Creators/createHandleActions';
import { set, updateItem } from './baseActions';
import { filters, filterPredicates, sortPredicates } from './movieActions';
import translate from 'Utilities/String/translate';
//
// Variables
@ -65,123 +66,123 @@ export const defaultState = {
},
{
name: 'status',
columnLabel: 'Release Status',
columnLabel: translate('ReleaseStatus'),
isSortable: true,
isVisible: true,
isModifiable: false
},
{
name: 'sortTitle',
label: 'Movie Title',
label: translate('MovieTitle'),
isSortable: true,
isVisible: true,
isModifiable: false
},
{
name: 'collection',
label: 'Collection',
label: translate('Collection'),
isSortable: true,
isVisible: false
},
{
name: 'studio',
label: 'Studio',
label: translate('Studio'),
isSortable: true,
isVisible: true
},
{
name: 'qualityProfileId',
label: 'Quality Profile',
label: translate('QualityProfile'),
isSortable: true,
isVisible: true
},
{
name: 'added',
label: 'Added',
label: translate('Added'),
isSortable: true,
isVisible: false
},
{
name: 'year',
label: 'Year',
label: translate('Year'),
isSortable: true,
isVisible: false
},
{
name: 'inCinemas',
label: 'In Cinemas',
label: translate('InCinemas'),
isSortable: true,
isVisible: false
},
{
name: 'digitalRelease',
label: 'Digital Release',
label: translate('DigitalRelease'),
isSortable: true,
isVisible: false
},
{
name: 'physicalRelease',
label: 'Physical Release',
label: translate('PhysicalRelease'),
isSortable: true,
isVisible: false
},
{
name: 'runtime',
label: 'Runtime',
label: translate('Runtime'),
isSortable: true,
isVisible: false
},
{
name: 'minimumAvailability',
label: 'Min Availability',
label: translate('MinAvailability'),
isSortable: true,
isVisible: false
},
{
name: 'path',
label: 'Path',
label: translate('Path'),
isSortable: true,
isVisible: false
},
{
name: 'sizeOnDisk',
label: 'Size on Disk',
label: translate('SizeOnDisk'),
isSortable: true,
isVisible: false
},
{
name: 'genres',
label: 'Genres',
label: translate('Genres'),
isSortable: false,
isVisible: false
},
{
name: 'movieStatus',
label: 'Status',
label: translate('Status'),
isSortable: true,
isVisible: true
},
{
name: 'ratings',
label: 'Rating',
label: translate('Ratings'),
isSortable: true,
isVisible: false
},
{
name: 'certification',
label: 'Certification',
label: translate('Certification'),
isSortable: true,
isVisible: false
},
{
name: 'tags',
label: 'Tags',
label: translate('Tags'),
isSortable: false,
isVisible: false
},
{
name: 'actions',
columnLabel: 'Actions',
columnLabel: translate('Actions'),
isVisible: true,
isModifiable: false
}

View File

@ -11,6 +11,7 @@ import createFetchHandler from './Creators/createFetchHandler';
import createHandleActions from './Creators/createHandleActions';
import createServerSideCollectionHandlers from './Creators/createServerSideCollectionHandlers';
import { set, updateItem } from './baseActions';
import translate from 'Utilities/String/translate';
//
// Variables
@ -57,86 +58,86 @@ export const defaultState = {
columns: [
{
name: 'status',
columnLabel: 'Status',
columnLabel: translate('Status'),
isSortable: true,
isVisible: true,
isModifiable: false
},
{
name: 'movies.sortTitle',
label: 'Movie',
label: translate('Movie'),
isSortable: true,
isVisible: true
},
{
name: 'languages',
label: 'Languages',
label: translate('Languages'),
isSortable: true,
isVisible: true
},
{
name: 'quality',
label: 'Quality',
label: translate('Quality'),
isSortable: true,
isVisible: true
},
{
name: 'customFormats',
label: 'Formats',
label: translate('Formats'),
isSortable: false,
isVisible: true
},
{
name: 'protocol',
label: 'Protocol',
label: translate('Protocol'),
isSortable: true,
isVisible: false
},
{
name: 'indexer',
label: 'Indexer',
label: translate('Indexer'),
isSortable: true,
isVisible: false
},
{
name: 'downloadClient',
label: 'Download Client',
label: translate('DownloadClient'),
isSortable: true,
isVisible: false
},
{
name: 'size',
label: 'Size',
label: translate('Size'),
isSortable: true,
isVisible: false
},
{
name: 'title',
label: 'Release Title',
label: translate('ReleaseTitle'),
isSortable: true,
isVisible: false
},
{
name: 'outputPath',
label: 'Output Path',
label: translate('OutputPath'),
isSortable: false,
isVisible: false
},
{
name: 'estimatedCompletionTime',
label: 'Timeleft',
label: translate('Timeleft'),
isSortable: true,
isVisible: true
},
{
name: 'progress',
label: 'Progress',
label: translate('Progress'),
isSortable: true,
isVisible: true
},
{
name: 'actions',
columnLabel: 'Actions',
columnLabel: translate('Actions'),
isVisible: true,
isModifiable: false
}

View File

@ -108,7 +108,7 @@ export const defaultState = {
},
{
name: 'actions',
columnLabel: 'Actions',
columnLabel: translate('Actions'),
isSortable: true,
isVisible: true,
isModifiable: false

View File

@ -19,12 +19,12 @@ import translate from 'Utilities/String/translate';
const columns = [
{
name: 'filename',
label: 'Filename',
label: translate('Filename'),
isVisible: true
},
{
name: 'lastWriteTime',
label: 'Last Write Time',
label: translate('LastWriteTime'),
isVisible: true
},
{
@ -67,7 +67,7 @@ class LogFiles extends Component {
/>
<PageToolbarButton
label={translate('Clear')}
label={translate('Delete')}
iconName={icons.CLEAR}
isSpinning={deleteFilesExecuting}
onPress={onDeleteFilesPress}

View File

@ -1,6 +1,8 @@
{
"About": "About",
"Actions": "Actions",
"Activity": "Activity",
"Added": "Added",
"AddExclusion": "Add Exclusion",
"AddMovies": "Add Movies",
"AddNew": "Add New",
@ -16,33 +18,46 @@
"Blacklist": "Blacklist",
"Calendar": "Calendar",
"Cast": "Cast",
"Certification": "Certification",
"ChooseAnotherFolder": "Choose another Folder",
"Clear": "Clear",
"Collection": "Collection",
"CompletedDownloadHandling": "Completed Download Handling",
"Connect": "Connect",
"Connections": "Connections",
"ConnectSettingsSummary": "Notifications, connections to media servers/players and custom scripts",
"Crew": "Crew",
"CustomFilters": "Custom Filters",
"CustomFormats": "Custom Formats",
"CustomFormatsSettingsSummary": "Custom Formats and Settings",
"CutoffUnmet": "Cut-off Unmet",
"Date": "Date",
"Dates": "Dates",
"Day": "Day",
"DelayProfiles": "Delay Profiles",
"Delete": "Delete",
"Deleted": "Deleted",
"Details": "Details",
"DigitalRelease": "Digital Release",
"Discover": "Discover",
"DiskSpace": "Disk Space",
"DotNetVersionCheckNotRecommendedMessage": "Currently installed .Net Framework {0} is supported but we recommend upgrading to at least {1}.",
"DotNetVersionCheckOldUnsupportedMessage": "Currently installed .Net Framework {0} is old and unsupported. Please upgrade the .Net Framework to at least {1}.",
"DownloadClient": "Download Client",
"DownloadClientCheckNoneAvailableMessage": "No download client is available",
"DownloadClientCheckUnableToCommunicateMessage": "Unable to communicate with {0}.",
"DownloadClients": "Download Clients",
"DownloadClientsSettingsSummary": "Download clients, download handling and remote path mappings",
"DownloadClientStatusCheckAllClientMessage": "All download clients are unavailable due to failures",
"DownloadClientStatusCheckSingleClientMessage": "Download clients unavailable due to failures: {0}",
"Downloaded": "Downloaded",
"Edit": "Edit",
"Events": "Events",
"EventType": "Event Type",
"Failed": "Failed",
"FailedDownloadHandling": "Failed Download Handling",
"FileManagement": "File Management",
"Filename": "Filename",
"Files": "Files",
"Filesize": "Filesize",
"Filter": "Filter",
@ -51,41 +66,55 @@
"Formats": "Formats",
"FreeSpace": "Free Space",
"General": "General",
"GeneralSettingsSummary": "Port, SSL, username/password, proxy, analytics and updates",
"Genres": "Genres",
"Grabbed": "Grabbed",
"GrabSelected": "Grab Selected",
"Health": "Health",
"HideAdvanced": "Hide Advanced",
"History": "History",
"Host": "Host",
"iCalLink": "iCal Link",
"Ignored": "Ignored",
"Import": "Import",
"Imported": "Imported",
"ImportFirstTip": "Make sure that your files include the quality in their filenames. eg.",
"ImportHeader": "Import movies you already have",
"ImportMechanismHealthCheckMessage": "Enable Completed Download Handling",
"ImportSecondTip": "Point Radarr to the folder containing all of your movies, not a specific one. eg.",
"ImportTipsMessage": "Some tips to ensure the import goes smoothly:",
"InCinemas": "In Cinemas",
"Indexer": "Indexer",
"IndexerRssHealthCheckNoAvailableIndexers": "All rss-capable indexers are temporarily unavailable due to recent indexer errors",
"IndexerRssHealthCheckNoIndexers": "No indexers available with RSS sync enabled, Radarr will not grab new releases automatically",
"Indexers": "Indexers",
"IndexerSearchCheckNoAutomaticMessage": "No indexers available with Automatic Search enabled, Radarr will not provide any automatic search results",
"IndexerSearchCheckNoAvailableIndexersMessage": "All search-capable indexers are temporarily unavailable due to recent indexer errors",
"IndexerSearchCheckNoInteractiveMessage": "No indexers available with Interactive Search enabled, Radarr will not provide any interactive search results",
"IndexersSettingsSummary": "Indexers and release restrictions",
"IndexerStatusCheckAllClientMessage": "All indexers are unavailable due to failures",
"IndexerStatusCheckSingleClientMessage": "Indexers unavailable due to failures: {0}",
"Language": "Language",
"Language": "Language",
"Languages": "Languages",
"LastWriteTime": "Last Write Time",
"ListExclusions": "List Exclusions",
"Lists": "Lists",
"ListsSettingsSummary": "Import Lists, list exclusions",
"LogFiles": "LogFiles",
"LogFilesLocationMessage": "Log files are located in:",
"Logging": "Logging",
"ManualImport": "Manual Import",
"MassMovieSearch": "Mass Movie Search",
"MediaInfoDllCheckMessage": "MediaInfo Library could not be loaded {0}",
"MediaManagement": "Media Management",
"MediaManagementSettingsSummary": "Naming and file management settings",
"Metadata": "Metadata",
"MetadataSettingsSummary": "Create metadata files when movies are imported or refreshed",
"MinAvailability": "Min Availability",
"MinimumAvailability": "MinimumAvailability",
"Missing": "Missing",
"Monitor": "Monitor",
"MonitoredOnly": "Monitored Only",
"MonoNotNetCoreCheckMessage": "Please upgrade to the .NET Core version of Radarr",
"MonoTlsCheckMessage": "Radarr Mono 4.x tls workaround still enabled, consider removing MONO_TLS_PROVIDER=legacy environment option",
"Month": "Month",
@ -96,14 +125,20 @@
"MovieIndex": "Movie Index",
"MovieNaming": "Movie Naming",
"Movies": "Movies",
"MovieTitle": "Movie Title",
"NetImportStatusCheckAllClientMessage": "All lists are unavailable due to failures",
"NetImportStatusCheckSingleClientMessage": "Lists unavailable due to failures: {0}",
"NoChange": "No Change",
"NoChanges": "No Changes",
"Options": "Options",
"OutputPath": "Output Path",
"Path": "Path",
"PhysicalRelease": "Physical Release",
"PreviewRename": "Preview Rename",
"Profiles": "Profiles",
"ProfilesSettingsSummary": "Quality, Language and Delay profiles",
"Progress": "Progress",
"Protocol": "Protocol",
"Proxy": "Proxy",
"ProxyCheckBadRequestMessage": "Failed to test proxy. StatusCode: {0}",
"ProxyCheckFailedToTestMessage": "Failed to test proxy: {0}",
@ -113,15 +148,21 @@
"QualityDefinitions": "Quality Definitions",
"QualityProfile": "Quality Profile",
"QualityProfiles": "Quality Profiles",
"QualitySettingsSummary": "Quality sizes and naming",
"Queue": "Queue",
"Ratings": "Ratings",
"Refresh": "Refresh",
"RefreshAndScan": "Refresh & Scan",
"ReleaseBranchCheckOfficialBranchMessage": "Branch {0} is not a valid Radarr release branch, you will not receive updates",
"ReleaseBranchCheckPreviousVersionMessage": "Branch {0} is for a previous version of Radarr, set branch to 'Aphrodite' for further updates",
"ReleaseGroup": "Release Group",
"ReleaseStatus": "Release Status",
"ReleaseTitle": "Release Title",
"RemotePathMappings": "Remote Path Mappings",
"RemovedMovieCheckMultipleMessage": "Movies {0} were removed from TMDb",
"RemovedMovieCheckSingleMessage": "Movie {0} was removed from TMDb",
"RemoveSelected": "Remove Selected",
"Renamed": "Renamed",
"RenameFiles": "Rename Files",
"RestoreBackup": "Restore Backup",
"Restrictions": "Restrictions",
@ -130,6 +171,7 @@
"RootFolderCheckSingleMessage": "Missing root folder: {0}",
"RootFolders": "Root Folders",
"RSSSync": "RSS Sync",
"Runtime": "Runtime",
"SaveChanges": "Save Changes",
"Scheduled": "Scheduled",
"Search": "Search",
@ -142,15 +184,21 @@
"SetTags": "Set Tags",
"Settings": "Settings",
"ShowAdvanced": "Show Advanced",
"Size": "Size",
"SizeOnDisk": "Size on Disk",
"Sort": "Sort",
"SourceTitle": "Source Title",
"Status": "Status",
"Studio": "Studio",
"Style": "Style",
"System": "System",
"Tags": "Tags",
"TagsSettingsSummary": "See all tags and how they are used. Unused tags can be removed",
"Tasks": "Tasks",
"Timeleft": "Timeleft",
"Titles": "Titles",
"UI": "UI",
"UISettingsSummary": "Calendar, date and color impaired options",
"UnmappedFolders": "Unmapped Folders",
"Unmonitored": "Unmonitored",
"UnselectAll": "Unselect All",
@ -159,6 +207,9 @@
"UpdateCheckStartupTranslocationMessage": "Cannot install update because startup folder '{0}' is in an App Translocation folder.",
"UpdateCheckUINotWritableMessage": "Cannot install update because UI folder '{0}' is not writable by the user '{1}'.",
"Updates": "Updates",
"UpdateSelected": "Update Selected",
"View": "View",
"Week": "Week"
"Wanted": "Wanted",
"Week": "Week",
"Year": "Year"
}