aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-06 15:17:15 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-06 15:17:15 -0400
commit1d9c163f5ff0207442ff008d8799a5bc602c3d39 (patch)
tree424dac5f9cb1cba36d1fe8fb6f3581cf0aeb5a99 /MediaBrowser.Controller
parent83dd13cc7c72b8f63f049db3ed5582ef084426aa (diff)
fixes #506 - Song list - make columns headers clickable for sorting
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Entities/Audio/Audio.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs8
-rw-r--r--MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs13
-rw-r--r--MediaBrowser.Controller/MediaBrowser.Controller.csproj1
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" />