diff --git a/frontend/src/Indexer/Index/Table/IndexerIndexRow.css b/frontend/src/Indexer/Index/Table/IndexerIndexRow.css
index a0a0daee4..a09d0218e 100644
--- a/frontend/src/Indexer/Index/Table/IndexerIndexRow.css
+++ b/frontend/src/Indexer/Index/Table/IndexerIndexRow.css
@@ -11,6 +11,12 @@
flex: 0 0 60px;
}
+.id {
+ composes: cell;
+
+ flex: 0 0 60px;
+}
+
.sortName {
composes: cell;
diff --git a/frontend/src/Indexer/Index/Table/IndexerIndexRow.css.d.ts b/frontend/src/Indexer/Index/Table/IndexerIndexRow.css.d.ts
index c5d22cf6d..5feb0c35d 100644
--- a/frontend/src/Indexer/Index/Table/IndexerIndexRow.css.d.ts
+++ b/frontend/src/Indexer/Index/Table/IndexerIndexRow.css.d.ts
@@ -8,6 +8,7 @@ interface CssExports {
'cell': string;
'checkInput': string;
'externalLink': string;
+ 'id': string;
'minimumSeeders': string;
'packSeedTime': string;
'priority': string;
diff --git a/frontend/src/Indexer/Index/Table/IndexerIndexRow.tsx b/frontend/src/Indexer/Index/Table/IndexerIndexRow.tsx
index d406750ac..9e83e9b8d 100644
--- a/frontend/src/Indexer/Index/Table/IndexerIndexRow.tsx
+++ b/frontend/src/Indexer/Index/Table/IndexerIndexRow.tsx
@@ -34,7 +34,7 @@ function IndexerIndexRow(props: IndexerIndexRowProps) {
const { indexerId, columns, isSelectMode, onCloneIndexerPress } = props;
const { indexer, appProfile, status, longDateFormat, timeFormat } =
- useSelector(createIndexerIndexItemSelector(props.indexerId));
+ useSelector(createIndexerIndexItemSelector(indexerId));
const {
id,
@@ -148,12 +148,24 @@ function IndexerIndexRow(props: IndexerIndexRowProps) {
);
}
+ if (name === 'id') {
+ return (
+
+
+
+ );
+ }
+
if (name === 'sortName') {
return (
diff --git a/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css b/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css
index 90ad3b0e9..185ba0ef7 100644
--- a/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css
+++ b/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css
@@ -4,6 +4,12 @@
flex: 0 0 60px;
}
+.id {
+ composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css';
+
+ flex: 0 0 60px;
+}
+
.sortName {
composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css';
diff --git a/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css.d.ts b/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css.d.ts
index 94d39a9bb..f6a54fa25 100644
--- a/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css.d.ts
+++ b/frontend/src/Indexer/Index/Table/IndexerIndexTableHeader.css.d.ts
@@ -5,6 +5,7 @@ interface CssExports {
'added': string;
'appProfileId': string;
'capabilities': string;
+ 'id': string;
'minimumSeeders': string;
'packSeedTime': string;
'priority': string;
diff --git a/frontend/src/Indexer/IndexerTitleLink.tsx b/frontend/src/Indexer/IndexerTitleLink.tsx
index 3c22b87f2..be6e32db3 100644
--- a/frontend/src/Indexer/IndexerTitleLink.tsx
+++ b/frontend/src/Indexer/IndexerTitleLink.tsx
@@ -1,17 +1,16 @@
-import PropTypes from 'prop-types';
import React, { useCallback, useState } from 'react';
import Link from 'Components/Link/Link';
import IndexerInfoModal from './Info/IndexerInfoModal';
import styles from './IndexerTitleLink.css';
interface IndexerTitleLinkProps {
- indexerName: string;
indexerId: number;
+ title: string;
onCloneIndexerPress(id: number): void;
}
function IndexerTitleLink(props: IndexerTitleLinkProps) {
- const { indexerName, indexerId, onCloneIndexerPress } = props;
+ const { title, indexerId, onCloneIndexerPress } = props;
const [isIndexerInfoModalOpen, setIsIndexerInfoModalOpen] = useState(false);
@@ -26,7 +25,7 @@ function IndexerTitleLink(props: IndexerTitleLinkProps) {
return (
- {indexerName}
+ {title}
translate('IndexerId'),
+ label: () => translate('Id'),
+ isSortable: true,
+ isVisible: false
+ },
{
name: 'sortName',
label: () => translate('IndexerName'),
isSortable: true,
- isVisible: true,
- isModifiable: false
+ isVisible: true
},
{
name: 'protocol',
diff --git a/src/NzbDrone.Core/Localization/Core/en.json b/src/NzbDrone.Core/Localization/Core/en.json
index 171db1112..b232fd33c 100644
--- a/src/NzbDrone.Core/Localization/Core/en.json
+++ b/src/NzbDrone.Core/Localization/Core/en.json
@@ -200,7 +200,7 @@
"EnableInteractiveSearch": "Enable Interactive Search",
"EnableInteractiveSearchHelpText": "Will be used when interactive search is used",
"EnableRss": "Enable RSS",
- "EnableRssHelpText": "Enable Rss feed for Indexer",
+ "EnableRssHelpText": "Enable RSS feed for Indexer",
"EnableSSL": "Enable SSL",
"EnableSslHelpText": " Requires restart running as administrator to take effect",
"Enabled": "Enabled",
@@ -248,7 +248,7 @@
"HomePage": "Home Page",
"Host": "Host",
"Hostname": "Hostname",
- "Id": "Id",
+ "Id": "ID",
"IgnoredAddresses": "Ignored Addresses",
"IllRestartLater": "I'll restart later",
"Implementation": "Implementation",
@@ -266,6 +266,7 @@
"IndexerFlags": "Indexer Flags",
"IndexerHealthCheckNoIndexers": "No indexers enabled, {appName} will not return search results",
"IndexerHistoryLoadError": "Error loading indexer history",
+ "IndexerId": "Indexer ID",
"IndexerInfo": "Indexer Info",
"IndexerLongTermStatusCheckAllClientMessage": "All indexers are unavailable due to failures for more than 6 hours",
"IndexerLongTermStatusCheckSingleClientMessage": "Indexers unavailable due to failures for more than 6 hours: {0}",
@@ -279,7 +280,7 @@
"IndexerProxyStatusCheckAllClientMessage": "All proxies are unavailable due to failures",
"IndexerProxyStatusCheckSingleClientMessage": "Proxies unavailable due to failures: {0}",
"IndexerQuery": "Indexer Query",
- "IndexerRss": "Indexer Rss",
+ "IndexerRss": "Indexer RSS",
"IndexerSettingsSummary": "Configure various global Indexer settings including Proxies.",
"IndexerSite": "Indexer Site",
"IndexerStatus": "Indexer Status",