Explorar o código

allow channel items in collections and playlists

Luke Pulverenti %!s(int64=8) %!d(string=hai) anos
pai
achega
951e2b6de3

+ 8 - 18
MediaBrowser.Controller/Entities/Folder.cs

@@ -1149,29 +1149,19 @@ namespace MediaBrowser.Controller.Entities
             return LinkedChildren
                 .Select(i =>
                 {
-                    var requiresPostFilter = true;
-
-                    if (!string.IsNullOrWhiteSpace(i.Path))
-                    {
-                        requiresPostFilter = false;
-
-                        if (!locations.Any(l => FileSystem.ContainsSubPath(l, i.Path)))
-                        {
-                            return null;
-                        }
-                    }
-
                     var child = GetLinkedChild(i);
 
-                    if (requiresPostFilter && child != null)
+                    if (child != null)
                     {
-                        if (string.IsNullOrWhiteSpace(child.Path))
+                        var childLocationType = child.LocationType;
+                        if (childLocationType == LocationType.Remote || childLocationType == LocationType.Virtual)
                         {
-                            Logger.Debug("Found LinkedChild with null path: {0}", child.Name);
-                            return child;
+                            if (!child.IsVisibleStandalone(user))
+                            {
+                                return null;
+                            }
                         }
-
-                        if (!locations.Any(l => FileSystem.ContainsSubPath(l, child.Path)))
+                        else if (childLocationType == LocationType.FileSystem && !locations.Any(l => FileSystem.ContainsSubPath(l, child.Path)))
                         {
                             return null;
                         }

+ 1 - 5
MediaBrowser.Providers/Movies/GenericMovieDbInfo.cs

@@ -126,11 +126,7 @@ namespace MediaBrowser.Providers.Movies
 
             movie.Name = movieData.GetTitle() ?? movie.Name;
 
-            var hasOriginalTitle = movie as IHasOriginalTitle;
-            if (hasOriginalTitle != null)
-            {
-                hasOriginalTitle.OriginalTitle = movieData.GetOriginalTitle();
-            }
+            movie.OriginalTitle = movieData.GetOriginalTitle();
 
             // Bug in Mono: WebUtility.HtmlDecode should return null if the string is null but in Mono it generate an System.ArgumentNullException.
             movie.Overview = movieData.overview != null ? WebUtility.HtmlDecode(movieData.overview) : null;

+ 0 - 4
MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs

@@ -566,10 +566,6 @@ namespace MediaBrowser.Server.Implementations.LiveTv
             }
 
             var seriesId = info.SeriesId;
-            if (string.IsNullOrWhiteSpace(seriesId) && info.IsSeries)
-            {
-                seriesId = info.Name.GetMD5().ToString("N");
-            }
 
             if (!item.ParentId.Equals(channel.Id))
             {

+ 3 - 0
MediaBrowser.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunLiveStream.cs

@@ -58,6 +58,9 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.HdHomerun
 
             OpenedMediaSource.Path = _appHost.GetLocalApiUrl("localhost") + "/LiveTv/LiveStreamFiles/" + Path.GetFileNameWithoutExtension(tempFile) + "/stream.ts";
             OpenedMediaSource.Protocol = MediaProtocol.Http;
+            OpenedMediaSource.SupportsDirectPlay = false;
+            OpenedMediaSource.SupportsDirectStream = true;
+            OpenedMediaSource.SupportsTranscoding = true;
 
             await taskCompletionSource.Task.ConfigureAwait(false);