using System.Collections.Generic; using Sony.Filtr.Utility; namespace Sony.Filtr.AdminAPI.ViewModels { public class EditorialPlaylistViewModelNew { public int? Id { get; set; } public string ExternalId { get { if (Id != null) { return CleanName(Id.Value, Name); } return null; } } public string Name { get; set; } public string SpotifyLink { get; set; } public int Priority { get; set; } public int PriorityLevel { get; set; } public string ImageFileName { get; set; } public bool Active { get; set; } public uint Subscribers { get; set; } public uint PreviousSubscribers { get; set; } public string SpotifyImageFileName { get; set; } public string DisplayName { get; set; } public string CountryCode { get; set; } public bool ThemeActive { get; set; } public string BackgroundColor { get; set; } public string HeaderBackgroundColor { get; set; } public string AccentColor { get; set; } public string TextColor { get; set; } public string Description { get; set; } public string HeaderImageUrl { get; set; } //public List SubscribersTrend { get; set; } public string SpotifyDescription { get; set; } public IEnumerable Tags { get; set; } public IEnumerable Artists { get; set; } private string CleanName(int id, string name) { //TODO: This code is duplicated in API PlaylistViewModel. return TextUtility.GenerateSlug(name) + "_" + id; } public System.DateTime? TracksLastAdded { get; set; } public int TracksAddedInWeek { get; set; } public int TracksAddedToday { get; set; } public int TrackDuration { get; set; } public int TracksCount { get; set; } public long? FollowerChange7 { get; set; } public long? FollowerChange15 { get; set; } public long? FollowerChange30 { get; set; } public double? SonyPercentage { get; set; } public double? Energy { get; set; } public double? Hotness { get; set; } public double? Tempo { get; set; } } }