From e210825e54d2199028570489ee4f3d2834676021 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sat, 7 Jun 2014 15:46:24 -0400 Subject: update translations --- MediaBrowser.Api/UserLibrary/UserLibraryService.cs | 26 ++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) (limited to 'MediaBrowser.Api/UserLibrary/UserLibraryService.cs') diff --git a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs index df3a1d5a6..28a365354 100644 --- a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs +++ b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs @@ -6,6 +6,7 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Library; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Session; using ServiceStack; @@ -48,7 +49,10 @@ namespace MediaBrowser.Api.UserLibrary /// /// The user id. [ApiMember(Name = "UserId", Description = "User Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "GET")] - public Guid UserId { get; set; } + public string UserId { get; set; } + + [ApiMember(Name = "IncludeExternalContent", Description = "Whether or not to include external views such as channels or live tv", IsRequired = true, DataType = "boolean", ParameterType = "query", Verb = "POST")] + public bool? IncludeExternalContent { get; set; } } /// @@ -438,6 +442,8 @@ namespace MediaBrowser.Api.UserLibrary private readonly ISessionManager _sessionManager; private readonly IDtoService _dtoService; + private readonly IUserViewManager _userViewManager; + /// /// Initializes a new instance of the class. /// @@ -447,13 +453,14 @@ namespace MediaBrowser.Api.UserLibrary /// The session manager. /// The dto service. /// jsonSerializer - public UserLibraryService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, ISessionManager sessionManager, IDtoService dtoService) + public UserLibraryService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, ISessionManager sessionManager, IDtoService dtoService, IUserViewManager userViewManager) { _userManager = userManager; _libraryManager = libraryManager; _userDataRepository = userDataRepository; _sessionManager = sessionManager; _dtoService = dtoService; + _userViewManager = userViewManager; } /// @@ -470,12 +477,23 @@ namespace MediaBrowser.Api.UserLibrary public object Get(GetUserViews request) { - var user = _userManager.GetUserById(request.UserId); + var user = _userManager.GetUserById(new Guid(request.UserId)); // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); - var folders = user.GetViews(); + var query = new UserViewQuery + { + UserId = request.UserId + + }; + + if (request.IncludeExternalContent.HasValue) + { + query.IncludeExternalContent = request.IncludeExternalContent.Value; + } + + var folders = _userViewManager.GetUserViews(query, CancellationToken.None).Result; var dtos = folders.OrderBy(i => i.SortName) .Select(i => _dtoService.GetBaseItemDto(i, fields, user)) -- cgit v1.2.3