Sfoglia il codice sorgente

update recording save path

Luke Pulverenti 9 anni fa
parent
commit
6d206bb9dc

+ 10 - 3
MediaBrowser.Controller/Entities/Movies/Movie.cs

@@ -100,16 +100,23 @@ namespace MediaBrowser.Controller.Entities.Movies
         /// <returns>System.String.</returns>
         /// <returns>System.String.</returns>
         protected override string CreateUserDataKey()
         protected override string CreateUserDataKey()
         {
         {
-            var key = this.GetProviderId(MetadataProviders.Tmdb);
+            var key = GetMovieUserDataKey(this);
 
 
             if (string.IsNullOrWhiteSpace(key))
             if (string.IsNullOrWhiteSpace(key))
             {
             {
-                key = this.GetProviderId(MetadataProviders.Imdb);
+                key = base.CreateUserDataKey();
             }
             }
 
 
+            return key;
+        }
+
+        public static string GetMovieUserDataKey(BaseItem movie)
+        {
+            var key = movie.GetProviderId(MetadataProviders.Tmdb);
+
             if (string.IsNullOrWhiteSpace(key))
             if (string.IsNullOrWhiteSpace(key))
             {
             {
-                key = base.CreateUserDataKey();
+                key = movie.GetProviderId(MetadataProviders.Imdb);
             }
             }
 
 
             return key;
             return key;

+ 10 - 0
MediaBrowser.Controller/LiveTv/LiveTvProgram.cs

@@ -1,4 +1,5 @@
 using MediaBrowser.Controller.Entities;
 using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities.Movies;
 using MediaBrowser.Controller.Providers;
 using MediaBrowser.Controller.Providers;
 using MediaBrowser.Model.Configuration;
 using MediaBrowser.Model.Configuration;
 using MediaBrowser.Model.LiveTv;
 using MediaBrowser.Model.LiveTv;
@@ -17,6 +18,15 @@ namespace MediaBrowser.Controller.LiveTv
         /// <returns>System.String.</returns>
         /// <returns>System.String.</returns>
         protected override string CreateUserDataKey()
         protected override string CreateUserDataKey()
         {
         {
+            if (IsMovie)
+            {
+                var key = Movie.GetMovieUserDataKey(this);
+
+                if (!string.IsNullOrWhiteSpace(key))
+                {
+                    return key;
+                }
+            }
             return GetClientTypeName() + "-" + Name;
             return GetClientTypeName() + "-" + Name;
         }
         }
 
 

+ 11 - 0
MediaBrowser.Controller/LiveTv/LiveTvVideoRecording.cs

@@ -1,4 +1,5 @@
 using MediaBrowser.Controller.Entities;
 using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities.Movies;
 using MediaBrowser.Model.Configuration;
 using MediaBrowser.Model.Configuration;
 using MediaBrowser.Model.Dto;
 using MediaBrowser.Model.Dto;
 using MediaBrowser.Model.Entities;
 using MediaBrowser.Model.Entities;
@@ -40,6 +41,16 @@ namespace MediaBrowser.Controller.LiveTv
         /// <returns>System.String.</returns>
         /// <returns>System.String.</returns>
         protected override string CreateUserDataKey()
         protected override string CreateUserDataKey()
         {
         {
+            if (IsMovie)
+            {
+                var key = Movie.GetMovieUserDataKey(this);
+
+                if (!string.IsNullOrWhiteSpace(key))
+                {
+                    return key;
+                }
+            }
+            
             var name = GetClientTypeName();
             var name = GetClientTypeName();
 
 
             if (!string.IsNullOrEmpty(ProgramId))
             if (!string.IsNullOrEmpty(ProgramId))

+ 13 - 0
MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs

@@ -495,10 +495,23 @@ namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
 
 
             var info = GetProgramInfoFromCache(timer.ChannelId, timer.ProgramId);
             var info = GetProgramInfoFromCache(timer.ChannelId, timer.ProgramId);
             var recordPath = RecordingPath;
             var recordPath = RecordingPath;
+
             if (info.IsMovie)
             if (info.IsMovie)
             {
             {
                 recordPath = Path.Combine(recordPath, "Movies", _fileSystem.GetValidFilename(info.Name));
                 recordPath = Path.Combine(recordPath, "Movies", _fileSystem.GetValidFilename(info.Name));
             }
             }
+            else if (info.IsSeries)
+            {
+                recordPath = Path.Combine(recordPath, "Series", _fileSystem.GetValidFilename(info.Name));
+            }
+            else if (info.IsKids)
+            {
+                recordPath = Path.Combine(recordPath, "Kids", _fileSystem.GetValidFilename(info.Name));
+            }
+            else if (info.IsSports)
+            {
+                recordPath = Path.Combine(recordPath, "Sports", _fileSystem.GetValidFilename(info.Name));
+            }
             else
             else
             {
             {
                 recordPath = Path.Combine(recordPath, "TV", _fileSystem.GetValidFilename(info.Name));
                 recordPath = Path.Combine(recordPath, "TV", _fileSystem.GetValidFilename(info.Name));

+ 23 - 15
MediaBrowser.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs

@@ -1,6 +1,7 @@
 using MediaBrowser.Common.Extensions;
 using MediaBrowser.Common.Extensions;
 using MediaBrowser.Controller.LiveTv;
 using MediaBrowser.Controller.LiveTv;
 using System;
 using System;
+using System.Globalization;
 
 
 namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
 namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
 {
 {
@@ -36,26 +37,33 @@ namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
         {
         {
             if (info == null)
             if (info == null)
             {
             {
-                return (timer.ProgramId + ".ts");
+                return timer.ProgramId + ".ts";
             }
             }
-            var fancyName = info.Name;
-            if (info.ProductionYear != null)
-            {
-                fancyName += "_(" + info.ProductionYear + ")";
-            }
-            if (info.IsSeries && !string.IsNullOrWhiteSpace(info.EpisodeTitle))
-            {
-                fancyName += "_" + info.EpisodeTitle.Replace("Season: ", "S").Replace(" Episode: ", "E");
-            }
-            if (info.IsHD ?? false)
+
+            var name = info.Name;
+
+            if (info.IsSeries)
             {
             {
-                fancyName += "_HD";
+                if (info.SeasonNumber.HasValue && info.EpisodeNumber.HasValue)
+                {
+                    name += string.Format(" S{0}E{1}", info.SeasonNumber.Value.ToString("00", CultureInfo.InvariantCulture), info.EpisodeNumber.Value.ToString("00", CultureInfo.InvariantCulture));
+                }
+                else if (info.OriginalAirDate.HasValue)
+                {
+                    name += " " + info.OriginalAirDate.Value.ToString("yyyy-MM-dd");
+                }
+                else if (!string.IsNullOrWhiteSpace(info.EpisodeTitle))
+                {
+                    name += " " + info.EpisodeTitle;
+                }
             }
             }
-            if (info.OriginalAirDate != null)
+
+            else if (info.ProductionYear != null)
             {
             {
-                fancyName += "_" + info.OriginalAirDate.Value.ToString("yyyy-MM-dd");
+                name += " (" + info.ProductionYear + ")";
             }
             }
-            return fancyName + ".ts";
+
+            return name + ".ts";
         }
         }
     }
     }
 }
 }