Sha256: d48b7868ccdc626aa90e8277b1d3214610aa4e187c705712b821d0f6c62cb7ed

Contents?: true

Size: 886 Bytes

Versions: 1

Compression:

Stored size: 886 Bytes

Contents

class CoprlController < ApplicationController
  include Coprl::Presenters::WebClient::Helpers::Rails::Namespaced
  before_action :set_view_path

  def show
    render :show, layout: 'coprl'
  end
  private
  def load_pom
    return @pom if @pom
    presenter_name = namespaced_presenter(params)
    fq_presenter_name = [presenter_name, 'index'].compact.join(':')
    presenter_name = fq_presenter_name if Coprl::Presenters::App.registered?(fq_presenter_name)
    presenter = Coprl::Presenters::App[presenter_name].call
    context = params.dup.to_unsafe_hash
    router = Coprl::Presenters::WebClient::Router.new(base_url: request.base_url)
    @pom = presenter.expand(router: router, context: context)
  end

  def set_view_path
    paths = Coprl::Presenters::WebClient::PluginViewsPath.new(pom: load_pom).render
    paths.each do |path|
      prepend_view_path path
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
coprl-3.0.0.beta.2 rails-engine/app/controllers/coprl_controller.rb