diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-09-06 15:17:15 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-09-06 15:17:15 -0400 |
| commit | 1d9c163f5ff0207442ff008d8799a5bc602c3d39 (patch) | |
| tree | 424dac5f9cb1cba36d1fe8fb6f3581cf0aeb5a99 /MediaBrowser.Controller | |
| parent | 83dd13cc7c72b8f63f049db3ed5582ef084426aa (diff) | |
fixes #506 - Song list - make columns headers clickable for sorting
Diffstat (limited to 'MediaBrowser.Controller')
4 files changed, 22 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/Entities/Audio/Audio.cs b/MediaBrowser.Controller/Entities/Audio/Audio.cs index 7c226864b..ff632c981 100644 --- a/MediaBrowser.Controller/Entities/Audio/Audio.cs +++ b/MediaBrowser.Controller/Entities/Audio/Audio.cs @@ -9,7 +9,7 @@ namespace MediaBrowser.Controller.Entities.Audio /// <summary> /// Class Audio /// </summary> - public class Audio : BaseItem, IHasMediaStreams + public class Audio : BaseItem, IHasMediaStreams, IHasAlbumArtist { public Audio() { diff --git a/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs b/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs new file mode 100644 index 000000000..d9dac077f --- /dev/null +++ b/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs @@ -0,0 +1,8 @@ + +namespace MediaBrowser.Controller.Entities.Audio +{ + public interface IHasAlbumArtist + { + string AlbumArtist { get; } + } +} diff --git a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs index 7bfbbaf19..834fc6943 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs @@ -6,7 +6,7 @@ namespace MediaBrowser.Controller.Entities.Audio /// <summary> /// Class MusicAlbum /// </summary> - public class MusicAlbum : Folder + public class MusicAlbum : Folder, IHasAlbumArtist { public string LastFmImageUrl { get; set; } @@ -62,6 +62,17 @@ namespace MediaBrowser.Controller.Entities.Audio { return RecursiveChildren.OfType<Audio>().Any(i => i.HasArtist(artist)); } + + public string AlbumArtist + { + get + { + return RecursiveChildren + .OfType<Audio>() + .Select(i => i.AlbumArtist) + .FirstOrDefault(i => !string.IsNullOrEmpty(i)); + } + } } public class MusicAlbumDisc : Folder diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 2c33cceb1..3546b8b04 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -73,6 +73,7 @@ </Compile> <Compile Include="Dto\IDtoService.cs" /> <Compile Include="Entities\AdultVideo.cs" /> + <Compile Include="Entities\Audio\IHasAlbumArtist.cs" /> <Compile Include="Entities\Book.cs" /> <Compile Include="Configuration\IServerConfigurationManager.cs" /> <Compile Include="Entities\Audio\MusicGenre.cs" /> |
