Sha256: 481435467258164e81e18304e67bd8c4e83ddd8cbe09945e0d214fe6ba20c452

Contents?: true

Size: 793 Bytes

Versions: 3

Compression:

Stored size: 793 Bytes

Contents

# frozen_string_literal: true
require_relative 'fb_api'
require_relative 'attachment'

module FaceGroups
  # Single posting on group's feed
  class Posting
    attr_reader :id, :created_time, :updated_time, :message, :name, :attachment

    def initialize(data: nil)
      load_data(data)
    end

    def self.find(id:)
      posting_data = FaceGroups::FbApi.posting_data(id)
      new(data: posting_data)
    end

    private

    def load_data(posting_data)
      @id = posting_data['id']
      @updated_time = posting_data['updated_time']
      @created_time = posting_data['created_time']
      @name = posting_data['message']
      @message = posting_data['message']
      attached = posting_data['attachments']
      @attachment = Attachment.new(attached) if attached
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
facegroups-0.2.1 lib/facegroups/posting.rb
facegroups-0.2.0 lib/facegroups/posting.rb
facegroups-0.1.0 lib/facegroups/posting.rb