aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Controller/Dto/DtoBuilder.cs17
-rw-r--r--MediaBrowser.Model/DTO/BaseItemDto.cs6
2 files changed, 14 insertions, 9 deletions
diff --git a/MediaBrowser.Controller/Dto/DtoBuilder.cs b/MediaBrowser.Controller/Dto/DtoBuilder.cs
index 63d19a662..76a5f8517 100644
--- a/MediaBrowser.Controller/Dto/DtoBuilder.cs
+++ b/MediaBrowser.Controller/Dto/DtoBuilder.cs
@@ -65,7 +65,7 @@ namespace MediaBrowser.Controller.Dto
{
dto.Studios = item.Studios;
}
-
+
if (fields.Contains(ItemFields.People))
{
tasks.Add(AttachPeople(dto, item));
@@ -176,7 +176,7 @@ namespace MediaBrowser.Controller.Dto
if (item.IsFolder && fields.Contains(ItemFields.DisplayPreferencesId))
{
- dto.DisplayPreferencesId = ((Folder) item).GetDisplayPreferencesId(user.Id).ToString();
+ dto.DisplayPreferencesId = ((Folder)item).GetDisplayPreferencesId(user.Id).ToString();
}
if (item.IsFolder)
@@ -283,7 +283,7 @@ namespace MediaBrowser.Controller.Dto
{
dto.ProductionLocations = item.ProductionLocations;
}
-
+
dto.AspectRatio = item.AspectRatio;
dto.BackdropImageTags = GetBackdropImageTags(item);
@@ -340,7 +340,7 @@ namespace MediaBrowser.Controller.Dto
dto.OverviewHtml = item.Overview;
}
}
-
+
// If there are no backdrops, indicate what parent has them in case the Ui wants to allow inheritance
if (dto.BackdropImageTags.Count == 0)
{
@@ -424,7 +424,7 @@ namespace MediaBrowser.Controller.Dto
{
dto.Album = audio.Album;
dto.AlbumArtist = audio.AlbumArtist;
- dto.Artist = audio.Artist;
+ dto.Artists = new[] { audio.Artist };
}
var album = item as MusicAlbum;
@@ -434,7 +434,12 @@ namespace MediaBrowser.Controller.Dto
var songs = album.Children.OfType<Audio>().ToList();
dto.AlbumArtist = songs.Select(i => i.AlbumArtist).FirstOrDefault(i => !string.IsNullOrEmpty(i));
- dto.Artist = songs.Select(i => i.Artist).FirstOrDefault(i => !string.IsNullOrEmpty(i));
+
+ dto.Artists =
+ songs.Select(i => i.Artist ?? string.Empty)
+ .Where(i => !string.IsNullOrEmpty(i))
+ .Distinct(StringComparer.OrdinalIgnoreCase)
+ .ToArray();
}
}
diff --git a/MediaBrowser.Model/DTO/BaseItemDto.cs b/MediaBrowser.Model/DTO/BaseItemDto.cs
index ad454b4c2..4170e7250 100644
--- a/MediaBrowser.Model/DTO/BaseItemDto.cs
+++ b/MediaBrowser.Model/DTO/BaseItemDto.cs
@@ -271,10 +271,10 @@ namespace MediaBrowser.Model.Dto
public double? PrimaryImageAspectRatio { get; set; }
/// <summary>
- /// Gets or sets the artist.
+ /// Gets or sets the artists.
/// </summary>
- /// <value>The artist.</value>
- public string Artist { get; set; }
+ /// <value>The artists.</value>
+ public string[] Artists { get; set; }
/// <summary>
/// Gets or sets the album.