aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs')
-rw-r--r--MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs160
1 files changed, 22 insertions, 138 deletions
diff --git a/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs b/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
index d472d4812..c9810b042 100644
--- a/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
+++ b/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
@@ -133,7 +133,7 @@ namespace MediaBrowser.LocalMetadata.Savers
/// <param name="xmlTagsUsed">The XML tags used.</param>
public static void Save(StringBuilder xml, string path, List<string> xmlTagsUsed, IServerConfigurationManager config, IFileSystem fileSystem)
{
- if (fileSystem.FileExists(path))
+ if (fileSystem.FileExists(path))
{
var position = xml.ToString().LastIndexOf("</", StringComparison.OrdinalIgnoreCase);
xml.Insert(position, GetCustomTags(path, xmlTagsUsed));
@@ -145,7 +145,7 @@ namespace MediaBrowser.LocalMetadata.Savers
//Add the new node to the document.
xmlDocument.InsertBefore(xmlDocument.CreateXmlDeclaration("1.0", "UTF-8", "yes"), xmlDocument.DocumentElement);
- fileSystem.CreateDirectory(Path.GetDirectoryName(path));
+ fileSystem.CreateDirectory(Path.GetDirectoryName(path));
var wasHidden = false;
@@ -350,21 +350,17 @@ namespace MediaBrowser.LocalMetadata.Savers
}
}
- var hasProductionLocations = item as IHasProductionLocations;
- if (hasProductionLocations != null)
- {
- if (hasProductionLocations.ProductionLocations.Count > 0)
- {
- builder.Append("<Countries>");
+ //if (hasProductionLocations.ProductionLocations.Count > 0)
+ //{
+ // builder.Append("<Countries>");
- foreach (var name in hasProductionLocations.ProductionLocations)
- {
- builder.Append("<Country>" + SecurityElement.Escape(name) + "</Country>");
- }
+ // foreach (var name in hasProductionLocations.ProductionLocations)
+ // {
+ // builder.Append("<Country>" + SecurityElement.Escape(name) + "</Country>");
+ // }
- builder.Append("</Countries>");
- }
- }
+ // builder.Append("</Countries>");
+ //}
var hasDisplayOrder = item as IHasDisplayOrder;
if (hasDisplayOrder != null && !string.IsNullOrEmpty(hasDisplayOrder.DisplayOrder))
@@ -445,135 +441,23 @@ namespace MediaBrowser.LocalMetadata.Savers
builder.Append("<RunningTime>" + Convert.ToInt32(timespan.TotalMinutes).ToString(UsCulture) + "</RunningTime>");
}
- var imdb = item.GetProviderId(MetadataProviders.Imdb);
-
- if (!string.IsNullOrEmpty(imdb))
+ if (item.ProviderIds != null)
{
- builder.Append("<IMDB>" + SecurityElement.Escape(imdb) + "</IMDB>");
- }
-
- var tmdb = item.GetProviderId(MetadataProviders.Tmdb);
-
- if (!string.IsNullOrEmpty(tmdb))
- {
- builder.Append("<TMDbId>" + SecurityElement.Escape(tmdb) + "</TMDbId>");
- }
-
- if (!(item is Series))
- {
- var tvdb = item.GetProviderId(MetadataProviders.Tvdb);
-
- if (!string.IsNullOrEmpty(tvdb))
+ foreach (var providerKey in item.ProviderIds.Keys)
{
- builder.Append("<TvDbId>" + SecurityElement.Escape(tvdb) + "</TvDbId>");
+ var providerId = item.ProviderIds[providerKey];
+ if (!string.IsNullOrEmpty(providerId))
+ {
+ builder.Append(string.Format("<{0}>{1}</{0}>", providerKey + "Id", SecurityElement.Escape(providerId)));
+ }
}
}
- var externalId = item.GetProviderId(MetadataProviders.Tvcom);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<TVcomId>" + SecurityElement.Escape(externalId) + "</TVcomId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.RottenTomatoes);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<RottenTomatoesId>" + SecurityElement.Escape(externalId) + "</RottenTomatoesId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.Zap2It);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<Zap2ItId>" + SecurityElement.Escape(externalId) + "</Zap2ItId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.MusicBrainzAlbum);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<MusicBrainzAlbumId>" + SecurityElement.Escape(externalId) + "</MusicBrainzAlbumId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.MusicBrainzAlbumArtist);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<MusicBrainzAlbumArtistId>" + SecurityElement.Escape(externalId) + "</MusicBrainzAlbumArtistId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.MusicBrainzArtist);
-
- if (!string.IsNullOrEmpty(externalId))
+ if (!string.IsNullOrWhiteSpace(item.Tagline))
{
- builder.Append("<MusicBrainzArtistId>" + SecurityElement.Escape(externalId) + "</MusicBrainzArtistId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.MusicBrainzReleaseGroup);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<MusicBrainzReleaseGroupId>" + SecurityElement.Escape(externalId) + "</MusicBrainzReleaseGroupId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.Gamesdb);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<GamesDbId>" + SecurityElement.Escape(externalId) + "</GamesDbId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.TmdbCollection);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<TMDbCollectionId>" + SecurityElement.Escape(externalId) + "</TMDbCollectionId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.AudioDbArtist);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<AudioDbArtistId>" + SecurityElement.Escape(externalId) + "</AudioDbArtistId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.AudioDbAlbum);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<AudioDbAlbumId>" + SecurityElement.Escape(externalId) + "</AudioDbAlbumId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.TvRage);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<TVRageId>" + SecurityElement.Escape(externalId) + "</TVRageId>");
- }
-
- externalId = item.GetProviderId(MetadataProviders.TvMaze);
-
- if (!string.IsNullOrEmpty(externalId))
- {
- builder.Append("<TvMazeId>" + SecurityElement.Escape(externalId) + "</TvMazeId>");
- }
-
- var hasTagline = item as IHasTaglines;
- if (hasTagline != null)
- {
- if (hasTagline.Taglines.Count > 0)
- {
- builder.Append("<Taglines>");
-
- foreach (var tagline in hasTagline.Taglines)
- {
- builder.Append("<Tagline>" + SecurityElement.Escape(tagline) + "</Tagline>");
- }
-
- builder.Append("</Taglines>");
- }
+ builder.Append("<Taglines>");
+ builder.Append("<Tagline>" + SecurityElement.Escape(item.Tagline) + "</Tagline>");
+ builder.Append("</Taglines>");
}
if (item.Genres.Count > 0)