Sha256: 6fd2a887f82140f78a24eeff0349d0b4cf4bd7e905e1a8aac3ca6d893a0ce9b0

Contents?: true

Size: 848 Bytes

Versions: 2

Compression:

Stored size: 848 Bytes

Contents

module Siteleaf
  class Collection < Entity

    attr_accessor :title, :path, :permalink, :output, :site_id, :user_id, :metadata
    attr_reader :id, :directory, :created_at, :updated_at
    
    def create_endpoint
      ::File.join("sites", site_id, "collections")
    end
    
    def entity_endpoint
      ::File.join(create_endpoint, identifier)
    end
    
    def identifier
      path
    end
    
    def site
      Site.find(site_id)
    end
    
    def documents
      result = Client.get "#{entity_endpoint}/documents"
      result.map { |r| Document.new(r) } if result.is_a? Array
    end
    
    def files
      result = Client.get "#{entity_endpoint}/files"
      result.map { |r| File.new(r) } if result.is_a? Array
    end
    
    def output?
      output == true
    end
    
    def filename
      path
    end
    
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
siteleaf-2.0.0 lib/siteleaf/collection.rb
siteleaf-2.0.0.pre.beta9 lib/siteleaf/collection.rb