aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Collections/ManualCollectionsFolder.cs36
-rw-r--r--MediaBrowser.Controller/Entities/UserView.cs3
-rw-r--r--MediaBrowser.Controller/MediaBrowser.Controller.csproj1
-rw-r--r--MediaBrowser.Controller/Providers/BaseItemXmlParser.cs27
4 files changed, 54 insertions, 13 deletions
diff --git a/MediaBrowser.Controller/Collections/ManualCollectionsFolder.cs b/MediaBrowser.Controller/Collections/ManualCollectionsFolder.cs
new file mode 100644
index 0000000000..d2d28e5047
--- /dev/null
+++ b/MediaBrowser.Controller/Collections/ManualCollectionsFolder.cs
@@ -0,0 +1,36 @@
+using MediaBrowser.Controller.Entities;
+
+namespace MediaBrowser.Controller.Collections
+{
+ public class ManualCollectionsFolder : BasePluginFolder, IHiddenFromDisplay
+ {
+ public ManualCollectionsFolder()
+ {
+ Name = "Collections";
+ DisplayMediaType = "CollectionFolder";
+ }
+
+ public override bool IsHidden
+ {
+ get
+ {
+ return true;
+ }
+ }
+
+ public bool IsHiddenFromUser(User user)
+ {
+ return !ConfigurationManager.Configuration.DisplayCollectionsView;
+ }
+
+ public override string CollectionType
+ {
+ get { return Model.Entities.CollectionType.BoxSets; }
+ }
+
+ public override string GetClientTypeName()
+ {
+ return typeof(CollectionFolder).Name;
+ }
+ }
+} \ No newline at end of file
diff --git a/MediaBrowser.Controller/Entities/UserView.cs b/MediaBrowser.Controller/Entities/UserView.cs
index 194ba0ee48..35375e7e66 100644
--- a/MediaBrowser.Controller/Entities/UserView.cs
+++ b/MediaBrowser.Controller/Entities/UserView.cs
@@ -113,8 +113,7 @@ namespace MediaBrowser.Controller.Entities
{
var standaloneTypes = new List<string>
{
- CollectionType.Playlists,
- CollectionType.BoxSets
+ CollectionType.Playlists
};
var collectionFolder = folder as ICollectionFolder;
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
index e7eaa1dc0b..5e74a39994 100644
--- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
@@ -98,6 +98,7 @@
<Compile Include="Collections\CollectionCreationOptions.cs" />
<Compile Include="Collections\CollectionEvents.cs" />
<Compile Include="Collections\ICollectionManager.cs" />
+ <Compile Include="Collections\ManualCollectionsFolder.cs" />
<Compile Include="Connect\ConnectSupporterSummary.cs" />
<Compile Include="Connect\IConnectManager.cs" />
<Compile Include="Connect\UserLinkResult.cs" />
diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
index 4484adb1db..fccbd9211f 100644
--- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
+++ b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
@@ -790,20 +790,25 @@ namespace MediaBrowser.Controller.Providers
}
default:
- if (_validProviderIds.ContainsKey(reader.Name))
- {
- var id = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(id))
+ {
+ string readerName = reader.Name;
+ string providerIdValue;
+ if (_validProviderIds.TryGetValue(readerName, out providerIdValue))
{
- item.SetProviderId(_validProviderIds[reader.Name], id);
+ var id = reader.ReadElementContentAsString();
+ if (!string.IsNullOrWhiteSpace(id))
+ {
+ item.SetProviderId(providerIdValue, id);
+ }
+ }
+ else
+ {
+ reader.Skip();
}
- }
- else
- {
- reader.Skip();
- }
- break;
+ break;
+
+ }
}
}