Sha256: 5f1e275ca0f3a0d615bb8427cb884c2610764f841240ece1f02297d940576936

Contents?: true

Size: 643 Bytes

Versions: 10

Compression:

Stored size: 643 Bytes

Contents

require 'erb'
require 'bluecloth'

OPRO_MD_ROOT=File.join(File.dirname(__FILE__), '../../../views/opro/oauth/docs/markdown/')


class Opro::Oauth::DocsController < OproController
  helper_method :render_doc

  def index
  end

  def show
    @doc = params[:id]
  end

  def render_doc(name)
    str = read_file(name.to_s)
    str = parse_erb(str)
    str = parse_markdown(str)
    str.html_safe
  end

  private

  def parse_erb(str)
    ERB.new(str).result(binding)
  end

  def parse_markdown(str)
    BlueCloth.new(str).to_html
  end

  def read_file(name)
    name = OPRO_MD_ROOT + name
    File.open(name + '.md.erb' ).read.to_s
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
opro-0.3.2 app/controllers/opro/oauth/docs_controller.rb
opro-0.3.1 app/controllers/opro/oauth/docs_controller.rb
opro-0.3.0 app/controllers/opro/oauth/docs_controller.rb
opro-0.3.0.pre3 app/controllers/opro/oauth/docs_controller.rb
opro-0.3.0.pre2 app/controllers/opro/oauth/docs_controller.rb
opro-0.3.0.pre1 app/controllers/opro/oauth/docs_controller.rb
opro-0.3.0.pre app/controllers/opro/oauth/docs_controller.rb
opro-0.2.1.pre app/controllers/opro/oauth/docs_controller.rb
opro-0.2.0 app/controllers/opro/oauth/docs_controller.rb
opro-0.1.0 app/controllers/opro/oauth/docs_controller.rb