From 44493dca1d597f3cf9f8cf5db8d0ddda082c65e0 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 16 Jul 2013 13:18:32 -0400 Subject: [PATCH] add tvdb and games db to xml savers --- MediaBrowser.Controller/Dto/DtoBuilder.cs | 19 +++++++----------- MediaBrowser.Controller/Entities/BaseItem.cs | 7 ++++++- MediaBrowser.Controller/Entities/Folder.cs | 6 ++++++ .../Providers/BaseItemXmlParser.cs | 16 +++++++++++++++ .../Savers/XmlSaverHelpers.cs | 20 ++++++++++++++++++- MediaBrowser.WebDashboard/ApiClient.js | 5 ++--- MediaBrowser.WebDashboard/packages.config | 2 +- 7 files changed, 57 insertions(+), 18 deletions(-) diff --git a/MediaBrowser.Controller/Dto/DtoBuilder.cs b/MediaBrowser.Controller/Dto/DtoBuilder.cs index 7086b2c4fa..16b708a58e 100644 --- a/MediaBrowser.Controller/Dto/DtoBuilder.cs +++ b/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()); + + dto.UserData = GetUserItemDataDto(userData); + + if (item.IsFolder) { - var userData = _userDataRepository.GetUserData(user.Id, item.GetUserDataKey()); - - dto.UserData = GetUserItemDataDto(userData); - - if (item.IsFolder) - { - dto.UserData.Played = dto.PlayedPercentage.HasValue && dto.PlayedPercentage.Value >= 100; - } + dto.UserData.Played = dto.PlayedPercentage.HasValue && dto.PlayedPercentage.Value >= 100; } } diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index c89a7f0b2a..c0d681de20 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/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; diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index e46ec8d3b4..d1f2f87edb 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/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 diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs index 4fbda10256..953c99fbb1 100644 --- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs +++ b/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)) diff --git a/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs b/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs index 3683e00ade..5756e304dd 100644 --- a/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs +++ b/MediaBrowser.Providers/Savers/XmlSaverHelpers.cs @@ -73,7 +73,8 @@ namespace MediaBrowser.Providers.Savers "LockData", "Trailer", "CriticRating", - "CriticRatingSummary" + "CriticRatingSummary", + "GamesDbId" }); var position = xml.ToString().LastIndexOf("" + SecurityElement.Escape(tmdb) + ""); } + if (!(item is Series)) + { + var tvdb = item.GetProviderId(MetadataProviders.Tvdb); + + if (!string.IsNullOrEmpty(tvdb)) + { + builder.Append("" + SecurityElement.Escape(tvdb) + ""); + } + } + var tvcom = item.GetProviderId(MetadataProviders.Tvcom); if (!string.IsNullOrEmpty(tvcom)) @@ -290,6 +301,13 @@ namespace MediaBrowser.Providers.Savers builder.Append("" + SecurityElement.Escape(mbz) + ""); } + var gamesdb = item.GetProviderId(MetadataProviders.Gamesdb); + + if (!string.IsNullOrEmpty(gamesdb)) + { + builder.Append("" + SecurityElement.Escape(gamesdb) + ""); + } + var tmdbCollection = item.GetProviderId(MetadataProviders.TmdbCollection); if (!string.IsNullOrEmpty(tmdbCollection)) diff --git a/MediaBrowser.WebDashboard/ApiClient.js b/MediaBrowser.WebDashboard/ApiClient.js index 6228c9106b..7a2fae3e93 100644 --- a/MediaBrowser.WebDashboard/ApiClient.js +++ b/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"); diff --git a/MediaBrowser.WebDashboard/packages.config b/MediaBrowser.WebDashboard/packages.config index cdfd8ba8f9..e92bbf4705 100644 --- a/MediaBrowser.WebDashboard/packages.config +++ b/MediaBrowser.WebDashboard/packages.config @@ -1,6 +1,6 @@  - + \ No newline at end of file