public MajaConversationMessageHml(IMajaQueryAnswer answer) : base(answer) { Html = "<!DOCTYPE html><html><head><style>@font-face { font-family: 'segoeui'; src: url('segoeui.ttf'); } html, body {margin: 0; padding: 0; background-color: #eeeeee; font-family: 'segoeui'; color: #706F6F;} .majaai-reply { /*ios hack...*/ cursor: pointer; }</style></head><body>" + answer.HtmlResponse + @"<script>document.body.addEventListener(""click"", function(e) { if (e.target.classList.contains(""majaai-reply"")) { var value = e.target.dataset[""value""] || e.target.value || e.target.textContent; location.href = ""https://localhost/clicked?value="" + encodeURIComponent(value); } }, false);</script>" + "</body></html>"; }
public MajaConversationMessagePoi(IMajaQueryAnswer queryAnswer) : base(queryAnswer) { PoisTappedCommand = new Command(() => MessagingCenter.Send(this, ConversationMessageTappedMessage)); foreach (var entity in queryAnswer.Entities.Where(e => string.Equals(e.EntityProvider, "poi", StringComparison.OrdinalIgnoreCase))) { Pois.Add(new PointOfInterest(entity)); } }
public MajaConversationMessageImmo(IMajaQueryAnswer queryAnswer) : base(queryAnswer) { ImmosTappedCommand = new Command(() => MessagingCenter.Send(this, ConversationMessageTappedMessage)); foreach (var entity in queryAnswer.Entities.Where(e => string.Equals(e.EntityProvider, "immobilienProvider", System.StringComparison.OrdinalIgnoreCase))) { Immos.Add(new ImmoObject(entity)); } }
public MajaConversationMessageLocation(IMajaQueryAnswer queryAnswer) : base(queryAnswer) { foreach (var entity in queryAnswer.Entities) { if (entity.DisplayAttributes.TryGetValue("lat", out var lat) && entity.DisplayAttributes.TryGetValue("lon", out var @long)) { Locations.Add(new Location((double)lat, (double)@long, entity.Name)); } } }
public MajaConversationMessageVideo(IMajaQueryAnswer queryAnswer) : base(queryAnswer) { VideoTappedCommand = new Command(() => MessagingCenter.Send(this, VideoTappedMessage)); }
public MajaConversationMessageNews(IMajaQueryAnswer queryAnswer) : base(queryAnswer) { }
public MajaConversationMessageFlightStatus(IMajaQueryAnswer queryAnswer, FlightStatus flightStatus) : base(queryAnswer) { FlightStatus = flightStatus; }
public MajaConversationMessageLink(IMajaQueryAnswer queryAnswer) : base(queryAnswer) { LinkTappedCommand = new Command(() => MessagingCenter.Send(this, ConversationMessageTappedMessage)); }