diff --git a/frontend/src/Store/Actions/wantedActions.js b/frontend/src/Store/Actions/wantedActions.js index 5756da38d..850e5387a 100644 --- a/frontend/src/Store/Actions/wantedActions.js +++ b/frontend/src/Store/Actions/wantedActions.js @@ -41,6 +41,7 @@ export const defaultState = { { name: 'albumTitle', label: 'Album Title', + isSortable: true, isVisible: true }, { @@ -119,6 +120,7 @@ export const defaultState = { { name: 'albumTitle', label: 'Album Title', + isSortable: true, isVisible: true }, { diff --git a/src/NzbDrone.Core/Music/AlbumRepository.cs b/src/NzbDrone.Core/Music/AlbumRepository.cs index 117c63922..616e1c2ed 100644 --- a/src/NzbDrone.Core/Music/AlbumRepository.cs +++ b/src/NzbDrone.Core/Music/AlbumRepository.cs @@ -119,6 +119,10 @@ namespace NzbDrone.Core.Music { sortKey = "Artists." + pagingSpec.SortKey.Split('.').Last(); } + else if (pagingSpec.SortKey == "albumTitle") + { + sortKey = "Albums.title"; + } else { sortKey = "Albums.releaseDate"; @@ -138,11 +142,11 @@ namespace NzbDrone.Core.Music private int GetMissingAlbumsQueryCount(PagingSpec pagingSpec, DateTime currentTime) { - var monitored = 0; + var monitored = "(Albums.[Monitored] = 0) OR (Artists.[Monitored] = 0)"; if (pagingSpec.FilterExpressions.FirstOrDefault().ToString().Contains("True")) { - monitored = 1; + monitored = "(Albums.[Monitored] = 1) AND (Artists.[Monitored] = 1)"; } string query = string.Format("SELECT Albums.* FROM (SELECT Tracks.AlbumId, COUNT(*) AS TotalTrackCount," + @@ -180,6 +184,10 @@ namespace NzbDrone.Core.Music { sortKey = "Artists." + pagingSpec.SortKey.Split('.').Last(); } + else if (pagingSpec.SortKey == "albumTitle") + { + sortKey = "Albums.title"; + } else { sortKey = "Albums.releaseDate";