diff --git a/frontend/src/Indexer/Indexer.ts b/frontend/src/Indexer/Indexer.ts index 0f3ca88f4..07db30d8d 100644 --- a/frontend/src/Indexer/Indexer.ts +++ b/frontend/src/Indexer/Indexer.ts @@ -40,6 +40,10 @@ interface Indexer extends ModelBase { added: Date; enable: boolean; redirect: boolean; + supportsRss: boolean; + supportsSearch: boolean; + supportsRedirect: boolean; + supportsPagination: boolean; protocol: string; privacy: string; priority: number; @@ -49,6 +53,7 @@ interface Indexer extends ModelBase { status: IndexerStatus; capabilities: IndexerCapabilities; indexerUrls: string[]; + legacyUrls: string[]; } export default Indexer; diff --git a/frontend/src/Store/Actions/Settings/applications.js b/frontend/src/Store/Actions/Settings/applications.js index 9f7111960..3db520525 100644 --- a/frontend/src/Store/Actions/Settings/applications.js +++ b/frontend/src/Store/Actions/Settings/applications.js @@ -117,10 +117,7 @@ export default { [SELECT_APPLICATION_SCHEMA]: (state, { payload }) => { return selectProviderSchema(state, section, payload, (selectedSchema) => { - selectedSchema.onGrab = selectedSchema.supportsOnGrab; - selectedSchema.onDownload = selectedSchema.supportsOnDownload; - selectedSchema.onUpgrade = selectedSchema.supportsOnUpgrade; - selectedSchema.onRename = selectedSchema.supportsOnRename; + selectedSchema.name = selectedSchema.implementationName; return selectedSchema; }); diff --git a/frontend/src/Store/Actions/Settings/downloadClients.js b/frontend/src/Store/Actions/Settings/downloadClients.js index b4513e7c1..990b7008e 100644 --- a/frontend/src/Store/Actions/Settings/downloadClients.js +++ b/frontend/src/Store/Actions/Settings/downloadClients.js @@ -142,6 +142,7 @@ export default { [SELECT_DOWNLOAD_CLIENT_SCHEMA]: (state, { payload }) => { return selectProviderSchema(state, section, payload, (selectedSchema) => { + selectedSchema.name = selectedSchema.implementationName; selectedSchema.enable = true; return selectedSchema; diff --git a/frontend/src/Store/Actions/Settings/indexerProxies.js b/frontend/src/Store/Actions/Settings/indexerProxies.js index 20edb2099..6c07540be 100644 --- a/frontend/src/Store/Actions/Settings/indexerProxies.js +++ b/frontend/src/Store/Actions/Settings/indexerProxies.js @@ -104,6 +104,8 @@ export default { [SELECT_INDEXER_PROXY_SCHEMA]: (state, { payload }) => { return selectProviderSchema(state, section, payload, (selectedSchema) => { + selectedSchema.name = selectedSchema.implementationName; + return selectedSchema; }); } diff --git a/frontend/src/Store/Actions/Settings/notifications.js b/frontend/src/Store/Actions/Settings/notifications.js index de927ba4f..28346e9a6 100644 --- a/frontend/src/Store/Actions/Settings/notifications.js +++ b/frontend/src/Store/Actions/Settings/notifications.js @@ -104,6 +104,7 @@ export default { [SELECT_NOTIFICATION_SCHEMA]: (state, { payload }) => { return selectProviderSchema(state, section, payload, (selectedSchema) => { + selectedSchema.name = selectedSchema.implementationName; selectedSchema.onGrab = selectedSchema.supportsOnGrab; selectedSchema.onApplicationUpdate = selectedSchema.supportsOnApplicationUpdate; diff --git a/frontend/src/typings/Notification.ts b/frontend/src/typings/Notification.ts index e2b5ad7eb..63ea906c4 100644 --- a/frontend/src/typings/Notification.ts +++ b/frontend/src/typings/Notification.ts @@ -13,6 +13,15 @@ export interface Field { interface Notification extends ModelBase { enable: boolean; name: string; + onGrab: boolean; + onHealthIssue: boolean; + onHealthRestored: boolean; + includeHealthWarnings: boolean; + onApplicationUpdate: boolean; + supportsOnGrab: boolean; + supportsOnHealthIssue: boolean; + supportsOnHealthRestored: boolean; + supportsOnApplicationUpdate: boolean; fields: Field[]; implementationName: string; implementation: string; diff --git a/src/NzbDrone.Core/Applications/ApplicationBase.cs b/src/NzbDrone.Core/Applications/ApplicationBase.cs index f516fddf1..9cba791e6 100644 --- a/src/NzbDrone.Core/Applications/ApplicationBase.cs +++ b/src/NzbDrone.Core/Applications/ApplicationBase.cs @@ -46,7 +46,6 @@ namespace NzbDrone.Core.Applications yield return new ApplicationDefinition { - Name = GetType().Name, SyncLevel = ApplicationSyncLevel.FullSync, Implementation = GetType().Name, Settings = config diff --git a/src/NzbDrone.Core/Download/DownloadClientBase.cs b/src/NzbDrone.Core/Download/DownloadClientBase.cs index 89fce8f3c..7659c32a6 100644 --- a/src/NzbDrone.Core/Download/DownloadClientBase.cs +++ b/src/NzbDrone.Core/Download/DownloadClientBase.cs @@ -27,20 +27,7 @@ namespace NzbDrone.Core.Download public virtual ProviderMessage Message => null; - public IEnumerable DefaultDefinitions - { - get - { - var config = (IProviderConfig)new TSettings(); - - yield return new DownloadClientDefinition - { - Name = GetType().Name, - Implementation = GetType().Name, - Settings = config - }; - } - } + public IEnumerable DefaultDefinitions => new List(); public ProviderDefinition Definition { get; set; } diff --git a/src/NzbDrone.Core/IndexerProxies/IndexerProxyBase.cs b/src/NzbDrone.Core/IndexerProxies/IndexerProxyBase.cs index dc3963875..1efe8437c 100644 --- a/src/NzbDrone.Core/IndexerProxies/IndexerProxyBase.cs +++ b/src/NzbDrone.Core/IndexerProxies/IndexerProxyBase.cs @@ -14,20 +14,7 @@ namespace NzbDrone.Core.IndexerProxies public Type ConfigContract => typeof(TSettings); - public IEnumerable DefaultDefinitions - { - get - { - var config = (IProviderConfig)new TSettings(); - - yield return new IndexerProxyDefinition - { - Name = GetType().Name, - Implementation = GetType().Name, - Settings = config - }; - } - } + public IEnumerable DefaultDefinitions => new List(); public ProviderDefinition Definition { get; set; } public abstract ValidationResult Test();