using System.Linq; using System.Runtime.Serialization; using Sony.Filtr.Contracts.Entities; using Sony.Filtr.Core.ImageCarousel; namespace Sony.Filtr.API.ViewModels.v3 { [DataContract] public class CarouselImageViewModel { public static CarouselImageViewModel BuildViewModel(CarouselImage image) { return new CarouselImageViewModel() { Id = image.Id, Title = image.Title, Uri = image.Uri, Order = image.Order, //Active = image.Active, OriginalImageUrl = BuildUrl(image.OriginalImageUrl), MediumImageUrl = BuildUrl(image.MediumImageUrl), SmallImageUrl = BuildUrl(image.SmallImageUrl), DynamicUrl = image.DynamicLink }; } private static string BuildUrl(string filename) { if (string.IsNullOrWhiteSpace(filename)) return null; return ApiConfig.EditorialImageBaseUrl + "/" + filename; } [DataMember(Name = "id")] public int Id { get; set; } [DataMember(Name = "title")] public string Title { get; set; } [DataMember(Name = "uri")] public string Uri { get; set; } [DataMember(Name = "order")] public int Order { get; set; } //[DataMember(Name = "active")] //public bool Active { get; set; } [DataMember(Name = "originalImageUrl")] public string OriginalImageUrl { get; set; } [DataMember(Name = "mediumImageUrl")] public string MediumImageUrl { get; set; } [DataMember(Name = "smallImageUrl")] public string SmallImageUrl { get; set; } [DataMember(Name = "dynamicUrl")] public object DynamicUrl { get; set; } } }