Procházet zdrojové kódy

resize library buttons

Luke Pulverenti před 11 roky
rodič
revize
6da117f606

+ 1 - 1
MediaBrowser.Api/SimilarItemsHelper.cs

@@ -45,7 +45,7 @@ namespace MediaBrowser.Api
         /// Fields to return within the items, in addition to basic information
         /// </summary>
         /// <value>The fields.</value>
-        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, OverviewHtml, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
+        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
         public string Fields { get; set; }
     }
 

+ 4 - 4
MediaBrowser.Api/TvShowsService.cs

@@ -45,7 +45,7 @@ namespace MediaBrowser.Api
         /// Fields to return within the items, in addition to basic information
         /// </summary>
         /// <value>The fields.</value>
-        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, OverviewHtml, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
+        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
         public string Fields { get; set; }
 
         [ApiMember(Name = "SeriesId", Description = "Optional. Filter by series id", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
@@ -87,7 +87,7 @@ namespace MediaBrowser.Api
         /// Fields to return within the items, in addition to basic information
         /// </summary>
         /// <value>The fields.</value>
-        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, OverviewHtml, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
+        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
         public string Fields { get; set; }
 
         /// <summary>
@@ -117,7 +117,7 @@ namespace MediaBrowser.Api
         /// Fields to return within the items, in addition to basic information
         /// </summary>
         /// <value>The fields.</value>
-        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, OverviewHtml, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
+        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
         public string Fields { get; set; }
 
         [ApiMember(Name = "Id", Description = "The series id", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "GET")]
@@ -153,7 +153,7 @@ namespace MediaBrowser.Api
         /// Fields to return within the items, in addition to basic information
         /// </summary>
         /// <value>The fields.</value>
-        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, OverviewHtml, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
+        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
         public string Fields { get; set; }
 
         [ApiMember(Name = "Id", Description = "The series id", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "GET")]

+ 1 - 1
MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs

@@ -48,7 +48,7 @@ namespace MediaBrowser.Api.UserLibrary
         /// Fields to return within the items, in addition to basic information
         /// </summary>
         /// <value>The fields.</value>
-        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, OverviewHtml, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines, TrailerUrls", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
+        [ApiMember(Name = "Fields", Description = "Optional. Specify additional fields of information to return in the output. This allows multiple, comma delimeted. Options: Budget, Chapters, CriticRatingSummary, DateCreated, Genres, HomePageUrl, IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio, Revenue, SortName, Studios, Taglines", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)]
         public string Fields { get; set; }
 
         /// <summary>

+ 0 - 5
MediaBrowser.Model/Querying/ItemFields.cs

@@ -96,11 +96,6 @@ namespace MediaBrowser.Model.Querying
         /// </summary>
         Overview,
 
-        /// <summary>
-        /// The overview HTML
-        /// </summary>
-        OverviewHtml,
-        
         /// <summary>
         /// The id of the item's parent
         /// </summary>

+ 1 - 1
MediaBrowser.Server.Implementations/Drawing/PercentPlayedDrawer.cs

@@ -5,7 +5,7 @@ namespace MediaBrowser.Server.Implementations.Drawing
 {
     public class PercentPlayedDrawer
     {
-        private const int IndicatorHeight = 10;
+        private const int IndicatorHeight = 8;
 
         public void Process(Graphics graphics, Size imageSize, double percent)
         {

+ 15 - 20
MediaBrowser.Server.Implementations/Dto/DtoService.cs

@@ -771,23 +771,11 @@ namespace MediaBrowser.Server.Implementations.Dto
             dto.Name = item.Name;
             dto.OfficialRating = item.OfficialRating;
 
-            var hasOverview = fields.Contains(ItemFields.Overview);
-            var hasHtmlOverview = fields.Contains(ItemFields.OverviewHtml);
-
-            if (hasOverview || hasHtmlOverview)
+            if (fields.Contains(ItemFields.Overview))
             {
                 var strippedOverview = string.IsNullOrEmpty(item.Overview) ? item.Overview : item.Overview.StripHtml();
 
-                if (hasOverview)
-                {
-                    dto.Overview = strippedOverview;
-                }
-
-                // Only supply the html version if there was actually html content
-                if (hasHtmlOverview)
-                {
-                    dto.OverviewHtml = item.Overview;
-                }
+                dto.Overview = strippedOverview;
             }
 
             // If there are no backdrops, indicate what parent has them in case the Ui wants to allow inheritance
@@ -1251,14 +1239,21 @@ namespace MediaBrowser.Server.Implementations.Dto
                 }
             }
 
-            var bitrate = i.TotalBitrate ??
-                info.MediaStreams.Where(m => m.Type != MediaStreamType.Subtitle && !string.Equals(m.Codec, "mjpeg", StringComparison.OrdinalIgnoreCase))
-                .Select(m => m.BitRate ?? 0)
-                .Sum();
+            try
+            {
+                var bitrate = i.TotalBitrate ??
+                    info.MediaStreams.Where(m => m.Type != MediaStreamType.Subtitle && !string.Equals(m.Codec, "mjpeg", StringComparison.OrdinalIgnoreCase))
+                    .Select(m => m.BitRate ?? 0)
+                    .Sum();
 
-            if (bitrate > 0)
+                if (bitrate > 0)
+                {
+                    info.Bitrate = bitrate;
+                }
+            }
+            catch (OverflowException ex)
             {
-                info.Bitrate = bitrate;
+                _logger.ErrorException("Error calculating total bitrate", ex);
             }
 
             return info;

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

@@ -520,6 +520,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv
         {
             var programChannelId = program.ExternalChannelId;
 
+            if (string.IsNullOrWhiteSpace(programChannelId)) return null;
+
             var internalProgramChannelId = _tvDtoService.GetInternalChannelId(program.ServiceName, programChannelId);
 
             return GetInternalChannel(internalProgramChannelId);

+ 2 - 1
MediaBrowser.Server.Implementations/Localization/Server/server.json

@@ -786,5 +786,6 @@
 	"HeaderReports": "Reports",
 	"HeaderMetadataManager": "Metadata Manager",
 	"HeaderPreferences": "Preferences",
-	"MessageLoadingChannels": "Loading channel content..."
+	"MessageLoadingChannels": "Loading channel content...",
+	"ButtonMarkRead": "Mark Read"
 }

+ 9 - 2
MediaBrowser.Server.Implementations/Udp/UdpServer.cs

@@ -270,9 +270,16 @@ namespace MediaBrowser.Server.Implementations.Udp
                 throw new ArgumentNullException("remoteEndPoint");
             }
 
-            await _udpClient.SendAsync(bytes, bytes.Length, _networkManager.Parse(remoteEndPoint)).ConfigureAwait(false);
+            try
+            {
+                await _udpClient.SendAsync(bytes, bytes.Length, _networkManager.Parse(remoteEndPoint)).ConfigureAwait(false);
 
-            _logger.Info("Udp message sent to {0}", remoteEndPoint);
+                _logger.Info("Udp message sent to {0}", remoteEndPoint);
+            }
+            catch (Exception ex)
+            {
+                _logger.ErrorException("Error sending message to {0}", ex, remoteEndPoint);
+            }
         }
     }