Sha256: 82dfec43a8c6d66088a187ee5f4ced4dffdd2cbbeae5a84b85a40f4a20f7672f

Contents?: true

Size: 668 Bytes

Versions: 1

Compression:

Stored size: 668 Bytes

Contents

# frozen_string_literal: true
require_relative 'kktix_api'

module KktixEvent
  # Single event on organiztion's feed
  class Event
    attr_reader :url, :title, :summary, :content, :author

    def initialize(event_data)
      load_data(event_data)
    end

    def self.search(query)
      events_hash = KktixApi.search(query)
      events = events_hash.map do |event_hash|
        new(event_hash)
      end
      events
    end

    private

    def load_data(event_data)
      @url = event_data[:url]
      @title = event_data[:title]
      @summary = event_data[:summary]
      @content = event_data[:content]
      @author = event_data[:author]
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
kktix_api-1.0.0 lib/kktix-api/event.rb