aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs')
-rw-r--r--MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs44
1 files changed, 30 insertions, 14 deletions
diff --git a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
index b6f8170729..4bee6e911f 100644
--- a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
+++ b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
@@ -95,7 +95,10 @@ namespace MediaBrowser.XbmcMetadata.Savers
"musicbrainzalbumid",
"musicbrainzreleasegroupid",
"tvdbid",
- "collectionitem"
+ "collectionitem",
+
+ "isuserfavorite",
+ "userrating"
}.ToDictionary(i => i, StringComparer.OrdinalIgnoreCase);
@@ -120,6 +123,14 @@ namespace MediaBrowser.XbmcMetadata.Savers
{
get
{
+ return SaverName;
+ }
+ }
+
+ public static string SaverName
+ {
+ get
+ {
return "Xbmc Nfo";
}
}
@@ -852,11 +863,6 @@ namespace MediaBrowser.XbmcMetadata.Savers
private static void AddUserData(BaseItem item, XmlWriter writer, IUserManager userManager, IUserDataManager userDataRepo, XbmcMetadataOptions options)
{
- if (!(item is Video))
- {
- return;
- }
-
var userId = options.UserId;
if (string.IsNullOrWhiteSpace(userId))
{
@@ -877,20 +883,30 @@ namespace MediaBrowser.XbmcMetadata.Savers
var userdata = userDataRepo.GetUserData(user.Id, item.GetUserDataKey());
- writer.WriteElementString("playcount", userdata.PlayCount.ToString(UsCulture));
- writer.WriteElementString("watched", userdata.Played.ToString().ToLower());
+ writer.WriteElementString("isuserfavorite", userdata.IsFavorite.ToString().ToLower());
- if (userdata.LastPlayedDate.HasValue)
+ if (userdata.Rating.HasValue)
{
- writer.WriteElementString("lastplayed", userdata.LastPlayedDate.Value.ToString("yyyy-MM-dd HH:mm:ss").ToLower());
+ writer.WriteElementString("userrating", userdata.Rating.Value.ToString(CultureInfo.InvariantCulture).ToLower());
}
- writer.WriteStartElement("resume");
+ if (!item.IsFolder)
+ {
+ writer.WriteElementString("playcount", userdata.PlayCount.ToString(UsCulture));
+ writer.WriteElementString("watched", userdata.Played.ToString().ToLower());
+
+ if (userdata.LastPlayedDate.HasValue)
+ {
+ writer.WriteElementString("lastplayed", userdata.LastPlayedDate.Value.ToString("yyyy-MM-dd HH:mm:ss").ToLower());
+ }
- var runTimeTicks = item.RunTimeTicks ?? 0;
+ writer.WriteStartElement("resume");
- writer.WriteElementString("position", TimeSpan.FromTicks(userdata.PlaybackPositionTicks).TotalSeconds.ToString(UsCulture));
- writer.WriteElementString("total", TimeSpan.FromTicks(runTimeTicks).TotalSeconds.ToString(UsCulture));
+ var runTimeTicks = item.RunTimeTicks ?? 0;
+
+ writer.WriteElementString("position", TimeSpan.FromTicks(userdata.PlaybackPositionTicks).TotalSeconds.ToString(UsCulture));
+ writer.WriteElementString("total", TimeSpan.FromTicks(runTimeTicks).TotalSeconds.ToString(UsCulture));
+ }
writer.WriteEndElement();
}