public JArray GetBroadcastHistory()
{
var settings = PeerCastApplication.Current.Settings.Get<UISettings>();
return new JArray(settings.BroadcastHistory
.OrderBy(info => info.Favorite ? 0 : 1)
.Select(info => {
var obj = new JObject();
obj["streamType"] = info.StreamType;
obj["streamUrl"] = info.StreamUrl;
obj["bitrate"] = info.Bitrate;
obj["contentType"] = info.ContentType;
obj["yellowPage"] = info.YellowPage;
obj["channelName"] = info.ChannelName;
obj["genre"] = info.Genre;
obj["description"] = info.Description;
obj["comment"] = info.Comment;
obj["contactUrl"] = info.ContactUrl;
obj["trackTitle"] = info.TrackTitle;
obj["trackAlbum"] = info.TrackAlbum;
obj["trackArtist"] = info.TrackArtist;
obj["trackGenre"] = info.TrackGenre;
obj["trackUrl"] = info.TrackUrl;
obj["favorite"] = info.Favorite;
return obj;
})
);
}