diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-10-07 17:42:29 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-10-07 17:42:29 -0400 |
| commit | b1859d41e861630a95357bf21bb46af6c4fb5686 (patch) | |
| tree | b6309083d34e9be8bea03cae82ca6b6e5b35d7eb /MediaBrowser.Server.Implementations/Collections/CollectionManager.cs | |
| parent | b82254060d2fa33ffb2fd87ba31196d61a4940af (diff) | |
update collection menus
Diffstat (limited to 'MediaBrowser.Server.Implementations/Collections/CollectionManager.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Collections/CollectionManager.cs | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/MediaBrowser.Server.Implementations/Collections/CollectionManager.cs b/MediaBrowser.Server.Implementations/Collections/CollectionManager.cs index ac27a0ab4..8a19ee431 100644 --- a/MediaBrowser.Server.Implementations/Collections/CollectionManager.cs +++ b/MediaBrowser.Server.Implementations/Collections/CollectionManager.cs @@ -172,30 +172,31 @@ namespace MediaBrowser.Server.Implementations.Collections itemList.Add(item); - if (currentLinkedChildren.Any(i => i.Id == itemId)) + if (currentLinkedChildren.All(i => i.Id != itemId)) { - throw new ArgumentException("Item already exists in collection"); + list.Add(LinkedChild.Create(item)); } - - list.Add(LinkedChild.Create(item)); } - collection.LinkedChildren.AddRange(list); + if (list.Count > 0) + { + collection.LinkedChildren.AddRange(list); - collection.UpdateRatingToContent(); + collection.UpdateRatingToContent(); - await collection.UpdateToRepository(ItemUpdateType.MetadataEdit, CancellationToken.None).ConfigureAwait(false); + await collection.UpdateToRepository(ItemUpdateType.MetadataEdit, CancellationToken.None).ConfigureAwait(false); - _providerManager.QueueRefresh(collection.Id, new MetadataRefreshOptions(_fileSystem)); + _providerManager.QueueRefresh(collection.Id, new MetadataRefreshOptions(_fileSystem)); - if (fireEvent) - { - EventHelper.FireEventIfNotNull(ItemsAddedToCollection, this, new CollectionModifiedEventArgs + if (fireEvent) { - Collection = collection, - ItemsChanged = itemList + EventHelper.FireEventIfNotNull(ItemsAddedToCollection, this, new CollectionModifiedEventArgs + { + Collection = collection, + ItemsChanged = itemList - }, _logger); + }, _logger); + } } } |
