using System.Linq; using System.Runtime.Serialization; using Sony.Filtr.Contracts.Entities; using Sony.Filtr.Utility; namespace Sony.Filtr.API.ViewModels.v3 { [DataContract] public class PlaylistCategoryViewModel { public PlaylistCategoryViewModel(PlaylistCategory c, System.Collections.Generic.Dictionary icons) { var slug = TextUtility.GenerateSlug(c.Name); ID = c.ID;// string.Format("category-{0}", slug); //NOTE: Must match Id in playlistViewModel Slug = slug; Name = c.Name; Order = c.Order; //Icon = c.Icon; We only use the PredefinedIconName. Icon = c.PredefinedIconName; Description = c.Description; if (c.PlaylistCategoryIconId.HasValue && icons.ContainsKey(c.PlaylistCategoryIconId.Value)) { SVGMarkup = icons[c.PlaylistCategoryIconId.Value].SVGMarkup; } } [DataMember(Name = "id")] public int ID { get; set; } [DataMember(Name = "name")] public string Name { get; set; } [DataMember(Name = "icon")] public string Icon { get; set; } [DataMember(Name = "order")] public int Order { get; set; } [DataMember(Name = "description")] public string Description { get; set; } [DataMember(Name = "SVGMarkup")] public string SVGMarkup { get; set; } [DataMember(Name = "slug")] public string Slug { get; set; } } }