Sha256: b89c7f70b9a337d6e8e6d3faf9b8f233446b685bc3dc043dc6508ed54497e582

Contents?: true

Size: 1.39 KB

Versions: 38

Compression:

Stored size: 1.39 KB

Contents

module FbGraph
  class Photo < Node
    include Connections::Comments
    include Connections::Likes

    attr_accessor :from, :tags, :name, :picture, :icon, :source, :height, :width, :link, :created_time, :updated_time

    def initialize(identifier, attributes = {})
      super
      if (from = attributes[:from])
        @from = if from[:category]
          Page.new(from.delete(:id), from)
        else
          User.new(from.delete(:id), from)
        end
      end
      @tags = []
      if attributes[:tags]
        Collection.new(attributes[:tags]).each do |tag|
          @tags << if tag.is_a?(Tag)
            tag
          else
            Tag.new(tag)
          end
        end
      end
      # NOTE:
      # for some reason, facebook uses different parameter names.
      # "name" in GET & "message" in POST
      @name    = attributes[:name] || attributes[:message]
      @picture = attributes[:picture]
      @icon    = attributes[:icon]
      @source  = attributes[:source]
      @height  = attributes[:height]
      @width   = attributes[:width]
      @link    = attributes[:link]
      if attributes[:created_time]
        @created_time = Time.parse(attributes[:created_time]).utc
      end
      if attributes[:updated_time]
        @updated_time = Time.parse(attributes[:updated_time]).utc
      end

      # cached connection
      @_comments_ = Collection.new(attributes[:comments])
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
fb_graph-1.8.0 lib/fb_graph/photo.rb
fb_graph-1.8.0.alpha2 lib/fb_graph/photo.rb
fb_graph-1.7.5 lib/fb_graph/photo.rb
fb_graph-1.8.0.alpha lib/fb_graph/photo.rb
fb_graph-1.7.4 lib/fb_graph/photo.rb
fb_graph-1.7.3 lib/fb_graph/photo.rb
fb_graph-1.7.2 lib/fb_graph/photo.rb
fb_graph-1.7.1 lib/fb_graph/photo.rb
fb_graph-1.7.0 lib/fb_graph/photo.rb
fb_graph-1.7.0.alpha2 lib/fb_graph/photo.rb
fb_graph-1.6.9 lib/fb_graph/photo.rb
fb_graph-1.7.0.alpha lib/fb_graph/photo.rb
fb_graph-1.6.8 lib/fb_graph/photo.rb
fb_graph-1.6.7 lib/fb_graph/photo.rb
fb_graph-1.6.5 lib/fb_graph/photo.rb
fb_graph-1.6.4 lib/fb_graph/photo.rb
fb_graph-1.6.3 lib/fb_graph/photo.rb
fb_graph-1.6.2 lib/fb_graph/photo.rb
fb_graph-1.6.1 lib/fb_graph/photo.rb
fb_graph-1.6.0 lib/fb_graph/photo.rb