aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-04-05 15:02:48 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-04-05 15:02:48 -0400
commit4986722c7305ebce02c37c80363a909d372ff7a3 (patch)
tree1c2aa33d18303d24c4153c116b9e67ab7495f06a /MediaBrowser.Controller
parent7c3f257581344aadf6f697f3159becbd613db7e2 (diff)
made display preferences uniquely identifiable
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Entities/CollectionFolder.cs3
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs12
-rw-r--r--MediaBrowser.Controller/Library/DtoBuilder.cs2
-rw-r--r--MediaBrowser.Controller/Library/IUserManager.cs9
-rw-r--r--MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs7
5 files changed, 18 insertions, 15 deletions
diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs
index c64f001c11..42c112752e 100644
--- a/MediaBrowser.Controller/Entities/CollectionFolder.cs
+++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs
@@ -1,6 +1,5 @@
using MediaBrowser.Common.Extensions;
using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Tasks;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
@@ -35,7 +34,7 @@ namespace MediaBrowser.Controller.Entities
/// Allow different display preferences for each collection folder
/// </summary>
/// <value>The display prefs id.</value>
- public override Guid DisplayPreferencesId
+ protected override Guid DisplayPreferencesId
{
get
{
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index 05ee87defa..ce8bf679ea 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -65,7 +65,7 @@ namespace MediaBrowser.Controller.Entities
/// </summary>
/// <value>The display prefs id.</value>
[IgnoreDataMember]
- public virtual Guid DisplayPreferencesId
+ protected virtual Guid DisplayPreferencesId
{
get
{
@@ -74,6 +74,16 @@ namespace MediaBrowser.Controller.Entities
}
}
+ /// <summary>
+ /// Gets the display preferences id.
+ /// </summary>
+ /// <param name="userId">The user id.</param>
+ /// <returns>Guid.</returns>
+ public Guid GetDisplayPreferencesId(Guid userId)
+ {
+ return (userId + DisplayPreferencesId.ToString()).GetMD5();
+ }
+
#region Indexing
/// <summary>
diff --git a/MediaBrowser.Controller/Library/DtoBuilder.cs b/MediaBrowser.Controller/Library/DtoBuilder.cs
index fbaa59f34f..d54563e41b 100644
--- a/MediaBrowser.Controller/Library/DtoBuilder.cs
+++ b/MediaBrowser.Controller/Library/DtoBuilder.cs
@@ -174,7 +174,7 @@ namespace MediaBrowser.Controller.Library
if (item.IsFolder && fields.Contains(ItemFields.DisplayPreferencesId))
{
- dto.DisplayPreferencesId = ((Folder)item).DisplayPreferencesId.ToString();
+ dto.DisplayPreferencesId = ((Folder) item).GetDisplayPreferencesId(user.Id).ToString();
}
if (item.IsFolder)
diff --git a/MediaBrowser.Controller/Library/IUserManager.cs b/MediaBrowser.Controller/Library/IUserManager.cs
index 8eee8e447c..1c276ffebd 100644
--- a/MediaBrowser.Controller/Library/IUserManager.cs
+++ b/MediaBrowser.Controller/Library/IUserManager.cs
@@ -190,23 +190,20 @@ namespace MediaBrowser.Controller.Library
/// <param name="userDataId">The user data id.</param>
/// <returns>Task{DisplayPreferences}.</returns>
Task<UserItemData> GetUserData(Guid userId, Guid userDataId);
-
+
/// <summary>
/// Gets the display preferences.
/// </summary>
- /// <param name="userId">The user id.</param>
/// <param name="displayPreferencesId">The display preferences id.</param>
/// <returns>DisplayPreferences.</returns>
- Task<DisplayPreferences> GetDisplayPreferences(Guid userId, Guid displayPreferencesId);
+ Task<DisplayPreferences> GetDisplayPreferences(Guid displayPreferencesId);
/// <summary>
/// Saves display preferences for an item
/// </summary>
- /// <param name="userId">The user id.</param>
- /// <param name="displayPreferencesId">The display preferences id.</param>
/// <param name="displayPreferences">The display preferences.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
- Task SaveDisplayPreferences(Guid userId, Guid displayPreferencesId, DisplayPreferences displayPreferences, CancellationToken cancellationToken);
+ Task SaveDisplayPreferences(DisplayPreferences displayPreferences, CancellationToken cancellationToken);
}
}
diff --git a/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs b/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs
index eb43c8ca5b..9774bb68e6 100644
--- a/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs
+++ b/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs
@@ -13,20 +13,17 @@ namespace MediaBrowser.Controller.Persistence
/// <summary>
/// Saves display preferences for an item
/// </summary>
- /// <param name="userId">The user id.</param>
- /// <param name="displayPreferencesId">The display preferences id.</param>
/// <param name="displayPreferences">The display preferences.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
- Task SaveDisplayPreferences(Guid userId, Guid displayPreferencesId, DisplayPreferences displayPreferences,
+ Task SaveDisplayPreferences(DisplayPreferences displayPreferences,
CancellationToken cancellationToken);
/// <summary>
/// Gets the display preferences.
/// </summary>
- /// <param name="userId">The user id.</param>
/// <param name="displayPreferencesId">The display preferences id.</param>
/// <returns>Task{DisplayPreferences}.</returns>
- Task<DisplayPreferences> GetDisplayPreferences(Guid userId, Guid displayPreferencesId);
+ Task<DisplayPreferences> GetDisplayPreferences(Guid displayPreferencesId);
}
}