mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-28 13:01:28 +02:00
Translation update, updating inline div tags and placeHolder attributes
This commit is contained in:
@@ -101,7 +101,9 @@ class EditCustomFormatModalContent extends Component {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new custom format, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewCustomFormatPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -42,7 +42,9 @@ class AddSpecificationModalContent extends Component {
|
||||
|
||||
{
|
||||
!isSchemaFetching && !!schemaError &&
|
||||
<div>Unable to add a new condition, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewConditionPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
@@ -50,8 +52,13 @@ class AddSpecificationModalContent extends Component {
|
||||
<div>
|
||||
|
||||
<Alert kind={kinds.INFO}>
|
||||
<div>Radarr supports custom conditions against the release properties below.</div>
|
||||
<div>Visit <Link to='https://github.com/Radarr/Radarr/wiki/Custom-Formats-Aphrodite'>GitHub</Link> for more details.</div>
|
||||
<div>
|
||||
{translate('RadarrSupportsCustomConditionsAgainstTheReleasePropertiesBelow')}
|
||||
</div>
|
||||
<div>
|
||||
{translate('VisitGithubCustomFormatsAphrodite')}
|
||||
<Link to="https://github.com/Radarr/Radarr/wiki/Custom-Formats-Aphrodite">GitHub</Link>
|
||||
</div>
|
||||
</Alert>
|
||||
|
||||
<div className={styles.specifications}>
|
||||
|
@@ -51,8 +51,14 @@ function EditSpecificationModalContent(props) {
|
||||
{
|
||||
fields && fields.some((x) => x.label === 'Regular Expression') &&
|
||||
<Alert kind={kinds.INFO}>
|
||||
<div>This condition matches using Regular Expressions. See <Link to="https://www.regular-expressions.info/tutorial.html">here</Link> for details. Note that the characters <code>{'\\^$.|?*+()[{'}</code> have special meanings and need escaping with a <code>\</code></div>
|
||||
<div>Regular expressions can be tested <Link to="http://regexstorm.net/tester">here</Link>.</div>
|
||||
<div>
|
||||
<div dangerouslySetInnerHTML={{ __html: translate('ThisConditionMatchesUsingRegularExpressions', ['<code>\\^$.|?*+()[{</code>', '<code>\\</code>']) }} />
|
||||
{translate('MoreDetails')} <Link to="https://www.regular-expressions.info/tutorial.html">{translate('LinkHere')}</Link>
|
||||
</div>
|
||||
<div>
|
||||
{translate('RegularExpressionsCanBeTested')}
|
||||
<Link to="http://regexstorm.net/tester">{translate('LinkHere')}</Link>
|
||||
</div>
|
||||
</Alert>
|
||||
}
|
||||
|
||||
|
@@ -43,7 +43,9 @@ class AddDownloadClientModalContent extends Component {
|
||||
|
||||
{
|
||||
!isSchemaFetching && !!schemaError &&
|
||||
<div>Unable to add a new downloadClient, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewDownloadClientPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
@@ -51,8 +53,12 @@ class AddDownloadClientModalContent extends Component {
|
||||
<div>
|
||||
|
||||
<Alert kind={kinds.INFO}>
|
||||
<div>Radarr supports any downloadClient that uses the Newznab standard, as well as other downloadClients listed below.</div>
|
||||
<div>For more information on the individual downloadClients, clink on the info buttons.</div>
|
||||
<div>
|
||||
{translate('RadarrSupportsAnyDownloadClient')}
|
||||
</div>
|
||||
<div>
|
||||
{translate('ForMoreInformationOnTheIndividualDownloadClients')}
|
||||
</div>
|
||||
</Alert>
|
||||
|
||||
<FieldSet legend={translate('Usenet')}>
|
||||
|
@@ -64,7 +64,9 @@ class EditDownloadClientModalContent extends Component {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new download client, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewDownloadClientPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -28,7 +28,9 @@ function DownloadClientOptions(props) {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load download client options</div>
|
||||
<div>
|
||||
{translate('UnableToLoadDownloadClientOptions')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -52,7 +52,9 @@ function EditRemotePathMappingModalContent(props) {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new remote path mapping, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewRemotePathMappingPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -126,7 +126,9 @@ class GeneralSettings extends Component {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load General settings</div>
|
||||
<div>
|
||||
{translate('UnableToLoadGeneralSettings')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -50,7 +50,9 @@ function EditImportExclusionModalContent(props) {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new list exclusion, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewListExclusionPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -43,7 +43,9 @@ class AddImportListModalContent extends Component {
|
||||
|
||||
{
|
||||
!isSchemaFetching && !!schemaError &&
|
||||
<div>Unable to add a new list, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewListPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
@@ -51,8 +53,12 @@ class AddImportListModalContent extends Component {
|
||||
<div>
|
||||
|
||||
<Alert kind={kinds.INFO}>
|
||||
<div>Radarr supports any RSS movie lists as well as the one stated below.</div>
|
||||
<div>For more information on the individual importLists, clink on the info buttons.</div>
|
||||
<div>
|
||||
{translate('RadarrSupportsAnyRSSMovieListsAsWellAsTheOneStatedBelow')}
|
||||
</div>
|
||||
<div>
|
||||
{translate('ForMoreInformationOnTheIndividualImportListsClinkOnTheInfoButtons')}
|
||||
</div>
|
||||
</Alert>
|
||||
|
||||
{
|
||||
|
@@ -63,7 +63,9 @@ function EditImportListModalContent(props) {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new list, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewListPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -35,7 +35,9 @@ function ImportListOptions(props) {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load list options</div>
|
||||
<div>
|
||||
{translate('UnableToLoadListOptions')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -43,7 +43,9 @@ class AddIndexerModalContent extends Component {
|
||||
|
||||
{
|
||||
!isSchemaFetching && !!schemaError &&
|
||||
<div>Unable to add a new indexer, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewIndexerPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
@@ -51,8 +53,12 @@ class AddIndexerModalContent extends Component {
|
||||
<div>
|
||||
|
||||
<Alert kind={kinds.INFO}>
|
||||
<div>Radarr supports any indexer that uses the Newznab standard, as well as other indexers listed below.</div>
|
||||
<div>For more information on the individual indexers, click on the info buttons.</div>
|
||||
<div>
|
||||
{translate('RadarrSupportsAnyIndexer')}
|
||||
</div>
|
||||
<div>
|
||||
{translate('ForMoreInformationOnTheIndividualIndexers')}
|
||||
</div>
|
||||
</Alert>
|
||||
|
||||
<FieldSet legend={translate('Usenet')}>
|
||||
|
@@ -60,7 +60,9 @@ function EditIndexerModalContent(props) {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new indexer, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewIndexerPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -28,7 +28,9 @@ function IndexerOptions(props) {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load indexer options</div>
|
||||
<div>
|
||||
{translate('UnableToLoadIndexerOptions')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -51,7 +51,7 @@ function EditRestrictionModalContent(props) {
|
||||
name="required"
|
||||
helpText={translate('RequiredHelpText')}
|
||||
kind={kinds.SUCCESS}
|
||||
placeholder="Add new restriction"
|
||||
placeholder={translate('RequiredPlaceHolder')}
|
||||
{...required}
|
||||
onChange={onInputChange}
|
||||
/>
|
||||
@@ -65,7 +65,7 @@ function EditRestrictionModalContent(props) {
|
||||
name="ignored"
|
||||
helpText={translate('IgnoredHelpText')}
|
||||
kind={kinds.DANGER}
|
||||
placeholder="Add new restriction"
|
||||
placeholder={translate('IgnoredPlaceHolder')}
|
||||
{...ignored}
|
||||
onChange={onInputChange}
|
||||
/>
|
||||
|
@@ -66,7 +66,9 @@ class MediaManagement extends Component {
|
||||
{
|
||||
!isFetching && error &&
|
||||
<FieldSet legend={translate('NamingSettings')}>
|
||||
<div>Unable to load Media Management settings</div>
|
||||
<div>
|
||||
{translate('UnableToLoadMediaManagementSettings')}
|
||||
</div>
|
||||
</FieldSet>
|
||||
}
|
||||
|
||||
@@ -197,8 +199,8 @@ class MediaManagement extends Component {
|
||||
type={inputTypes.TEXT}
|
||||
name="extraFileExtensions"
|
||||
helpTexts={[
|
||||
'Comma separated list of extra files to import (.nfo will be imported as .nfo-orig)',
|
||||
'Examples: ".sub, .nfo" or "sub,nfo"'
|
||||
translate('ExtraFileExtensionsHelpTexts1'),
|
||||
translate('ExtraFileExtensionsHelpTexts2')
|
||||
]}
|
||||
onChange={onInputChange}
|
||||
{...settings.extraFileExtensions}
|
||||
@@ -353,8 +355,8 @@ class MediaManagement extends Component {
|
||||
type={inputTypes.TEXT}
|
||||
name="fileChmod"
|
||||
helpTexts={[
|
||||
'Octal, applied to media files when imported/renamed by Radarr',
|
||||
'The same mode is applied to movie/sub folders with the execute bit added, e.g., 0644 becomes 0755'
|
||||
translate('FileChmodHelpTexts1'),
|
||||
translate('FileChmodHelpTexts2')
|
||||
]}
|
||||
onChange={onInputChange}
|
||||
{...settings.fileChmod}
|
||||
|
@@ -110,7 +110,9 @@ class Naming extends Component {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load Naming settings</div>
|
||||
<div>
|
||||
{translate('UnableToLoadNamingSettings')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -32,7 +32,9 @@ function MetadataOptions(props) {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load indexer options</div>
|
||||
<div>
|
||||
{translate('UnableToLoadIndexerOptions')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -39,7 +39,9 @@ class AddNotificationModalContent extends Component {
|
||||
|
||||
{
|
||||
!isSchemaFetching && !!schemaError &&
|
||||
<div>Unable to add a new notification, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewNotificationPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -59,7 +59,9 @@ function EditNotificationModalContent(props) {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new notification, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewNotificationPleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -90,7 +90,7 @@ function NotificationEventItems(props) {
|
||||
<FormInputGroup
|
||||
type={inputTypes.CHECK}
|
||||
name="onDelete"
|
||||
helpText="On Delete"
|
||||
helpText={translate('OnDeleteHelpText')}
|
||||
isDisabled={!supportsOnDelete.value}
|
||||
{...onDelete}
|
||||
onChange={onInputChange}
|
||||
|
@@ -57,7 +57,9 @@ function EditDelayProfileModalContent(props) {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new quality profile, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewQualityProfilePleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -146,7 +146,9 @@ class EditQualityProfileModalContent extends Component {
|
||||
|
||||
{
|
||||
!isFetching && !!error &&
|
||||
<div>Unable to add a new quality profile, please try again.</div>
|
||||
<div>
|
||||
{translate('UnableToAddANewQualityProfilePleaseTryAgain')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -1,6 +1,7 @@
|
||||
import PropTypes from 'prop-types';
|
||||
import React from 'react';
|
||||
import formatBytes from 'Utilities/Number/formatBytes';
|
||||
import translate from 'Utilities/String/translate';
|
||||
|
||||
function QualityDefinitionLimits(props) {
|
||||
const {
|
||||
@@ -18,9 +19,15 @@ function QualityDefinitionLimits(props) {
|
||||
|
||||
return (
|
||||
<div>
|
||||
<div>60 Minutes: {sixty}</div>
|
||||
<div>90 Minutes: {ninety}</div>
|
||||
<div>120 Minutes: {hundredTwenty}</div>
|
||||
<div>
|
||||
{translate('MinutesSixty', [sixty])}
|
||||
</div>
|
||||
<div>
|
||||
{translate('MinutesNinety', [ninety])}
|
||||
</div>
|
||||
<div>
|
||||
{translate('MinutesHundredTwenty', [hundredTwenty])}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
@@ -35,7 +35,9 @@ function TagDetailsModalContent(props) {
|
||||
<ModalBody>
|
||||
{
|
||||
!isTagUsed &&
|
||||
<div>Tag is not used and can be deleted</div>
|
||||
<div>
|
||||
{translate('TagIsNotUsedAndCanBeDeleted')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
@@ -14,7 +14,9 @@ function Tags(props) {
|
||||
|
||||
if (!items.length) {
|
||||
return (
|
||||
<div>No tags have been added yet</div>
|
||||
<div>
|
||||
{translate('NoTagsHaveBeenAddedYet')}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
|
@@ -80,7 +80,9 @@ class UISettings extends Component {
|
||||
|
||||
{
|
||||
!isFetching && error &&
|
||||
<div>Unable to load UI settings</div>
|
||||
<div>
|
||||
{translate('UnableToLoadUISettings')}
|
||||
</div>
|
||||
}
|
||||
|
||||
{
|
||||
|
Reference in New Issue
Block a user