diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-12-18 23:20:07 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-12-18 23:20:07 -0500 |
| commit | e55ab989d2077d70568965198139793ca7c116b4 (patch) | |
| tree | c7596f011b4e0e31029a3d2c27dcbd6d366facaf /MediaBrowser.Api/Sync/SyncService.cs | |
| parent | e3484bdcc204ae39e0bfdf08e758012a048d539c (diff) | |
add more sync buttons
Diffstat (limited to 'MediaBrowser.Api/Sync/SyncService.cs')
| -rw-r--r-- | MediaBrowser.Api/Sync/SyncService.cs | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/MediaBrowser.Api/Sync/SyncService.cs b/MediaBrowser.Api/Sync/SyncService.cs index cefb0e46e..26e4a2669 100644 --- a/MediaBrowser.Api/Sync/SyncService.cs +++ b/MediaBrowser.Api/Sync/SyncService.cs @@ -55,8 +55,14 @@ namespace MediaBrowser.Api.Sync [ApiMember(Name = "UserId", Description = "UserId", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "GET")] public string UserId { get; set; } - [ApiMember(Name = "ItemIds", Description = "ItemIds", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "GET")] + [ApiMember(Name = "ItemIds", Description = "ItemIds", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")] public string ItemIds { get; set; } + + [ApiMember(Name = "ParentId", Description = "ParentId", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")] + public string ParentId { get; set; } + + [ApiMember(Name = "Category", Description = "Category", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")] + public SyncCategory? Category { get; set; } } [Route("/Sync/JobItems/{Id}/Transferred", "POST", Summary = "Reports that a sync job item has successfully been transferred.")] @@ -155,19 +161,26 @@ namespace MediaBrowser.Api.Sync result.Targets = _syncManager.GetSyncTargets(request.UserId) .ToList(); - var dtos = request.ItemIds.Split(',') - .Select(_libraryManager.GetItemById) - .Where(i => i != null) - .Select(i => _dtoService.GetBaseItemDto(i, new DtoOptions - { - Fields = new List<ItemFields> + if (request.Category.HasValue) + { + result.Options = SyncHelper.GetSyncOptions(request.Category.Value); + } + else + { + var dtos = request.ItemIds.Split(',') + .Select(_libraryManager.GetItemById) + .Where(i => i != null) + .Select(i => _dtoService.GetBaseItemDto(i, new DtoOptions + { + Fields = new List<ItemFields> { ItemFields.SyncInfo } - })) - .ToList(); + })) + .ToList(); - result.Options = SyncHelper.GetSyncOptions(dtos); + result.Options = SyncHelper.GetSyncOptions(dtos); + } return ToOptimizedResult(result); } |
