From bf32512fa28d6b0061e39d46d64de630eac21719 Mon Sep 17 00:00:00 2001 From: ta264 Date: Fri, 15 Mar 2019 21:48:50 +0000 Subject: [PATCH] Fixed: Make artist stats update when album (un)monitored (#673) --- src/Lidarr.Api.V1/Artist/ArtistModule.cs | 6 ++++++ src/NzbDrone.Core/Music/AlbumService.cs | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/src/Lidarr.Api.V1/Artist/ArtistModule.cs b/src/Lidarr.Api.V1/Artist/ArtistModule.cs index 3f72ea898..f33c4a817 100644 --- a/src/Lidarr.Api.V1/Artist/ArtistModule.cs +++ b/src/Lidarr.Api.V1/Artist/ArtistModule.cs @@ -25,6 +25,7 @@ namespace Lidarr.Api.V1.Artist { public class ArtistModule : LidarrRestModuleWithSignalR, IHandle, + IHandle, IHandle, IHandle, IHandle, @@ -242,6 +243,11 @@ namespace Lidarr.Api.V1.Artist BroadcastResourceChange(ModelAction.Updated, GetArtistResource(message.Artist)); } + public void Handle(AlbumEditedEvent message) + { + BroadcastResourceChange(ModelAction.Updated, GetArtistResource(message.Album.Artist.Value)); + } + public void Handle(TrackFileDeletedEvent message) { if (message.Reason == DeleteMediaFileReason.Upgrade) return; diff --git a/src/NzbDrone.Core/Music/AlbumService.cs b/src/NzbDrone.Core/Music/AlbumService.cs index 516626c31..d4e5633e3 100644 --- a/src/NzbDrone.Core/Music/AlbumService.cs +++ b/src/NzbDrone.Core/Music/AlbumService.cs @@ -282,12 +282,21 @@ namespace NzbDrone.Core.Music var album = _albumRepository.Get(albumId); _albumRepository.SetMonitoredFlat(album, monitored); + // publish album edited event so artist stats update + _eventAggregator.PublishEvent(new AlbumEditedEvent(album, album)); + _logger.Debug("Monitored flag for Album:{0} was set to {1}", albumId, monitored); } public void SetMonitored(IEnumerable ids, bool monitored) { _albumRepository.SetMonitored(ids, monitored); + + // publish album edited event so artist stats update + foreach (var album in _albumRepository.Get(ids)) + { + _eventAggregator.PublishEvent(new AlbumEditedEvent(album, album)); + } } public List UpdateAlbums(List albums)