diff --git a/src/NzbDrone.Api/Series/MovieResource.cs b/src/NzbDrone.Api/Series/MovieResource.cs index 5e263573d7..ed6976e6f0 100644 --- a/src/NzbDrone.Api/Series/MovieResource.cs +++ b/src/NzbDrone.Api/Series/MovieResource.cs @@ -45,6 +45,7 @@ public MovieResource() public bool Monitored { get; set; } public MovieStatusType MinimumAvailability { get; set; } public bool IsAvailable { get; set; } + public string FolderName { get; set; } public int Runtime { get; set; } public DateTime? LastInfoSync { get; set; } @@ -135,6 +136,7 @@ public static MovieResource ToResource(this Core.Tv.Movie model) MinimumAvailability = model.MinimumAvailability, IsAvailable = model.IsAvailable(), + FolderName = model.FolderName(), SizeOnDisk = size, diff --git a/src/NzbDrone.Core/Tv/Movie.cs b/src/NzbDrone.Core/Tv/Movie.cs index 329752a93c..e19a8911da 100644 --- a/src/NzbDrone.Core/Tv/Movie.cs +++ b/src/NzbDrone.Core/Tv/Movie.cs @@ -5,6 +5,7 @@ using NzbDrone.Core.Datastore; using NzbDrone.Core.Profiles; using NzbDrone.Core.MediaFiles; +using System.IO; namespace NzbDrone.Core.Tv { @@ -54,6 +55,11 @@ public Movie() public bool HasFile => MovieFileId > 0; + public string FolderName() + { + return new DirectoryInfo(Path).Name; + } + public bool IsAvailable(int delay = 0) { //the below line is what was used before delay was implemented, could still be used for cases when delay==0 diff --git a/src/UI/Movies/Editor/MovieEditorFooterView.js b/src/UI/Movies/Editor/MovieEditorFooterView.js index 5256ddb508..3a513f35bb 100644 --- a/src/UI/Movies/Editor/MovieEditorFooterView.js +++ b/src/UI/Movies/Editor/MovieEditorFooterView.js @@ -137,8 +137,7 @@ module.exports = Marionette.ItemView.extend({ if (rootFolder !== 'noChange') { var rootFolderPath = RootFolders.get(parseInt(rootFolder, 10)); - var currentPath = m.get('path'); - var folderName = currentPath.substring(currentPath.lastIndexOf('\\')+1); + var folderName = m.get('folderName'); m.set('path', rootFolderPath.get('path')+ folderName); } }