diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-12 20:42:51 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-12 20:42:51 -0400 |
| commit | b3cb8fda22337e22d6d4ee45d5ec6e9cf69be7fa (patch) | |
| tree | d871f98cd8c5dd08c2432a3bccd8ffe758f8be84 /MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | |
| parent | b721aab2ba9dac5e5e3a7b53c066791d23e83bc2 (diff) | |
add ability to mark studios, genres and people as favorites
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs')
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs index 583f7460d..6801e14f0 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Controller.Entities; +using System.Threading; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Querying; @@ -196,6 +197,28 @@ namespace MediaBrowser.Api.UserLibrary return dto; } + + /// <summary> + /// Marks the favorite. + /// </summary> + /// <param name="getItem">The get item.</param> + /// <param name="userId">The user id.</param> + /// <param name="isFavorite">if set to <c>true</c> [is favorite].</param> + /// <returns>Task.</returns> + protected async Task MarkFavorite(Func<Task<TItemType>> getItem, Guid userId, bool isFavorite) + { + var user = UserManager.GetUserById(userId); + + var item = await getItem().ConfigureAwait(false); + + // Get the user data for this item + var data = await UserManager.GetUserData(user.Id, item.UserDataId).ConfigureAwait(false); + + // Set favorite status + data.IsFavorite = isFavorite; + + await UserManager.SaveUserData(user.Id, item.UserDataId, data, CancellationToken.None).ConfigureAwait(false); + } } /// <summary> |
