aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.XbmcMetadata
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.XbmcMetadata')
-rw-r--r--MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs15
-rw-r--r--MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs28
2 files changed, 37 insertions, 6 deletions
diff --git a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
index 66efd7c780..682175f793 100644
--- a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
+++ b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
@@ -193,6 +193,21 @@ namespace MediaBrowser.XbmcMetadata.Parsers
break;
}
+ case "originaltitle":
+ {
+ var val = reader.ReadElementContentAsString();
+
+ var hasOriginalTitle = item as IHasOriginalTitle;
+ if (hasOriginalTitle != null)
+ {
+ if (!string.IsNullOrEmpty(hasOriginalTitle.OriginalTitle))
+ {
+ hasOriginalTitle.OriginalTitle = val;
+ }
+ }
+ break;
+ }
+
case "title":
case "localtitle":
item.Name = reader.ReadElementContentAsString();
diff --git a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
index 5455709e99..3224f36bc6 100644
--- a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
+++ b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs
@@ -214,7 +214,7 @@ namespace MediaBrowser.XbmcMetadata.Savers
}
}
- using (var filestream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read))
+ using (var filestream = FileSystem.GetFileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read))
{
stream.CopyTo(filestream);
}
@@ -459,6 +459,15 @@ namespace MediaBrowser.XbmcMetadata.Savers
writer.WriteElementString("title", item.Name ?? string.Empty);
writer.WriteElementString("originaltitle", item.Name ?? string.Empty);
+ var hasOriginalTitle = item as IHasOriginalTitle;
+ if (hasOriginalTitle != null)
+ {
+ if (!string.IsNullOrEmpty(hasOriginalTitle.OriginalTitle))
+ {
+ writer.WriteElementString("originaltitle", hasOriginalTitle.OriginalTitle ?? string.Empty);
+ }
+ }
+
var directors = item.People
.Where(i => IsPersonType(i, PersonType.Director))
.Select(i => i.Name)
@@ -836,19 +845,26 @@ namespace MediaBrowser.XbmcMetadata.Savers
private static void AddCollectionItems(Folder item, XmlWriter writer)
{
var items = item.LinkedChildren
- .Where(i => i.Type == LinkedChildType.Manual && !string.IsNullOrWhiteSpace(i.ItemName))
+ .Where(i => i.Type == LinkedChildType.Manual)
.ToList();
foreach (var link in items)
{
writer.WriteStartElement("collectionitem");
- writer.WriteElementString("name", link.ItemName);
- writer.WriteElementString("type", link.ItemType);
+ if (!string.IsNullOrWhiteSpace(link.ItemName))
+ {
+ writer.WriteElementString("name", link.ItemName);
+ }
+
+ if (!string.IsNullOrWhiteSpace(link.ItemType))
+ {
+ writer.WriteElementString("type", link.ItemType);
+ }
- if (link.ItemYear.HasValue)
+ if (!string.IsNullOrWhiteSpace(link.Path))
{
- writer.WriteElementString("year", link.ItemYear.Value.ToString(UsCulture));
+ writer.WriteElementString("path", link.Path);
}
writer.WriteEndElement();