class Locomotive::Coal::Resources::ContentEntries

Attributes

content_type[RW]

Public Class Methods

new(uri, credentials, content_type) click to toggle source
Calls superclass method Locomotive::Coal::Resources::Base::new
# File lib/locomotive/coal/resources/content_entries.rb, line 9
def initialize(uri, credentials, content_type)
  @content_type = content_type
  super(uri, credentials)
end

Public Instance Methods

all(query = nil, options = {}, locale = nil)
Alias for: index
each(query = nil, options = nil, locale = nil, &block) click to toggle source
# File lib/locomotive/coal/resources/content_entries.rb, line 28
def each(query = nil, options = nil, locale = nil, &block)
  page = 1
  while page do
    resources = all(query, (options || {}).merge(page: page), locale)
    resources.each(&block)
    page = resources._next_page
  end
end
index(query = nil, options = {}, locale = nil) click to toggle source
# File lib/locomotive/coal/resources/content_entries.rb, line 14
def index(query = nil, options = {}, locale = nil)
  parameters = { where: (query || {}).to_json }.merge(options || {})
  parameters[:_locale] = locale if locale

  response = get(resources_name, parameters, true)

  list = response.body.map { |attributes| Resource.new(attributes) }

  PaginatedResources.new(list,
    options[:page] || 1,
    response.headers[:x_total_pages].to_i,
    response.headers[:x_total_entries].to_i)
end
Also aliased as: all

Private Instance Methods

resources_name() click to toggle source
# File lib/locomotive/coal/resources/content_entries.rb, line 43
def resources_name
  "content_types/#{content_type.slug}/entries"
end