Module: SimpleAdmin

Defined in:
lib/simple_admin.rb,
lib/simple_admin/engine.rb,
lib/simple_admin/builder.rb,
lib/simple_admin/filters.rb,
lib/simple_admin/section.rb,
lib/simple_admin/version.rb,
lib/simple_admin/interface.rb,
lib/simple_admin/attributes.rb,
lib/simple_admin/breadcrumbs.rb,
app/helpers/simple_admin/form_helper.rb,
app/helpers/simple_admin/path_helper.rb,
app/helpers/simple_admin/admin_helper.rb,
app/helpers/simple_admin/table_helper.rb,
app/helpers/simple_admin/title_helper.rb,
app/helpers/simple_admin/assets_helper.rb,
app/helpers/simple_admin/filter_helper.rb,
app/helpers/simple_admin/header_helper.rb,
app/helpers/simple_admin/display_helper.rb,
app/helpers/simple_admin/sidebar_helper.rb,
app/controllers/simple_admin/admin_controller.rb,
lib/rails/generators/simple_admin/assets/assets_generator.rb,
lib/rails/generators/simple_admin/install/install_generator.rb

Defined Under Namespace

Modules: AdminHelper, AssetsHelper, DisplayHelper, FilterHelper, FormHelper, HeaderHelper, PathHelper, SidebarHelper, TableHelper, TitleHelper Classes: ActionNotAllowed, AdminController, AssetsGenerator, Attributes, Breadcrumbs, Builder, ConfigurationNotFound, Engine, Filters, InstallGenerator, Interface, InvalidAdminFile, Section, UnknownAdminInterface

Constant Summary collapse

VERSION =
"0.7.1"

Class Method Summary collapse

Class Method Details

.default_per_pageObject



25
26
27
# File 'lib/simple_admin.rb', line 25

def default_per_page
  @@default_per_page || 25
end

.form_for_helperObject



29
30
31
# File 'lib/simple_admin.rb', line 29

def form_for_helper
  @@form_for_helper || :semantic_form_for
end

.javascriptObject



37
38
39
# File 'lib/simple_admin.rb', line 37

def javascript
  @@javascript || "/javascripts/simple_admin/active_admin.js"
end

.register(resource, options = {}, &block) ⇒ Object

Registers a model for administration:

SimpleAdmin.register :post do
end

Various configuration options are available within the block



80
81
82
83
84
85
86
# File 'lib/simple_admin.rb', line 80

def register(resource, options={}, &block)
  if defined?(@@registered)
    interface = SimpleAdmin::Interface.new(resource, options, &block)
    self.registered << interface
    interface
  end
end

.registeredObject



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/simple_admin.rb', line 41

def registered
  unless defined?(@@registered) && @@registered
    @@registered = []
    # We load up all of the admin files on launch, if they change you need to restart
    begin
      Dir[Rails.root.join("app/admin/**/*.rb")].each {|f| load f}
    rescue LoadError => e
      # For certain kinds of load errors, we want to give a more helpful message
      if e.message.match(/Expected .* to define .*/)
        raise(InvalidAdminFile.new(e))
      else
        raise e
      end
    end
  end
  @@registered
end

.setup {|_self| ... } ⇒ Object

Called by the initializer

SimpleAdmin.setup do |config|
  config.site_title = "My Website"
end

Yields:

  • (_self)

Yield Parameters:

  • _self (SimpleAdmin)

    the object that the method was called on



70
71
72
# File 'lib/simple_admin.rb', line 70

def setup
  yield self
end

.site_titleObject



21
22
23
# File 'lib/simple_admin.rb', line 21

def site_title
  @@site_title || Rails.application.class.parent_name.titleize
end

.stylesheetObject



33
34
35
# File 'lib/simple_admin.rb', line 33

def stylesheet
  @@stylesheet || "/stylesheets/simple_admin/active_admin.css"
end

.unregisterObject

Clear the routes and registered interfaces



60
61
62
# File 'lib/simple_admin.rb', line 60

def unregister
  @@registered = nil
end