Sha256: ca63285a9b4e03e51f389fec9c97d97b1032ac6775e70b3aedf800610c8b52a4

Contents?: true

Size: 694 Bytes

Versions: 5

Compression:

Stored size: 694 Bytes

Contents

module TMDBParty
  class CastMember
    include Attributes
    attr_reader :tmdb
    attributes :name, :url, :job, :department
    attributes :id, :type => Integer
    
    def initialize(values, tmdb)
      @tmdb = tmdb
      self.attributes = values
    end
    
    def character_name
      read_attribute('character')
    end
    
    def image_url
      read_attribute('profile')
    end
    
    def person
      tmdb.get_person(id)
    end
    
    def self.parse(data, tmdb)
      return unless data
      if data.is_a?(Array)
        data.collect do |person|
          CastMember.new(person, tmdb)
        end
      else
        [CastMember.new(data, tmdb)]
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
tmdb_party-0.9.0 lib/tmdb_party/cast_member.rb
tmdb_party-0.8.0 lib/tmdb_party/cast_member.rb
tmdb_party-0.7.0 lib/tmdb_party/cast_member.rb
tmdb_party-0.6.0 lib/tmdb_party/cast_member.rb
tmdb_party-0.5.0 lib/tmdb_party/cast_member.rb