diff options
| author | LukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com> | 2012-07-23 11:05:30 -0400 |
|---|---|---|
| committer | LukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com> | 2012-07-23 11:05:30 -0400 |
| commit | 6c7175e33d258ff2e65735f68cb05f110a8d2306 (patch) | |
| tree | df6423b56192d200dba33a561730bd115ee055f4 /MediaBrowser.Controller | |
| parent | 0a48b5e31aa712acd988626a88c52c47467945b2 (diff) | |
Added an api call to pull down user configuration
Diffstat (limited to 'MediaBrowser.Controller')
4 files changed, 56 insertions, 5 deletions
diff --git a/MediaBrowser.Controller/Configuration/ServerConfiguration.cs b/MediaBrowser.Controller/Configuration/ServerConfiguration.cs index 38b1b9caf..73727b393 100644 --- a/MediaBrowser.Controller/Configuration/ServerConfiguration.cs +++ b/MediaBrowser.Controller/Configuration/ServerConfiguration.cs @@ -1,16 +1,36 @@ -using MediaBrowser.Common.Configuration;
+using System.Collections.Generic;
+using MediaBrowser.Common.Configuration;
namespace MediaBrowser.Controller.Configuration
{
public class ServerConfiguration : BaseConfiguration
{
public string ImagesByNamePath { get; set; }
- public int RecentItemDays { get; set; }
+
+ /// <summary>
+ /// Gets or sets the default UI configuration
+ /// </summary>
+ public UserConfiguration DefaultUserConfiguration { get; set; }
+
+ /// <summary>
+ /// Gets or sets a list of registered UI device names
+ /// </summary>
+ public List<string> DeviceNames { get; set; }
+
+ /// <summary>
+ /// Gets or sets all available UIConfigurations
+ /// The key contains device name and user id
+ /// </summary>
+ public Dictionary<string, UserConfiguration> UserConfigurations { get; set; }
public ServerConfiguration()
: base()
{
- RecentItemDays = 14;
+ DefaultUserConfiguration = new UserConfiguration();
+
+ UserConfigurations = new Dictionary<string, UserConfiguration>();
+
+ DeviceNames = new List<string>();
}
}
}
diff --git a/MediaBrowser.Controller/Configuration/ServerConfigurationController.cs b/MediaBrowser.Controller/Configuration/ServerConfigurationController.cs new file mode 100644 index 000000000..6f262a32e --- /dev/null +++ b/MediaBrowser.Controller/Configuration/ServerConfigurationController.cs @@ -0,0 +1,27 @@ +using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using MediaBrowser.Common.Configuration;
+
+namespace MediaBrowser.Controller.Configuration
+{
+ /// <summary>
+ /// Extends BaseConfigurationController by adding methods to get and set UIConfiguration data
+ /// </summary>
+ public class ServerConfigurationController : ConfigurationController<ServerConfiguration>
+ {
+ private string GetDictionaryKey(Guid userId, string deviceName)
+ {
+ string guidString = userId == Guid.Empty ? string.Empty : userId.ToString();
+
+ return deviceName + "-" + guidString;
+ }
+
+ public UserConfiguration GetUserConfiguration(Guid userId)
+ {
+ return Configuration.DefaultUserConfiguration;
+ }
+ }
+}
diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs index 0a5034859..468e7ab2f 100644 --- a/MediaBrowser.Controller/Kernel.cs +++ b/MediaBrowser.Controller/Kernel.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Kernel;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Events;
@@ -16,7 +17,7 @@ using MediaBrowser.Model.Users; namespace MediaBrowser.Controller
{
- public class Kernel : BaseKernel<ServerConfiguration>
+ public class Kernel : BaseKernel<ServerConfigurationController, ServerConfiguration>
{
public static Kernel Instance { get; private set; }
@@ -249,7 +250,9 @@ namespace MediaBrowser.Controller {
DateTime now = DateTime.Now;
- return GetParentalAllowedRecursiveChildren(parent, userId).Where(i => !(i is Folder) && (now - i.DateCreated).TotalDays < Configuration.RecentItemDays);
+ UserConfiguration config = ConfigurationController.GetUserConfiguration(userId);
+
+ return GetParentalAllowedRecursiveChildren(parent, userId).Where(i => !(i is Folder) && (now - i.DateCreated).TotalDays < config.RecentItemDays);
}
/// <summary>
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 92a7e8107..296c44d1a 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -43,6 +43,7 @@ </ItemGroup>
<ItemGroup>
<Compile Include="Configuration\ServerConfiguration.cs" />
+ <Compile Include="Configuration\ServerConfigurationController.cs" />
<Compile Include="Events\ItemResolveEventArgs.cs" />
<Compile Include="IO\DirectoryWatchers.cs" />
<Compile Include="IO\Shortcut.cs" />
|
