Beispiel #1
0
        public ActionResult <List <VirtualFolderInfo> > GetUserFolders([FromRoute] string userID)
        {
            var request = new GetUserFolders
            {
                UserID = userID
            };

            try
            {
                return(_service.Get(request));
            }
            catch (ResourceNotFoundException e)
            {
                return(NotFound(e.Message));
            }
        }
Beispiel #2
0
        public List <VirtualFolderInfo> Get(GetUserFolders request)
        {
            _logger.LogDebug($"InfuseSync: User folders requested for UserID '{request.UserID}'");

            var user = _userManager.GetUserById(Guid.Parse(request.UserID));

            if (user == null)
            {
                throw new ResourceNotFoundException($"User with ID '{request.UserID}' not found.");
            }

            return(_libraryManager.GetVirtualFolders()
                   .Where(f =>
            {
                var item = _libraryManager.GetItemById(f.ItemId);
                return item != null && item.IsVisibleStandalone(user);
            })
                   .ToList());
        }