using System; using System.Linq; using Newtonsoft.Json; using Sony.Filtr.AdminAPI.Utility; using Sony.Filtr.Contracts.Entities; using Sony.Filtr.Playlists.Spotify.Model; namespace Sony.Filtr.AdminAPI.Modules.TrackPlaylistAdds.ViewModels { [Serializable] public class LocalSpotifyTrackViewModel : LocalSpotifyTrack { [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] public bool? IsSony { get; set; } public string AlbumImageUrl { get { if (Album?.SmallImageFilename != null) return ImageUrlUtility.GetAbsoluteImageUrl(Album.SmallImageFilename); return null; } } public string TrackUri { get { if (TrackId != null) { return SpotifyLink.FromTrackId(TrackId).Uri; } return null; } } public string AlbumUri { get { if (Album?.AlbumId != null) return SpotifyLink.FromAlbumId(Album?.AlbumId).Uri; return null; } } public string PreviewUrl { get; set; } public string AlbumId { get { return Album?.AlbumId; } } public string AlbumName { get { return Album?.Name; } } } }