Sha256: 8cc1cc66e5c8e73b8a9f9f860bd9317346cd5b0ef313affff8ee47e9db8cee44

Contents?: true

Size: 921 Bytes

Versions: 11

Compression:

Stored size: 921 Bytes

Contents

module CamaleonCms
  module Apps
    class PluginsAdminController < CamaleonCms::AdminController
      before_action :init_plugin

      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
        return if @plugin.settings['gem_mode'].present?

        lookup_context.prefixes.delete_if { |t| t =~ %r{plugins/(.*)/views}i }
        lookup_context.prefixes.prepend(params[:controller].sub("plugins/#{plugin_name}",
                                                                "plugins/#{plugin_name}/views"))
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
camaleon_cms-2.9.0 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.8.3 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.8.2 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.8.1 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.8.0 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.7.5 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.7.4 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.7.3 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.7.2 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.7.1 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb
camaleon_cms-2.7.0 app/controllers/camaleon_cms/apps/plugins_admin_controller.rb