From a758161e31e731f8ba4f7f21f2108c75ac2e640c Mon Sep 17 00:00:00 2001 From: Bogdan Date: Mon, 14 Aug 2023 02:27:59 +0300 Subject: [PATCH] New: Default name when adding providers --- frontend/src/Indexer/Add/AddIndexerModalContent.js | 1 + .../Indexer/Add/AddIndexerModalContentConnector.js | 4 ++-- .../src/Indexer/Add/AddIndexerPresetMenuItem.js | 8 ++++++-- frontend/src/Indexer/Add/SelectIndexerRow.js | 4 +++- .../src/Indexer/Edit/EditIndexerModalContent.js | 2 +- .../Applications/Applications/AddApplicationItem.js | 6 ++++-- .../Applications/AddApplicationPresetMenuItem.js | 8 ++++++-- .../Applications/EditApplicationModalContent.js | 2 +- .../Categories/AddCategoryModalContent.js | 2 +- .../EditDownloadClientModalContent.js | 2 +- .../Indexers/IndexerProxies/AddIndexerProxyItem.js | 6 ++++-- .../IndexerProxies/EditIndexerProxyModalContent.js | 2 +- .../Notifications/AddNotificationModalContent.js | 2 +- .../Notifications/EditNotificationModalContent.js | 2 +- frontend/src/Store/Actions/indexerActions.js | 2 ++ src/NzbDrone.Core/Localization/Core/en.json | 13 +++++++++++++ 16 files changed, 48 insertions(+), 18 deletions(-) diff --git a/frontend/src/Indexer/Add/AddIndexerModalContent.js b/frontend/src/Indexer/Add/AddIndexerModalContent.js index 7d205dc11..81e911467 100644 --- a/frontend/src/Indexer/Add/AddIndexerModalContent.js +++ b/frontend/src/Indexer/Add/AddIndexerModalContent.js @@ -263,6 +263,7 @@ class AddIndexerModalContent extends Component { diff --git a/frontend/src/Indexer/Add/AddIndexerModalContentConnector.js b/frontend/src/Indexer/Add/AddIndexerModalContentConnector.js index 0dc810608..9b9b2d824 100644 --- a/frontend/src/Indexer/Add/AddIndexerModalContentConnector.js +++ b/frontend/src/Indexer/Add/AddIndexerModalContentConnector.js @@ -49,8 +49,8 @@ class AddIndexerModalContentConnector extends Component { // // Listeners - onIndexerSelect = ({ implementation, name }) => { - this.props.selectIndexerSchema({ implementation, name }); + onIndexerSelect = ({ implementation, implementationName, name }) => { + this.props.selectIndexerSchema({ implementation, implementationName, name }); this.props.onSelectIndexer(); }; diff --git a/frontend/src/Indexer/Add/AddIndexerPresetMenuItem.js b/frontend/src/Indexer/Add/AddIndexerPresetMenuItem.js index 03196e526..8f98d0e12 100644 --- a/frontend/src/Indexer/Add/AddIndexerPresetMenuItem.js +++ b/frontend/src/Indexer/Add/AddIndexerPresetMenuItem.js @@ -10,12 +10,14 @@ class AddIndexerPresetMenuItem extends Component { onPress = () => { const { name, - implementation + implementation, + implementationName } = this.props; this.props.onPress({ name, - implementation + implementation, + implementationName }); }; @@ -26,6 +28,7 @@ class AddIndexerPresetMenuItem extends Component { const { name, implementation, + implementationName, ...otherProps } = this.props; @@ -43,6 +46,7 @@ class AddIndexerPresetMenuItem extends Component { AddIndexerPresetMenuItem.propTypes = { name: PropTypes.string.isRequired, implementation: PropTypes.string.isRequired, + implementationName: PropTypes.string.isRequired, onPress: PropTypes.func.isRequired }; diff --git a/frontend/src/Indexer/Add/SelectIndexerRow.js b/frontend/src/Indexer/Add/SelectIndexerRow.js index c3f33220d..7e1c994bf 100644 --- a/frontend/src/Indexer/Add/SelectIndexerRow.js +++ b/frontend/src/Indexer/Add/SelectIndexerRow.js @@ -17,10 +17,11 @@ class SelectIndexerRow extends Component { onPress = () => { const { implementation, + implementationName, name } = this.props; - this.props.onIndexerSelect({ implementation, name }); + this.props.onIndexerSelect({ implementation, implementationName, name }); }; // @@ -81,6 +82,7 @@ SelectIndexerRow.propTypes = { language: PropTypes.string.isRequired, description: PropTypes.string.isRequired, implementation: PropTypes.string.isRequired, + implementationName: PropTypes.string.isRequired, onIndexerSelect: PropTypes.func.isRequired, isExistingIndexer: PropTypes.bool.isRequired }; diff --git a/frontend/src/Indexer/Edit/EditIndexerModalContent.js b/frontend/src/Indexer/Edit/EditIndexerModalContent.js index 4a2ec4c0e..1fdc06eb0 100644 --- a/frontend/src/Indexer/Edit/EditIndexerModalContent.js +++ b/frontend/src/Indexer/Edit/EditIndexerModalContent.js @@ -61,7 +61,7 @@ function EditIndexerModalContent(props) { return ( - {`${id ? translate('EditIndexer') : translate('AddIndexer')} - ${indexerDisplayName}`} + {id ? translate('EditIndexerImplementation', { implementationName: indexerDisplayName }) : translate('AddIndexerImplementation', { implementationName: indexerDisplayName })} diff --git a/frontend/src/Settings/Applications/Applications/AddApplicationItem.js b/frontend/src/Settings/Applications/Applications/AddApplicationItem.js index bb0053824..bae97990b 100644 --- a/frontend/src/Settings/Applications/Applications/AddApplicationItem.js +++ b/frontend/src/Settings/Applications/Applications/AddApplicationItem.js @@ -16,10 +16,11 @@ class AddApplicationItem extends Component { onApplicationSelect = () => { const { - implementation + implementation, + implementationName } = this.props; - this.props.onApplicationSelect({ implementation }); + this.props.onApplicationSelect({ implementation, implementationName }); }; // @@ -77,6 +78,7 @@ class AddApplicationItem extends Component { key={preset.name} name={preset.name} implementation={implementation} + implementationName={implementationName} onPress={onApplicationSelect} /> ); diff --git a/frontend/src/Settings/Applications/Applications/AddApplicationPresetMenuItem.js b/frontend/src/Settings/Applications/Applications/AddApplicationPresetMenuItem.js index 9974f7132..d04aef4f0 100644 --- a/frontend/src/Settings/Applications/Applications/AddApplicationPresetMenuItem.js +++ b/frontend/src/Settings/Applications/Applications/AddApplicationPresetMenuItem.js @@ -10,12 +10,14 @@ class AddApplicationPresetMenuItem extends Component { onPress = () => { const { name, - implementation + implementation, + implementationName } = this.props; this.props.onPress({ name, - implementation + implementation, + implementationName }); }; @@ -26,6 +28,7 @@ class AddApplicationPresetMenuItem extends Component { const { name, implementation, + implementationName, ...otherProps } = this.props; @@ -43,6 +46,7 @@ class AddApplicationPresetMenuItem extends Component { AddApplicationPresetMenuItem.propTypes = { name: PropTypes.string.isRequired, implementation: PropTypes.string.isRequired, + implementationName: PropTypes.string.isRequired, onPress: PropTypes.func.isRequired }; diff --git a/frontend/src/Settings/Applications/Applications/EditApplicationModalContent.js b/frontend/src/Settings/Applications/Applications/EditApplicationModalContent.js index 88ad57076..33cae830a 100644 --- a/frontend/src/Settings/Applications/Applications/EditApplicationModalContent.js +++ b/frontend/src/Settings/Applications/Applications/EditApplicationModalContent.js @@ -71,7 +71,7 @@ function EditApplicationModalContent(props) { return ( - {`${id ? translate('Edit') : translate('Add')} ${translate('Application')} - ${implementationName}`} + {id ? translate('EditApplicationImplementation', { implementationName }) : translate('AddApplicationImplementation', { implementationName })} diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/Categories/AddCategoryModalContent.js b/frontend/src/Settings/DownloadClients/DownloadClients/Categories/AddCategoryModalContent.js index 71c51849c..e79f615ea 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/Categories/AddCategoryModalContent.js +++ b/frontend/src/Settings/DownloadClients/DownloadClients/Categories/AddCategoryModalContent.js @@ -35,7 +35,7 @@ function AddCategoryModalContent(props) { return ( - {`${id ? 'Edit' : 'Add'} Category`} + {id ? translate('EditCategory') : translate('AddCategory')} diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/EditDownloadClientModalContent.js b/frontend/src/Settings/DownloadClients/DownloadClients/EditDownloadClientModalContent.js index b9cb2cc9c..b4dd3c1e9 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/EditDownloadClientModalContent.js +++ b/frontend/src/Settings/DownloadClients/DownloadClients/EditDownloadClientModalContent.js @@ -84,7 +84,7 @@ class EditDownloadClientModalContent extends Component { return ( - {`${id ? translate('Edit') : translate('Add')} ${translate('DownloadClient')} - ${implementationName}`} + {id ? translate('EditDownloadClientImplementation', { implementationName }) : translate('AddDownloadClientImplementation', { implementationName })} diff --git a/frontend/src/Settings/Indexers/IndexerProxies/AddIndexerProxyItem.js b/frontend/src/Settings/Indexers/IndexerProxies/AddIndexerProxyItem.js index ff238c915..77e1e6a98 100644 --- a/frontend/src/Settings/Indexers/IndexerProxies/AddIndexerProxyItem.js +++ b/frontend/src/Settings/Indexers/IndexerProxies/AddIndexerProxyItem.js @@ -16,10 +16,11 @@ class AddIndexerProxyItem extends Component { onIndexerProxySelect = () => { const { - implementation + implementation, + implementationName } = this.props; - this.props.onIndexerProxySelect({ implementation }); + this.props.onIndexerProxySelect({ implementation, implementationName }); }; // @@ -77,6 +78,7 @@ class AddIndexerProxyItem extends Component { key={preset.name} name={preset.name} implementation={implementation} + implementationName={implementationName} onPress={onIndexerProxySelect} /> ); diff --git a/frontend/src/Settings/Indexers/IndexerProxies/EditIndexerProxyModalContent.js b/frontend/src/Settings/Indexers/IndexerProxies/EditIndexerProxyModalContent.js index 59ce4e820..8579c2a2f 100644 --- a/frontend/src/Settings/Indexers/IndexerProxies/EditIndexerProxyModalContent.js +++ b/frontend/src/Settings/Indexers/IndexerProxies/EditIndexerProxyModalContent.js @@ -47,7 +47,7 @@ function EditIndexerProxyModalContent(props) { return ( - {`${id ? 'Edit' : 'Add'} Proxy - ${implementationName}`} + {id ? translate('EditIndexerProxyImplementation', { implementationName }) : translate('AddIndexerProxyImplementation', { implementationName })} diff --git a/frontend/src/Settings/Notifications/Notifications/AddNotificationModalContent.js b/frontend/src/Settings/Notifications/Notifications/AddNotificationModalContent.js index aaf784094..a48a8f9d5 100644 --- a/frontend/src/Settings/Notifications/Notifications/AddNotificationModalContent.js +++ b/frontend/src/Settings/Notifications/Notifications/AddNotificationModalContent.js @@ -28,7 +28,7 @@ class AddNotificationModalContent extends Component { return ( - Add Notification + {translate('AddConnection')} diff --git a/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js b/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js index ec20ccff1..60e368617 100644 --- a/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js +++ b/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js @@ -48,7 +48,7 @@ function EditNotificationModalContent(props) { return ( - {`${id ? 'Edit' : 'Add'} Connection - ${implementationName}`} + {id ? translate('EditConnectionImplementation', { implementationName }) : translate('AddConnectionImplementation', { implementationName })} diff --git a/frontend/src/Store/Actions/indexerActions.js b/frontend/src/Store/Actions/indexerActions.js index 39ed90da8..0325891be 100644 --- a/frontend/src/Store/Actions/indexerActions.js +++ b/frontend/src/Store/Actions/indexerActions.js @@ -184,6 +184,8 @@ export const reducers = createHandleActions({ [SELECT_INDEXER_SCHEMA]: (state, { payload }) => { return selectSchema(state, payload, (selectedSchema) => { + selectedSchema.name = payload.name ?? payload.implementationName; + selectedSchema.implementationName = payload.implementationName; selectedSchema.enable = selectedSchema.supportsRss; return selectedSchema; diff --git a/src/NzbDrone.Core/Localization/Core/en.json b/src/NzbDrone.Core/Localization/Core/en.json index 66ccfad7a..451bfb3f7 100644 --- a/src/NzbDrone.Core/Localization/Core/en.json +++ b/src/NzbDrone.Core/Localization/Core/en.json @@ -4,11 +4,18 @@ "Actions": "Actions", "Add": "Add", "AddApplication": "Add Application", + "AddApplicationImplementation": "Add Application - {implementationName}", + "AddCategory": "Add Category", + "AddConnection": "Add Connection", + "AddConnectionImplementation": "Add Connection - {implementationName}", "AddCustomFilter": "Add Custom Filter", "AddDownloadClient": "Add Download Client", + "AddDownloadClientImplementation": "Add Download Client - {implementationName}", "AddDownloadClientToProwlarr": "Adding a download client allows Prowlarr to send releases direct from the UI while doing a manual search.", "AddIndexer": "Add Indexer", + "AddIndexerImplementation": "Add Indexer - {implementationName}", "AddIndexerProxy": "Add Indexer Proxy", + "AddIndexerProxyImplementation": "Add Indexer Proxy - {implementationName}", "AddNewIndexer": "Add New Indexer", "AddRemoveOnly": "Add and Remove Only", "AddSyncProfile": "Add Sync Profile", @@ -160,7 +167,13 @@ "DownloadClientsSettingsSummary": "Download clients configuration for integration into Prowlarr UI search", "Duration": "Duration", "Edit": "Edit", + "EditApplicationImplementation": "Edit Application - {implementationName}", + "EditCategory": "Edit Category", + "EditConnectionImplementation": "Edit Connection - {implementationName}", + "EditDownloadClientImplementation": "Edit Download Client - {implementationName}", "EditIndexer": "Edit Indexer", + "EditIndexerImplementation": "Edit Indexer - {implementationName}", + "EditIndexerProxyImplementation": "Edit Indexer Proxy - {implementationName}", "EditSelectedDownloadClients": "Edit Selected Download Clients", "EditSelectedIndexers": "Edit Selected Indexers", "EditSyncProfile": "Edit Sync Profile",