|
@@ -183,9 +183,18 @@ namespace MediaBrowser.XbmcMetadata.Savers
|
|
|
/// <returns><c>true</c> if [is enabled for] [the specified item]; otherwise, <c>false</c>.</returns>
|
|
|
public abstract bool IsEnabledFor(IHasMetadata item, ItemUpdateType updateType);
|
|
|
|
|
|
- protected virtual List<string> GetTagsUsed()
|
|
|
+ protected virtual List<string> GetTagsUsed(IHasMetadata item)
|
|
|
{
|
|
|
- return new List<string>();
|
|
|
+ var list = new List<string>();
|
|
|
+ foreach (var providerKey in item.ProviderIds.Keys)
|
|
|
+ {
|
|
|
+ var providerIdTagName = GetTagForProviderKey(providerKey);
|
|
|
+ if (!CommonTags.ContainsKey(providerIdTagName))
|
|
|
+ {
|
|
|
+ list.Add(providerIdTagName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return list;
|
|
|
}
|
|
|
|
|
|
public void Save(IHasMetadata item, CancellationToken cancellationToken)
|
|
@@ -271,7 +280,7 @@ namespace MediaBrowser.XbmcMetadata.Savers
|
|
|
AddMediaInfo(hasMediaSources, writer);
|
|
|
}
|
|
|
|
|
|
- var tagsUsed = GetTagsUsed();
|
|
|
+ var tagsUsed = GetTagsUsed(item);
|
|
|
|
|
|
try
|
|
|
{
|
|
@@ -834,7 +843,8 @@ namespace MediaBrowser.XbmcMetadata.Savers
|
|
|
var providerId = item.ProviderIds[providerKey];
|
|
|
if (!string.IsNullOrEmpty(providerId) && !writtenProviderIds.Contains(providerKey))
|
|
|
{
|
|
|
- writer.WriteElementString(providerKey.ToLower() + "id", providerId);
|
|
|
+ writer.WriteElementString(GetTagForProviderKey(providerKey), providerId);
|
|
|
+ writtenProviderIds.Add(providerKey);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1093,5 +1103,10 @@ namespace MediaBrowser.XbmcMetadata.Savers
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ private static string GetTagForProviderKey(string providerKey)
|
|
|
+ {
|
|
|
+ return providerKey.ToLower() + "id";
|
|
|
+ }
|
|
|
}
|
|
|
}
|