예제 #1
0
 private void scanForImages(List <Annotation> annotations)
 {
     imagesInPost = new ObservableCollection <AppNetDotNet.Model.Annotations.EmbeddedMedia>();
     if (annotations != null)
     {
         foreach (Annotation annotation in annotations)
         {
             if (annotation.type == "net.app.core.oembed")
             {
                 AppNetDotNet.Model.Annotations.EmbeddedMedia media = annotation.parsedObject as AppNetDotNet.Model.Annotations.EmbeddedMedia;
                 if (media != null)
                 {
                     if (!string.IsNullOrEmpty(media.thumbnail_url) || !string.IsNullOrEmpty(media.url))
                     {
                         if (string.IsNullOrEmpty(media.thumbnail_url))
                         {
                             media.thumbnail_url = media.url;
                         }
                         imagesInPost.Add(media);
                         hasEmbeddedImages = true;
                     }
                 }
             }
         }
     }
 }
예제 #2
0
            public Broadcast_Message(Message message)
            {
                raw_base_message = message;
                if (message != null)
                {
                    this.text = message.text;
                    if (message.raw != null)
                    {
                        foreach (Annotation annotation in message.raw)
                        {
                            switch (annotation.type)
                            {
                            case "net.app.core.oembed":
                                AppNetDotNet.Model.Annotations.EmbeddedMedia media = annotation.parsedObject as AppNetDotNet.Model.Annotations.EmbeddedMedia;
                                if (media != null)
                                {
                                    if (!string.IsNullOrEmpty(media.thumbnail_url) || !string.IsNullOrEmpty(media.url))
                                    {
                                        if (string.IsNullOrEmpty(media.thumbnail_url))
                                        {
                                            media.thumbnail_url = media.url;
                                        }
                                        image_url = media.thumbnail_url;
                                    }
                                }
                                break;

                            case "net.app.core.broadcast.message.metadata":
                                AppNetDotNet.Model.Annotations.Broadcast_Message_Metadata broadcast = annotation.parsedObject as AppNetDotNet.Model.Annotations.Broadcast_Message_Metadata;
                                if (broadcast != null)
                                {
                                    this.headline = broadcast.subject;
                                }
                                break;

                            case "net.app.core.crosspost":
                                AppNetDotNet.Model.Annotations.Crosspost crosspost = annotation.parsedObject as AppNetDotNet.Model.Annotations.Crosspost;
                                if (crosspost != null)
                                {
                                    this.read_more_url = crosspost.canonical_url;
                                }
                                break;
                            }
                        }
                    }
                }
                if (string.IsNullOrEmpty(headline))
                {
                    // no valid broadcast message!
                }
            }