Sha256: 7e7cbdfcf014caa8951b368782bf0d26349b38f3b47c44563068bf167c053271

Contents?: true

Size: 727 Bytes

Versions: 1

Compression:

Stored size: 727 Bytes

Contents

module Geri
  class PagesController < ApplicationController
    before_action :set_view_path

    def show
      render render_options_for_path(params[:path])
    end

    private

    def render_options_for_path(path)
      return { file: 'index.html.erb', layout: 'layout.html.erb' } unless path
      if File.exists?(page_root.join("#{path.underscore}.html.erb"))
        { file: path.underscore, layout: 'layout.html.erb' }
      else
        { file: "#{path.underscore}/index", layout: 'layout.html.erb' }
      end
    end

    def _normalize_layout(name)
      name
    end

    def page_root
      Rails.root.join('app', 'site')
    end

    def set_view_path
      prepend_view_path(page_root.to_s)
    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
geri-0.0.1 app/controllers/geri/pages_controller.rb