2
0
Эх сурвалжийг харах

added recording progress bars

Luke Pulverenti 11 жил өмнө
parent
commit
e9a5bb699e

+ 0 - 1
MediaBrowser.Api/UserLibrary/GameGenresService.cs

@@ -1,6 +1,5 @@
 using MediaBrowser.Controller.Dto;
 using MediaBrowser.Controller.Entities;
-using MediaBrowser.Controller.Entities.Audio;
 using MediaBrowser.Controller.Library;
 using MediaBrowser.Controller.Persistence;
 using MediaBrowser.Model.Dto;

+ 1 - 23
MediaBrowser.Controller/Entities/BaseItem.cs

@@ -23,7 +23,7 @@ namespace MediaBrowser.Controller.Entities
     /// <summary>
     /// Class BaseItem
     /// </summary>
-    public abstract class BaseItem : IHasProviderIds, IBaseItem, IHasImages, IHasUserData
+    public abstract class BaseItem : IHasProviderIds, ILibraryItem, IHasImages, IHasUserData
     {
         protected BaseItem()
         {
@@ -504,28 +504,6 @@ namespace MediaBrowser.Controller.Entities
         /// <value>The people.</value>
         public List<PersonInfo> People { get; set; }
 
-        /// <summary>
-        /// Override this if you need to combine/collapse person information
-        /// </summary>
-        /// <value>All people.</value>
-        [IgnoreDataMember]
-        public virtual IEnumerable<PersonInfo> AllPeople
-        {
-            get { return People; }
-        }
-
-        [IgnoreDataMember]
-        public virtual IEnumerable<string> AllStudios
-        {
-            get { return Studios; }
-        }
-
-        [IgnoreDataMember]
-        public virtual IEnumerable<string> AllGenres
-        {
-            get { return Genres; }
-        }
-
         /// <summary>
         /// Gets or sets the studios.
         /// </summary>

+ 1 - 1
MediaBrowser.Controller/Entities/IBaseItem.cs → MediaBrowser.Controller/Entities/ILibraryItem.cs

@@ -5,7 +5,7 @@ namespace MediaBrowser.Controller.Entities
     /// <summary>
     /// Interface ILibraryItem
     /// </summary>
-    public interface IBaseItem
+    public interface ILibraryItem
     {
         /// <summary>
         /// Gets the name.

+ 0 - 42
MediaBrowser.Controller/Entities/TV/Episode.cs

@@ -122,48 +122,6 @@ namespace MediaBrowser.Controller.Entities.TV
             return base.GetUserDataKey();
         }
 
-        /// <summary>
-        /// Override this if you need to combine/collapse person information
-        /// </summary>
-        /// <value>All people.</value>
-        [IgnoreDataMember]
-        public override IEnumerable<PersonInfo> AllPeople
-        {
-            get
-            {
-                if (People == null) return Series != null ? Series.People : People;
-                return Series != null && Series.People != null ? People.Concat(Series.People) : base.AllPeople;
-            }
-        }
-
-        /// <summary>
-        /// Gets all genres.
-        /// </summary>
-        /// <value>All genres.</value>
-        [IgnoreDataMember]
-        public override IEnumerable<string> AllGenres
-        {
-            get
-            {
-                if (Genres == null) return Series != null ? Series.Genres : Genres;
-                return Series != null && Series.Genres != null ? Genres.Concat(Series.Genres) : base.AllGenres;
-            }
-        }
-
-        /// <summary>
-        /// Gets all studios.
-        /// </summary>
-        /// <value>All studios.</value>
-        [IgnoreDataMember]
-        public override IEnumerable<string> AllStudios
-        {
-            get
-            {
-                if (Studios == null) return Series != null ? Series.Studios : Studios;
-                return Series != null && Series.Studios != null ? Studios.Concat(Series.Studios) : base.AllStudios;
-            }
-        }
-
         /// <summary>
         /// Our rating comes from our series
         /// </summary>

+ 1 - 1
MediaBrowser.Controller/MediaBrowser.Controller.csproj

@@ -99,7 +99,7 @@
     <Compile Include="Entities\IHasTrailers.cs" />
     <Compile Include="Entities\IHasUserData.cs" />
     <Compile Include="Entities\IItemByName.cs" />
-    <Compile Include="Entities\IBaseItem.cs" />
+    <Compile Include="Entities\ILibraryItem.cs" />
     <Compile Include="Entities\ImageSourceInfo.cs" />
     <Compile Include="Entities\LinkedChild.cs" />
     <Compile Include="Entities\MusicVideo.cs" />

+ 7 - 1
MediaBrowser.Model/LiveTv/RecordingInfoDto.cs

@@ -107,7 +107,13 @@ namespace MediaBrowser.Model.LiveTv
         /// </summary>
         /// <value>The name of the status.</value>
         public string StatusName { get; set; }
-        
+
+        /// <summary>
+        /// Gets or sets the completion percentage.
+        /// </summary>
+        /// <value>The completion percentage.</value>
+        public double? CompletionPercentage { get; set; }
+
         /// <summary>
         /// Genre of the program.
         /// </summary>

+ 12 - 0
MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs

@@ -231,6 +231,18 @@ namespace MediaBrowser.Server.Implementations.LiveTv
                 }).ToList()
             };
 
+            if (info.Status == RecordingStatus.InProgress)
+            {
+                var now = DateTime.UtcNow.Ticks;
+                var start = info.StartDate.Ticks;
+                var end = info.EndDate.Ticks;
+
+                var pct = now - start;
+                pct /= end;
+                pct *= 100;
+                dto.CompletionPercentage = pct;
+            }
+
             var imageTag = GetImageTag(recording);
 
             if (imageTag.HasValue)