diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-12-15 00:16:23 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-12-15 00:16:23 -0500 |
| commit | e92e0365747c04f081be0efbb9afb78dc96aef9b (patch) | |
| tree | 51a7d2c0647d491737ca0bf9b9b8b3a11e9ee313 /MediaBrowser.Model/Sync/SyncHelper.cs | |
| parent | ed31b883f4bf1884ee974171501e61f83c768379 (diff) | |
add new sync methods
Diffstat (limited to 'MediaBrowser.Model/Sync/SyncHelper.cs')
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncHelper.cs | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/MediaBrowser.Model/Sync/SyncHelper.cs b/MediaBrowser.Model/Sync/SyncHelper.cs new file mode 100644 index 000000000..ac595b5ef --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncHelper.cs @@ -0,0 +1,51 @@ +using MediaBrowser.Model.Dto; +using System.Collections.Generic; + +namespace MediaBrowser.Model.Sync +{ + public static class SyncHelper + { + public static List<SyncOptions> GetSyncOptions(List<BaseItemDto> items) + { + List<SyncOptions> options = new List<SyncOptions>(); + + if (items.Count > 1) + { + options.Add(SyncOptions.Name); + } + + foreach (BaseItemDto item in items) + { + if (item.SupportsSync ?? false) + { + if (item.IsVideo) + { + options.Add(SyncOptions.Quality); + options.Add(SyncOptions.UnwatchedOnly); + break; + } + if (item.IsFolder && !item.IsMusicGenre && !item.IsArtist && !item.IsType("musicalbum") && !item.IsGameGenre) + { + options.Add(SyncOptions.Quality); + options.Add(SyncOptions.UnwatchedOnly); + break; + } + } + } + + foreach (BaseItemDto item in items) + { + if (item.SupportsSync ?? false) + { + if (item.IsFolder || item.IsGameGenre || item.IsMusicGenre || item.IsGenre || item.IsArtist || item.IsStudio || item.IsPerson) + { + options.Add(SyncOptions.SyncNewContent); + break; + } + } + } + + return options; + } + } +} |
