Sha256: 29361a28bb7ffbd68fa35c7f3c3a1f2cedea2a39067ad726e03210d58b0e076e

Contents?: true

Size: 1.17 KB

Versions: 9

Compression:

Stored size: 1.17 KB

Contents

class SidebarController < ApplicationController
  def index
    if flash[:sidebars]
      @sidebars = flash[:sidebars].map {|sb_id| Sidebar.find(sb_id.to_i) }
      flash.keep(:sidebars)
    else
      @sidebars = self.class.enabled_sidebars
    end
    render :action => 'display_plugins'
  end

  def display_plugins
    @sidebars=self.class.enabled_sidebars
    render :layout => false
  end

  def at
    @sidebar = self.class.enabled_sidebars[params[:id].to_i]
    render :action => 'show'
  end

  def show
    @sidebar = Sidebar.find(params[:id].to_i)
    unless @sidebar
      render :text => "No such sidebar", :status => 404
    end
  end

  def self.enabled_sidebars
    available=available_sidebars.inject({}) { |h,i| h[i.short_name]=i; h}

    Sidebar.find_all_visible.select do |sidebar|
      sidebar.controller and available[sidebar.controller]
    end
  end

  def self.available_sidebars
    Sidebars::Plugin.available_sidebars
  end

  protected

  def log_processing
    logger.info "\n\nProcessing #{controller_class_name}\##{action_name} (for #{request_origin})"
  end
end

Dir["#{RAILS_ROOT}/components/plugins/sidebars/[_a-z]*.rb"].each do |f|
  require_dependency f
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
typo-3.99.0 app/controllers/sidebar_controller.rb
typo-3.99.3 app/controllers/sidebar_controller.rb
typo-3.99.2 app/controllers/sidebar_controller.rb
typo-3.99.1 app/controllers/sidebar_controller.rb
typo-3.99.4 app/controllers/sidebar_controller.rb
typo-4.0.1 app/controllers/sidebar_controller.rb
typo-4.0.2 app/controllers/sidebar_controller.rb
typo-4.0.0 app/controllers/sidebar_controller.rb
typo-4.0.3 app/controllers/sidebar_controller.rb