Sha256: fcde340adf1d8fff1d54b15d520c58d584cfcd078edb62b984e8e33e8780cd05

Contents?: true

Size: 834 Bytes

Versions: 7

Compression:

Stored size: 834 Bytes

Contents

class CamaleonCms::Apps::PluginsFrontController < CamaleonCms::FrontendController
  before_action :init_plugin
  layout Proc.new { |controller| "themes/#{current_theme.slug}/views/layouts/index" }

  private
  def init_plugin
    plugin_name = params[:controller].split("/")[1]
    @plugin = current_site.plugins.where(slug: plugin_name).first_or_create
    unless @plugin.active?
      flash[:error] = t("camaleon_cms.plugin_not_installed", default: "This plugin is not installed, please contact to the administrator.")
      redirect_to cama_root_url
      return
    end
    if !@plugin.settings["gem_mode"].present?
      lookup_context.prefixes.delete_if{|t| t =~ /plugins\/(.*)\/views/i }
      lookup_context.prefixes.prepend(params[:controller].sub("plugins/#{plugin_name}", "plugins/#{plugin_name}/views"))
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
camaleon_cms-2.3.6 app/controllers/camaleon_cms/apps/plugins_front_controller.rb
camaleon_cms-2.3.5 app/controllers/camaleon_cms/apps/plugins_front_controller.rb
camaleon_cms-2.3.4 app/controllers/camaleon_cms/apps/plugins_front_controller.rb
camaleon_cms-2.3.3 app/controllers/camaleon_cms/apps/plugins_front_controller.rb
camaleon_cms-2.3.2 app/controllers/camaleon_cms/apps/plugins_front_controller.rb
camaleon_cms-2.3.1 app/controllers/camaleon_cms/apps/plugins_front_controller.rb
camaleon_cms-2.3.0 app/controllers/camaleon_cms/apps/plugins_front_controller.rb