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

add tvdb and games db to xml savers

Luke Pulverenti 12 жил өмнө
parent
commit
44493dca1d

+ 6 - 11
MediaBrowser.Controller/Dto/DtoBuilder.cs

@@ -275,11 +275,9 @@ namespace MediaBrowser.Controller.Dto
                 dto.DisplayPreferencesId = ((Folder)item).GetDisplayPreferencesId(user.Id).ToString();
             }
 
-            var addUserData = fields.Contains(ItemFields.UserData);
-
             if (item.IsFolder)
             {
-                if (fields.Contains(ItemFields.ItemCounts) || addUserData)
+                if (fields.Contains(ItemFields.ItemCounts))
                 {
                     var folder = (Folder)item;
 
@@ -290,16 +288,13 @@ namespace MediaBrowser.Controller.Dto
                 }
             }
 
-            if (addUserData)
-            {
-                var userData = _userDataRepository.GetUserData(user.Id, item.GetUserDataKey());
+            var userData = _userDataRepository.GetUserData(user.Id, item.GetUserDataKey());
 
-                dto.UserData = GetUserItemDataDto(userData);
+            dto.UserData = GetUserItemDataDto(userData);
 
-                if (item.IsFolder)
-                {
-                    dto.UserData.Played = dto.PlayedPercentage.HasValue && dto.PlayedPercentage.Value >= 100;
-                }
+            if (item.IsFolder)
+            {
+                dto.UserData.Played = dto.PlayedPercentage.HasValue && dto.PlayedPercentage.Value >= 100;
             }
         }
 

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

@@ -992,8 +992,13 @@ namespace MediaBrowser.Controller.Entities
                 return true;
             }
 
-            var rating = CustomRating ?? OfficialRating;
+            var rating = CustomRating;
 
+            if (string.IsNullOrEmpty(rating))
+            {
+                rating = OfficialRating;
+            }
+            
             if (string.IsNullOrEmpty(rating))
             {
                 return !user.Configuration.BlockNotRated;

+ 6 - 0
MediaBrowser.Controller/Entities/Folder.cs

@@ -1,5 +1,6 @@
 using MediaBrowser.Common.Extensions;
 using MediaBrowser.Common.Progress;
+using MediaBrowser.Controller.Entities.TV;
 using MediaBrowser.Controller.IO;
 using MediaBrowser.Controller.Library;
 using MediaBrowser.Controller.Localization;
@@ -139,6 +140,11 @@ namespace MediaBrowser.Controller.Entities
         {
             get
             {
+                if (this is Series)
+                {
+                    return base.OfficialRating;
+                }
+
                 return !string.IsNullOrEmpty(base.OfficialRating) ? base.OfficialRating : "None";
             }
             set

+ 16 - 0
MediaBrowser.Controller/Providers/BaseItemXmlParser.cs

@@ -464,6 +464,22 @@ namespace MediaBrowser.Controller.Providers
                         break;
                     }
 
+                case "TvDbId":
+                    var tvdbId = reader.ReadElementContentAsString();
+                    if (!string.IsNullOrWhiteSpace(tvdbId))
+                    {
+                        item.SetProviderId(MetadataProviders.Tvdb, tvdbId);
+                    }
+                    break;
+
+                case "GamesDbId":
+                    var gamesdbId = reader.ReadElementContentAsString();
+                    if (!string.IsNullOrWhiteSpace(gamesdbId))
+                    {
+                        item.SetProviderId(MetadataProviders.Gamesdb, gamesdbId);
+                    }
+                    break;
+
                 case "MusicbrainzId":
                     var mbz = reader.ReadElementContentAsString();
                     if (!string.IsNullOrWhiteSpace(mbz))

+ 19 - 1
MediaBrowser.Providers/Savers/XmlSaverHelpers.cs

@@ -73,7 +73,8 @@ namespace MediaBrowser.Providers.Savers
                     "LockData",
                     "Trailer",
                     "CriticRating",
-                    "CriticRatingSummary"
+                    "CriticRatingSummary",
+                    "GamesDbId"
                 });
 
                 var position = xml.ToString().LastIndexOf("</", StringComparison.OrdinalIgnoreCase);
@@ -269,6 +270,16 @@ namespace MediaBrowser.Providers.Savers
                 builder.Append("<TMDbId>" + SecurityElement.Escape(tmdb) + "</TMDbId>");
             }
 
+            if (!(item is Series))
+            {
+                var tvdb = item.GetProviderId(MetadataProviders.Tvdb);
+
+                if (!string.IsNullOrEmpty(tvdb))
+                {
+                    builder.Append("<TvDbId>" + SecurityElement.Escape(tvdb) + "</TvDbId>");
+                }
+            }
+
             var tvcom = item.GetProviderId(MetadataProviders.Tvcom);
 
             if (!string.IsNullOrEmpty(tvcom))
@@ -290,6 +301,13 @@ namespace MediaBrowser.Providers.Savers
                 builder.Append("<MusicbrainzId>" + SecurityElement.Escape(mbz) + "</MusicbrainzId>");
             }
 
+            var gamesdb = item.GetProviderId(MetadataProviders.Gamesdb);
+
+            if (!string.IsNullOrEmpty(gamesdb))
+            {
+                builder.Append("<GamesDbId>" + SecurityElement.Escape(gamesdb) + "</GamesDbId>");
+            }
+
             var tmdbCollection = item.GetProviderId(MetadataProviders.TmdbCollection);
 
             if (!string.IsNullOrEmpty(tmdbCollection))

+ 2 - 3
MediaBrowser.WebDashboard/ApiClient.js

@@ -637,10 +637,9 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout) {
         };
 
         /**
-         * Instructs the server to perform a pending kernel reload or app restart.
-         * If a restart is not currently required, nothing will happen.
+         * Instructs the server to perform a restart.
          */
-        self.performPendingRestart = function () {
+        self.restartServer = function () {
 
             var url = self.getUrl("System/Restart");
 

+ 1 - 1
MediaBrowser.WebDashboard/packages.config

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="MediaBrowser.ApiClient.Javascript" version="3.0.144" targetFramework="net45" />
+  <package id="MediaBrowser.ApiClient.Javascript" version="3.0.145" targetFramework="net45" />
   <package id="ServiceStack.Common" version="3.9.54" targetFramework="net45" />
   <package id="ServiceStack.Text" version="3.9.54" targetFramework="net45" />
 </packages>