From a6d0dddaf7fa51f334e32d4fd49486d06fb6ba65 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Thu, 14 Nov 2019 08:32:54 -0800 Subject: [PATCH] Fixed: Trying to add a series when root folders hadn't populated Fixed #3387 --- .../Form/RootFolderSelectInputConnector.js | 21 +++++++++++++++++++ .../SeriesFolderAsRootFolderValidator.cs | 3 +++ 2 files changed, 24 insertions(+) diff --git a/frontend/src/Components/Form/RootFolderSelectInputConnector.js b/frontend/src/Components/Form/RootFolderSelectInputConnector.js index b76501dc1..ea0ba535b 100644 --- a/frontend/src/Components/Form/RootFolderSelectInputConnector.js +++ b/frontend/src/Components/Form/RootFolderSelectInputConnector.js @@ -95,6 +95,27 @@ class RootFolderSelectInputConnector extends Component { } } + componentDidUpdate(prevProps) { + const { + name, + value, + values, + onChange + } = this.props; + + if (prevProps.values === values) { + return; + } + + if (!value && values.length && values.some((v) => !!v.key && v.key !== ADD_NEW_KEY)) { + const defaultValue = values[0]; + + if (defaultValue.key !== ADD_NEW_KEY) { + onChange({ name, value: defaultValue.key }); + } + } + } + // // Listeners diff --git a/src/Sonarr.Api.V3/Series/SeriesFolderAsRootFolderValidator.cs b/src/Sonarr.Api.V3/Series/SeriesFolderAsRootFolderValidator.cs index 3cf8e020b..7d433e756 100644 --- a/src/Sonarr.Api.V3/Series/SeriesFolderAsRootFolderValidator.cs +++ b/src/Sonarr.Api.V3/Series/SeriesFolderAsRootFolderValidator.cs @@ -25,6 +25,9 @@ namespace Sonarr.Api.V3.Series if (seriesResource == null) return true; var rootFolderPath = context.PropertyValue.ToString(); + + if (rootFolderPath.IsNullOrWhiteSpace()) return true; + var rootFolder = new DirectoryInfo(rootFolderPath).Name; var series = seriesResource.ToModel(); var seriesFolder = _fileNameBuilder.GetSeriesFolder(series);