Sha256: 6be069867481afe9de3e4b26967525423ca79d9f403874b670c45c7f8f4bd4a2

Contents?: true

Size: 904 Bytes

Versions: 3

Compression:

Stored size: 904 Bytes

Contents

require 'api_docs/engine'
require 'api_docs/configuration'

module ApiDocs

  class << self

    def configure
      yield configuration
    end

    def configuration
      @configuration ||= Configuration.new
    end
    alias :config :configuration

  end


  module ApplicationExtensions

    def self.included(base)
      base.send(:include, ApiDocs::ApplicationExtensions::InstanceMethods)
      base.send(:helper_method, :render_api_docs) if base.respond_to?(:helper_method)
    end

    module InstanceMethods

      def render_api_docs(docs)
        @api_docs = {}
        docs.each do |section|
          @api_docs[section] = YAML::load(File.open("#{Rails.root}#{ApiDocs.config.yaml_docs_folder}/#{section}.yml"))
        end
        render_to_string(:partial => 'api_docs/api_docs').html_safe
      end

    end
  end
end

ActionController::Base.send(:include, ApiDocs::ApplicationExtensions)

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
api_docs-0.0.4 lib/api_docs.rb
api_docs-0.0.3 lib/api_docs.rb
api_docs-0.0.2 lib/api_docs.rb