activeadmin 1.0.0.pre4 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of activeadmin might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/CHANGELOG.md +529 -52
- data/CODE_OF_CONDUCT.md +64 -12
- data/CONTRIBUTING.md +129 -58
- data/README.md +80 -79
- data/app/assets/javascripts/active_admin/base.es6 +23 -0
- data/app/assets/javascripts/active_admin/ext/jquery-ui.es6 +7 -0
- data/app/assets/javascripts/active_admin/ext/jquery.es6 +9 -0
- data/app/assets/javascripts/active_admin/initializers/datepicker.es6 +16 -0
- data/app/assets/javascripts/active_admin/initializers/filters.es6 +45 -0
- data/app/assets/javascripts/active_admin/initializers/tabs.es6 +6 -0
- data/app/assets/javascripts/active_admin/lib/active_admin.es6 +41 -0
- data/app/assets/javascripts/active_admin/lib/batch_actions.es6 +59 -0
- data/app/assets/javascripts/active_admin/lib/checkbox-toggler.es6 +49 -0
- data/app/assets/javascripts/active_admin/lib/dropdown-menu.es6 +123 -0
- data/app/assets/javascripts/active_admin/lib/has_many.es6 +95 -0
- data/app/assets/javascripts/active_admin/lib/modal_dialog.es6 +61 -0
- data/app/assets/javascripts/active_admin/lib/per_page.es6 +47 -0
- data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 +36 -0
- data/app/assets/stylesheets/active_admin/_base.scss +2 -2
- data/app/assets/stylesheets/active_admin/_forms.scss +19 -26
- data/app/assets/stylesheets/active_admin/components/_batch_actions.scss +0 -5
- data/app/assets/stylesheets/active_admin/components/_pagination.scss +11 -0
- data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
- data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -4
- data/app/assets/stylesheets/active_admin/components/_tables.scss +4 -1
- data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
- data/app/assets/stylesheets/active_admin/mixins/_all.scss +0 -2
- data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
- data/app/assets/stylesheets/active_admin/print.scss +2 -3
- data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
- data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
- data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
- data/app/views/active_admin/devise/registrations/new.html.erb +3 -4
- data/app/views/active_admin/devise/sessions/new.html.erb +2 -2
- data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
- data/app/views/active_admin/devise/shared/_links.erb +12 -6
- data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
- data/app/views/kaminari/active_admin/_first_page.html.erb +11 -0
- data/app/views/kaminari/active_admin/_gap.html.erb +8 -0
- data/app/views/kaminari/active_admin/_last_page.html.erb +11 -0
- data/app/views/kaminari/active_admin/_next_page.html.erb +11 -0
- data/app/views/kaminari/active_admin/_page.html.erb +12 -0
- data/app/views/kaminari/active_admin/_paginator.html.erb +25 -0
- data/app/views/kaminari/active_admin/_prev_page.html.erb +11 -0
- data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
- data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
- data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
- data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
- data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
- data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
- data/app/views/layouts/active_admin_logged_out.html.erb +2 -2
- data/config/locales/ar.yml +4 -5
- data/config/locales/bg.yml +1 -3
- data/config/locales/bs.yml +1 -2
- data/config/locales/ca.yml +2 -4
- data/config/locales/cs.yml +1 -2
- data/config/locales/da.yml +45 -14
- data/config/locales/de-CH.yml +2 -3
- data/config/locales/de.yml +30 -3
- data/config/locales/el.yml +3 -4
- data/config/locales/en-CA.yml +139 -0
- data/config/locales/en-GB.yml +44 -3
- data/config/locales/en.yml +31 -5
- data/config/locales/eo.yml +145 -0
- data/config/locales/es-MX.yml +5 -3
- data/config/locales/es.yml +32 -6
- data/config/locales/fa.yml +1 -2
- data/config/locales/fi.yml +2 -3
- data/config/locales/fr.yml +27 -5
- data/config/locales/he.yml +53 -7
- data/config/locales/hr.yml +1 -2
- data/config/locales/hu.yml +5 -2
- data/config/locales/id.yml +2 -3
- data/config/locales/it.yml +15 -7
- data/config/locales/ja.yml +8 -3
- data/config/locales/ko.yml +1 -2
- data/config/locales/lt.yml +27 -6
- data/config/locales/lv.yml +1 -2
- data/config/locales/mk.yml +134 -0
- data/config/locales/nb.yml +16 -7
- data/config/locales/nl.yml +13 -3
- data/config/locales/pl.yml +75 -5
- data/config/locales/pt-BR.yml +10 -3
- data/config/locales/pt-PT.yml +1 -2
- data/config/locales/ro.yml +1 -2
- data/config/locales/ru.yml +5 -3
- data/config/locales/sk.yml +168 -0
- data/config/locales/sv-SE.yml +4 -3
- data/config/locales/tr.yml +10 -2
- data/config/locales/uk.yml +4 -3
- data/config/locales/vi.yml +48 -8
- data/config/locales/zh-CN.yml +38 -7
- data/config/locales/zh-TW.yml +2 -3
- data/docs/.gitignore +1 -0
- data/docs/0-installation.md +19 -13
- data/docs/1-general-configuration.md +37 -4
- data/docs/10-custom-pages.md +47 -3
- data/docs/11-decorators.md +4 -0
- data/docs/12-arbre-components.md +73 -9
- data/docs/13-authorization-adapter.md +72 -35
- data/docs/14-gotchas.md +57 -19
- data/docs/2-resource-customization.md +64 -20
- data/docs/3-index-pages/custom-index.md +5 -1
- data/docs/3-index-pages/index-as-block.md +3 -5
- data/docs/3-index-pages/index-as-blog.md +4 -6
- data/docs/3-index-pages/index-as-grid.md +3 -5
- data/docs/3-index-pages/index-as-table.md +33 -12
- data/docs/3-index-pages.md +65 -9
- data/docs/4-csv-format.md +16 -0
- data/docs/5-forms.md +78 -17
- data/docs/6-show-pages.md +5 -29
- data/docs/7-sidebars.md +5 -1
- data/docs/8-custom-actions.md +18 -1
- data/docs/9-batch-actions.md +8 -4
- data/docs/CNAME +1 -0
- data/docs/Gemfile +3 -0
- data/docs/Gemfile.lock +248 -0
- data/docs/_config.yml +4 -0
- data/docs/_includes/footer.html +8 -0
- data/docs/_includes/google-analytics.html +16 -0
- data/docs/_includes/head.html +7 -0
- data/docs/_includes/toc.html +98 -0
- data/docs/_includes/top-menu.html +17 -0
- data/docs/_layouts/default.html +21 -0
- data/docs/documentation.md +60 -0
- data/docs/images/activeadmin.png +0 -0
- data/docs/images/code-header.png +0 -0
- data/docs/images/divider.png +0 -0
- data/docs/images/features.png +0 -0
- data/docs/images/tidelift.svg +14 -0
- data/docs/index.html +226 -0
- data/docs/stylesheets/main.css +1205 -0
- data/lib/active_admin/abstract_view_factory.rb +13 -51
- data/lib/active_admin/application.rb +50 -140
- data/lib/active_admin/application_settings.rb +42 -0
- data/lib/active_admin/authorization_adapter.rb +0 -3
- data/lib/active_admin/base_controller/authorization.rb +4 -7
- data/lib/active_admin/base_controller/menu.rb +10 -14
- data/lib/active_admin/base_controller.rb +8 -14
- data/lib/active_admin/batch_actions/controller.rb +3 -3
- data/lib/active_admin/batch_actions/resource_extension.rb +9 -13
- data/lib/active_admin/batch_actions/views/batch_action_form.rb +1 -1
- data/lib/active_admin/batch_actions/views/batch_action_selector.rb +1 -1
- data/lib/active_admin/batch_actions/views/selection_cells.rb +6 -5
- data/lib/active_admin/callbacks.rb +1 -1
- data/lib/active_admin/controller_action.rb +2 -1
- data/lib/active_admin/csv_builder.rb +15 -12
- data/lib/active_admin/dependency.rb +8 -76
- data/lib/active_admin/deprecation.rb +0 -25
- data/lib/active_admin/devise.rb +3 -3
- data/lib/active_admin/dsl.rb +3 -16
- data/lib/active_admin/dynamic_setting.rb +38 -0
- data/lib/active_admin/dynamic_settings_node.rb +28 -0
- data/lib/active_admin/engine.rb +5 -0
- data/lib/active_admin/error.rb +5 -3
- data/lib/active_admin/filters/active.rb +13 -14
- data/lib/active_admin/filters/active_filter.rb +124 -0
- data/lib/active_admin/filters/active_sidebar.rb +54 -0
- data/lib/active_admin/filters/forms.rb +6 -4
- data/lib/active_admin/filters/formtastic_addons.rb +2 -2
- data/lib/active_admin/filters/resource_extension.rb +28 -43
- data/lib/active_admin/filters.rb +2 -0
- data/lib/active_admin/form_builder.rb +100 -59
- data/lib/active_admin/generators/boilerplate.rb +12 -4
- data/lib/active_admin/helpers/collection.rb +2 -0
- data/lib/active_admin/helpers/scope_chain.rb +1 -0
- data/lib/active_admin/inputs/datepicker_input.rb +12 -5
- data/lib/active_admin/inputs/filters/base/search_method_select.rb +2 -2
- data/lib/active_admin/inputs/filters/date_range_input.rb +21 -8
- data/lib/active_admin/inputs/filters/select_input.rb +6 -3
- data/lib/active_admin/inputs/filters/text_input.rb +25 -0
- data/lib/active_admin/inputs.rb +1 -0
- data/lib/active_admin/localizers/resource_localizer.rb +35 -0
- data/lib/active_admin/localizers.rb +11 -0
- data/lib/active_admin/menu.rb +6 -12
- data/lib/active_admin/menu_collection.rb +0 -2
- data/lib/active_admin/menu_item.rb +4 -32
- data/lib/active_admin/namespace.rb +36 -17
- data/lib/active_admin/namespace_settings.rb +123 -0
- data/lib/active_admin/order_clause.rb +30 -8
- data/lib/active_admin/orm/active_record/comments/comment.rb +3 -17
- data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +19 -7
- data/lib/active_admin/orm/active_record/comments.rb +17 -11
- data/lib/active_admin/page.rb +23 -4
- data/lib/active_admin/page_controller.rb +2 -6
- data/lib/active_admin/page_dsl.rb +5 -1
- data/lib/active_admin/page_presenter.rb +2 -1
- data/lib/active_admin/pundit_adapter.rb +18 -5
- data/lib/active_admin/resource/action_items.rb +17 -5
- data/lib/active_admin/resource/attributes.rb +47 -0
- data/lib/active_admin/resource/belongs_to.rb +10 -1
- data/lib/active_admin/resource/menu.rb +7 -4
- data/lib/active_admin/resource/model.rb +15 -0
- data/lib/active_admin/resource/naming.rb +3 -3
- data/lib/active_admin/resource/ordering.rb +11 -0
- data/lib/active_admin/resource/page_presenters.rb +1 -1
- data/lib/active_admin/resource/routes.rb +52 -20
- data/lib/active_admin/resource/scopes.rb +5 -3
- data/lib/active_admin/resource/sidebars.rb +1 -1
- data/lib/active_admin/resource.rb +59 -7
- data/lib/active_admin/resource_collection.rb +2 -2
- data/lib/active_admin/resource_controller/action_builder.rb +10 -0
- data/lib/active_admin/resource_controller/data_access.rb +32 -27
- data/lib/active_admin/resource_controller/decorators.rb +5 -5
- data/lib/active_admin/resource_controller/polymorphic_routes.rb +36 -0
- data/lib/active_admin/resource_controller/resource_class_methods.rb +2 -0
- data/lib/active_admin/resource_controller/scoping.rb +1 -1
- data/lib/active_admin/resource_controller.rb +15 -0
- data/lib/active_admin/resource_dsl.rb +58 -24
- data/lib/active_admin/router.rb +90 -82
- data/lib/active_admin/scope.rb +20 -12
- data/lib/active_admin/settings_node.rb +19 -0
- data/lib/active_admin/sidebar_section.rb +3 -1
- data/lib/active_admin/version.rb +1 -1
- data/lib/active_admin/view_helpers/auto_link_helper.rb +2 -2
- data/lib/active_admin/view_helpers/breadcrumb_helper.rb +2 -2
- data/lib/active_admin/view_helpers/display_helper.rb +28 -16
- data/lib/active_admin/view_helpers/download_format_links_helper.rb +13 -0
- data/lib/active_admin/view_helpers/fields_for.rb +1 -2
- data/lib/active_admin/view_helpers/form_helper.rb +2 -2
- data/lib/active_admin/view_helpers/method_or_proc_helper.rb +8 -1
- data/lib/active_admin/view_helpers/scope_name_helper.rb +16 -0
- data/lib/active_admin/view_helpers.rb +2 -1
- data/lib/active_admin/views/action_items.rb +1 -1
- data/lib/active_admin/views/components/active_admin_form.rb +43 -11
- data/lib/active_admin/views/components/attributes_table.rb +4 -4
- data/lib/active_admin/views/components/columns.rb +3 -3
- data/lib/active_admin/views/components/dropdown_menu.rb +4 -4
- data/lib/active_admin/views/components/index_list.rb +4 -3
- data/lib/active_admin/views/components/menu.rb +32 -0
- data/lib/active_admin/views/components/menu_item.rb +58 -0
- data/lib/active_admin/views/components/paginated_collection.rb +7 -11
- data/lib/active_admin/views/components/scopes.rb +14 -8
- data/lib/active_admin/views/components/sidebar.rb +13 -0
- data/lib/active_admin/views/components/site_title.rb +5 -6
- data/lib/active_admin/views/components/status_tag.rb +11 -16
- data/lib/active_admin/views/components/table_for.rb +7 -16
- data/lib/active_admin/views/components/tabs.rb +15 -3
- data/lib/active_admin/views/footer.rb +14 -4
- data/lib/active_admin/views/header.rb +3 -16
- data/lib/active_admin/views/index_as_blog.rb +2 -3
- data/lib/active_admin/views/index_as_grid.rb +25 -25
- data/lib/active_admin/views/index_as_table.rb +39 -13
- data/lib/active_admin/views/pages/base.rb +36 -57
- data/lib/active_admin/views/pages/form.rb +2 -3
- data/lib/active_admin/views/pages/layout.rb +1 -1
- data/lib/active_admin/views/pages/show.rb +8 -2
- data/lib/active_admin/views/tabbed_navigation.rb +4 -59
- data/lib/active_admin/views/title_bar.rb +4 -4
- data/lib/active_admin/views.rb +1 -1
- data/lib/active_admin.rb +11 -7
- data/lib/generators/active_admin/assets/assets_generator.rb +2 -2
- data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
- data/lib/generators/active_admin/devise/devise_generator.rb +8 -5
- data/lib/generators/active_admin/install/install_generator.rb +7 -3
- data/lib/generators/active_admin/install/templates/active_admin.rb.erb +60 -4
- data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +1 -3
- data/lib/generators/active_admin/install/templates/dashboard.rb +2 -3
- data/lib/generators/active_admin/install/templates/migrations/{create_active_admin_comments.rb → create_active_admin_comments.rb.erb} +2 -5
- data/lib/generators/active_admin/page/page_generator.rb +1 -1
- data/lib/generators/active_admin/resource/resource_generator.rb +2 -2
- data/lib/generators/active_admin/resource/templates/admin.rb.erb +46 -0
- data/lib/ransack_ext.rb +5 -5
- data/vendor/assets/javascripts/jquery-ui/data.js +41 -0
- data/vendor/assets/javascripts/jquery-ui/disable-selection.js +48 -0
- data/vendor/assets/javascripts/jquery-ui/escape-selector.js +23 -0
- data/vendor/assets/javascripts/jquery-ui/focusable.js +86 -0
- data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
- data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
- data/vendor/assets/javascripts/jquery-ui/ie.js +17 -0
- data/vendor/assets/javascripts/jquery-ui/keycode.js +47 -0
- data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
- data/vendor/assets/javascripts/jquery-ui/plugin.js +46 -0
- data/vendor/assets/javascripts/jquery-ui/position.js +500 -0
- data/vendor/assets/javascripts/jquery-ui/safe-active-element.js +42 -0
- data/vendor/assets/javascripts/jquery-ui/safe-blur.js +23 -0
- data/vendor/assets/javascripts/jquery-ui/scroll-parent.js +47 -0
- data/vendor/assets/javascripts/jquery-ui/tabbable.js +38 -0
- data/vendor/assets/javascripts/jquery-ui/unique-id.js +51 -0
- data/vendor/assets/javascripts/jquery-ui/version.js +17 -0
- data/vendor/assets/javascripts/jquery-ui/widget.js +735 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/button.js +391 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +291 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +300 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +2123 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +954 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +1259 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +230 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +1207 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +1561 -0
- data/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +931 -0
- data/vendor/assets/stylesheets/active_admin/_normalize.scss +447 -0
- metadata +190 -539
- data/.gitignore +0 -49
- data/.hound.yml +0 -14
- data/.travis.yml +0 -46
- data/.yardopts +0 -8
- data/Gemfile +0 -75
- data/Guardfile +0 -8
- data/Rakefile +0 -33
- data/activeadmin.gemspec +0 -31
- data/app/assets/images/active_admin/datepicker/datepicker-input-icon.png +0 -0
- data/app/assets/javascripts/active_admin/base.js.coffee +0 -9
- data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
- data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
- data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -7
- data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -10
- data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -15
- data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -3
- data/app/assets/javascripts/active_admin/jquery_ui.js.erb +0 -11
- data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -39
- data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -36
- data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -101
- data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
- data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
- data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
- data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -31
- data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -24
- data/app/assets/stylesheets/active_admin/mixins/_reset.scss +0 -165
- data/cucumber.yml +0 -3
- data/features/action_item.feature +0 -73
- data/features/authorization.feature +0 -64
- data/features/authorization_cancan.feature +0 -52
- data/features/authorization_pundit.feature +0 -37
- data/features/belongs_to.feature +0 -66
- data/features/breadcrumb.feature +0 -75
- data/features/comments/commenting.feature +0 -171
- data/features/comments/viewing_index.feature +0 -19
- data/features/dashboard.feature +0 -16
- data/features/decorators.feature +0 -43
- data/features/development_reloading.feature +0 -30
- data/features/edit_page.feature +0 -117
- data/features/favicon.feature +0 -20
- data/features/first_boot.feature +0 -16
- data/features/global_navigation.feature +0 -29
- data/features/i18n.feature +0 -43
- data/features/index/batch_actions.feature +0 -196
- data/features/index/filters.feature +0 -161
- data/features/index/format_as_csv.feature +0 -203
- data/features/index/formats.feature +0 -66
- data/features/index/index_as_block.feature +0 -15
- data/features/index/index_as_blog.feature +0 -69
- data/features/index/index_as_grid.feature +0 -45
- data/features/index/index_as_table.feature +0 -291
- data/features/index/index_blank_slate.feature +0 -83
- data/features/index/index_parameters.feature +0 -75
- data/features/index/index_scope_to.feature +0 -56
- data/features/index/index_scopes.feature +0 -251
- data/features/index/page_title.feature +0 -42
- data/features/index/pagination.feature +0 -63
- data/features/index/switch_index_view.feature +0 -73
- data/features/menu.feature +0 -53
- data/features/meta_tags.feature +0 -21
- data/features/new_page.feature +0 -109
- data/features/registering_assets.feature +0 -34
- data/features/registering_pages.feature +0 -148
- data/features/registering_resources.feature +0 -33
- data/features/renamed_resource.feature +0 -32
- data/features/root_to.feature +0 -17
- data/features/show/columns.feature +0 -40
- data/features/show/default_content.feature +0 -44
- data/features/show/page_title.feature +0 -59
- data/features/show/tabs.feature +0 -27
- data/features/sidebar_sections.feature +0 -210
- data/features/site_title.feature +0 -47
- data/features/specifying_actions.feature +0 -93
- data/features/step_definitions/action_item_steps.rb +0 -7
- data/features/step_definitions/action_link_steps.rb +0 -20
- data/features/step_definitions/additional_web_steps.rb +0 -81
- data/features/step_definitions/asset_steps.rb +0 -15
- data/features/step_definitions/attribute_steps.rb +0 -18
- data/features/step_definitions/batch_action_steps.rb +0 -81
- data/features/step_definitions/blog_steps.rb +0 -3
- data/features/step_definitions/breadcrumb_steps.rb +0 -3
- data/features/step_definitions/column_steps.rb +0 -8
- data/features/step_definitions/comment_steps.rb +0 -12
- data/features/step_definitions/configuration_steps.rb +0 -100
- data/features/step_definitions/dashboard_steps.rb +0 -15
- data/features/step_definitions/factory_steps.rb +0 -35
- data/features/step_definitions/filter_steps.rb +0 -39
- data/features/step_definitions/flash_steps.rb +0 -11
- data/features/step_definitions/format_steps.rb +0 -52
- data/features/step_definitions/i18n_steps.rb +0 -3
- data/features/step_definitions/index_scope_steps.rb +0 -21
- data/features/step_definitions/index_views_steps.rb +0 -3
- data/features/step_definitions/layout_steps.rb +0 -3
- data/features/step_definitions/member_link_steps.rb +0 -7
- data/features/step_definitions/menu_steps.rb +0 -11
- data/features/step_definitions/meta_tag_steps.rb +0 -3
- data/features/step_definitions/pagination_steps.rb +0 -15
- data/features/step_definitions/sidebar_steps.rb +0 -13
- data/features/step_definitions/site_title_steps.rb +0 -17
- data/features/step_definitions/symbol_leak_steps.rb +0 -3
- data/features/step_definitions/tab_steps.rb +0 -8
- data/features/step_definitions/table_steps.rb +0 -120
- data/features/step_definitions/user_steps.rb +0 -45
- data/features/step_definitions/web_steps.rb +0 -85
- data/features/sti_resource.feature +0 -65
- data/features/strong_parameters.feature +0 -73
- data/features/support/env.rb +0 -162
- data/features/support/paths.rb +0 -71
- data/features/support/selectors.rb +0 -45
- data/features/symbol_leak.feature +0 -35
- data/features/users/logging_in.feature +0 -34
- data/features/users/logging_out.feature +0 -13
- data/features/users/resetting_password.feature +0 -34
- data/lib/active_admin/event.rb +0 -24
- data/lib/active_admin/filters/humanized.rb +0 -68
- data/lib/active_admin/helpers/settings.rb +0 -115
- data/lib/active_admin/reloader.rb +0 -25
- data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
- data/lib/generators/active_admin/resource/templates/admin.rb +0 -45
- data/script/local +0 -53
- data/script/travis_cache +0 -107
- data/script/use_rails +0 -53
- data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
- data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
- data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
- data/spec/javascripts/fixtures/checkboxes.html +0 -9
- data/spec/javascripts/fixtures/flashes.html +0 -2
- data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
- data/spec/javascripts/helpers/SpecHelper.js +0 -3
- data/spec/javascripts/support/jasmine.yml +0 -74
- data/spec/javascripts/support/jasmine_config.rb +0 -23
- data/spec/javascripts/support/jasmine_runner.rb +0 -32
- data/spec/rails_helper.rb +0 -169
- data/spec/requests/default_namespace_spec.rb +0 -61
- data/spec/requests/javascript_spec.rb +0 -22
- data/spec/requests/memory_spec.rb +0 -21
- data/spec/requests/stylesheets_spec.rb +0 -18
- data/spec/spec_helper.rb +0 -17
- data/spec/support/active_admin_request_helpers.rb +0 -27
- data/spec/support/deferred_garbage_collection.rb +0 -19
- data/spec/support/detect_rails_version.rb +0 -34
- data/spec/support/jslint.yml +0 -80
- data/spec/support/rails_template.rb +0 -158
- data/spec/support/rails_template_with_data.rb +0 -55
- data/spec/support/templates/admin/stores.rb +0 -9
- data/spec/support/templates/en.yml +0 -8
- data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
- data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
- data/spec/support/templates/policies/admin_user_policy.rb +0 -11
- data/spec/support/templates/policies/application_policy.rb +0 -45
- data/spec/support/templates/policies/category_policy.rb +0 -7
- data/spec/support/templates/policies/post_policy.rb +0 -15
- data/spec/support/templates/policies/store_policy.rb +0 -11
- data/spec/support/templates/policies/user_policy.rb +0 -11
- data/spec/support/templates/post_decorator.rb +0 -11
- data/spec/unit/abstract_view_factory_spec.rb +0 -79
- data/spec/unit/action_builder_spec.rb +0 -134
- data/spec/unit/active_admin_spec.rb +0 -11
- data/spec/unit/application_spec.rb +0 -165
- data/spec/unit/asset_registration_spec.rb +0 -52
- data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
- data/spec/unit/authorization/controller_authorization_spec.rb +0 -39
- data/spec/unit/authorization/index_overriding_spec.rb +0 -23
- data/spec/unit/auto_link_spec.rb +0 -69
- data/spec/unit/batch_actions/resource_spec.rb +0 -97
- data/spec/unit/batch_actions/settings_spec.rb +0 -61
- data/spec/unit/belongs_to_spec.rb +0 -65
- data/spec/unit/cancan_adapter_spec.rb +0 -43
- data/spec/unit/comments_spec.rb +0 -188
- data/spec/unit/component_spec.rb +0 -18
- data/spec/unit/config_shared_examples.rb +0 -59
- data/spec/unit/controller_filters_spec.rb +0 -41
- data/spec/unit/csv_builder_spec.rb +0 -303
- data/spec/unit/dependency_spec.rb +0 -135
- data/spec/unit/devise_spec.rb +0 -96
- data/spec/unit/dsl_spec.rb +0 -122
- data/spec/unit/filters/filter_form_builder_spec.rb +0 -434
- data/spec/unit/filters/humanized_spec.rb +0 -56
- data/spec/unit/filters/resource_spec.rb +0 -128
- data/spec/unit/form_builder_spec.rb +0 -815
- data/spec/unit/generators/install_spec.rb +0 -24
- data/spec/unit/helpers/collection_spec.rb +0 -65
- data/spec/unit/helpers/scope_chain_spec.rb +0 -36
- data/spec/unit/helpers/settings_spec.rb +0 -30
- data/spec/unit/i18n_spec.rb +0 -12
- data/spec/unit/menu_collection_spec.rb +0 -62
- data/spec/unit/menu_item_spec.rb +0 -143
- data/spec/unit/menu_spec.rb +0 -71
- data/spec/unit/namespace/authorization_spec.rb +0 -27
- data/spec/unit/namespace/register_page_spec.rb +0 -73
- data/spec/unit/namespace/register_resource_spec.rb +0 -160
- data/spec/unit/namespace_spec.rb +0 -103
- data/spec/unit/order_clause_spec.rb +0 -81
- data/spec/unit/page_controller_spec.rb +0 -5
- data/spec/unit/page_spec.rb +0 -78
- data/spec/unit/pretty_format_spec.rb +0 -77
- data/spec/unit/pundit_adapter_spec.rb +0 -98
- data/spec/unit/resource/action_items_spec.rb +0 -65
- data/spec/unit/resource/includes_spec.rb +0 -21
- data/spec/unit/resource/menu_spec.rb +0 -18
- data/spec/unit/resource/naming_spec.rb +0 -122
- data/spec/unit/resource/page_presenters_spec.rb +0 -44
- data/spec/unit/resource/pagination_spec.rb +0 -38
- data/spec/unit/resource/routes_spec.rb +0 -77
- data/spec/unit/resource/scopes_spec.rb +0 -50
- data/spec/unit/resource/sidebars_spec.rb +0 -43
- data/spec/unit/resource_collection_spec.rb +0 -175
- data/spec/unit/resource_controller/data_access_spec.rb +0 -140
- data/spec/unit/resource_controller/decorators_spec.rb +0 -94
- data/spec/unit/resource_controller/sidebars_spec.rb +0 -38
- data/spec/unit/resource_controller_spec.rb +0 -269
- data/spec/unit/resource_registration_spec.rb +0 -56
- data/spec/unit/resource_spec.rb +0 -331
- data/spec/unit/routing_spec.rb +0 -185
- data/spec/unit/scope_spec.rb +0 -185
- data/spec/unit/settings_spec.rb +0 -118
- data/spec/unit/view_factory_spec.rb +0 -19
- data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -217
- data/spec/unit/view_helpers/display_helper_spec.rb +0 -165
- data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
- data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
- data/spec/unit/view_helpers/flash_helper_spec.rb +0 -25
- data/spec/unit/view_helpers/form_helper_spec.rb +0 -43
- data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -139
- data/spec/unit/views/components/attributes_table_spec.rb +0 -272
- data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
- data/spec/unit/views/components/blank_slate_spec.rb +0 -27
- data/spec/unit/views/components/columns_spec.rb +0 -189
- data/spec/unit/views/components/index_list_spec.rb +0 -35
- data/spec/unit/views/components/index_table_for_spec.rb +0 -127
- data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
- data/spec/unit/views/components/panel_spec.rb +0 -58
- data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
- data/spec/unit/views/components/site_title_spec.rb +0 -78
- data/spec/unit/views/components/status_tag_spec.rb +0 -249
- data/spec/unit/views/components/table_for_spec.rb +0 -434
- data/spec/unit/views/components/tabs_spec.rb +0 -39
- data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
- data/spec/unit/views/index_as_blog_spec.rb +0 -76
- data/spec/unit/views/pages/form_spec.rb +0 -51
- data/spec/unit/views/pages/index_spec.rb +0 -60
- data/spec/unit/views/pages/layout_spec.rb +0 -59
- data/spec/unit/views/pages/show_spec.rb +0 -33
- data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
- data/tasks/docs.rake +0 -37
- data/tasks/parallel_tests.rake +0 -66
- data/tasks/test.rake +0 -91
- data/tasks/yard.rake +0 -9
data/docs/3-index-pages.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/3-index-pages.html
|
3
|
+
---
|
4
|
+
|
1
5
|
# Customizing the Index Page
|
2
6
|
|
3
7
|
Filtering and listing resources is one of the most important tasks for
|
@@ -77,7 +81,8 @@ end
|
|
77
81
|
|
78
82
|
Out of the box, Active Admin supports the following filter types:
|
79
83
|
|
80
|
-
* *:string* -
|
84
|
+
* *:string* - A drop down for selecting "Contains", "Equals", "Starts with",
|
85
|
+
"Ends with" and an input for a value.
|
81
86
|
* *:date_range* - A start and end date field with calendar inputs
|
82
87
|
* *:numeric* - A drop down for selecting "Equal To", "Greater Than" or "Less
|
83
88
|
Than" and an input for a value.
|
@@ -100,6 +105,24 @@ the collection as a proc to be called at render time.
|
|
100
105
|
filter :author, as: :check_boxes, collection: proc { Author.all }
|
101
106
|
```
|
102
107
|
|
108
|
+
To override options for string or numeric filter pass `filters` option.
|
109
|
+
|
110
|
+
```ruby
|
111
|
+
filter :title, filters: [:starts_with, :ends_with]
|
112
|
+
```
|
113
|
+
|
114
|
+
Also, if you don't need the select with the options 'contains', 'equals',
|
115
|
+
'starts_with' or 'ends_with' just add the option to the filter name with an
|
116
|
+
underscore.
|
117
|
+
|
118
|
+
For example:
|
119
|
+
|
120
|
+
```ruby
|
121
|
+
filter :name_equals
|
122
|
+
# or
|
123
|
+
filter :name_contains
|
124
|
+
```
|
125
|
+
|
103
126
|
You can change the filter label by passing a label option:
|
104
127
|
|
105
128
|
```ruby
|
@@ -108,9 +131,11 @@ filter :author, label: 'Something else'
|
|
108
131
|
|
109
132
|
By default, Active Admin will try to use ActiveModel I18n to determine the label.
|
110
133
|
|
111
|
-
You can also filter on more than one attribute of a model using the
|
112
|
-
|
113
|
-
|
134
|
+
You can also filter on more than one attribute of a model using the [Ransack
|
135
|
+
search predicate
|
136
|
+
syntax](https://github.com/activerecord-hackery/ransack/wiki/Basic-Searching).
|
137
|
+
If using a custom search method, you will also need to specify the field type
|
138
|
+
using `:as` and the label.
|
114
139
|
|
115
140
|
```ruby
|
116
141
|
filter :first_name_or_last_name_cont, as: :string, label: "Name"
|
@@ -162,8 +187,8 @@ remove_filter :id
|
|
162
187
|
## Index Scopes
|
163
188
|
|
164
189
|
You can define custom scopes for your index page. This will add a tab bar above
|
165
|
-
the index table to quickly filter your collection on pre-defined scopes. There
|
166
|
-
a number of ways to define your scopes:
|
190
|
+
the index table to quickly filter your collection on pre-defined scopes. There
|
191
|
+
are a number of ways to define your scopes:
|
167
192
|
|
168
193
|
```ruby
|
169
194
|
scope :all, default: true
|
@@ -181,11 +206,31 @@ scope ->{ Date.today.strftime '%A' }, :published_today
|
|
181
206
|
scope("Inactive") { |scope| scope.where(active: false) }
|
182
207
|
|
183
208
|
# conditionally show a custom controller scope
|
184
|
-
scope "Published", if:
|
209
|
+
scope "Published", if: -> { current_admin_user.can? :manage, Posts } do |posts|
|
185
210
|
posts.published
|
186
211
|
end
|
187
212
|
```
|
188
213
|
|
214
|
+
Scopes can be labelled with a translation, e.g.
|
215
|
+
`activerecord.scopes.invoice.expired`.
|
216
|
+
|
217
|
+
### Scopes groups
|
218
|
+
|
219
|
+
You can assign group names to scopes to keep related scopes together and separate them from the rest.
|
220
|
+
|
221
|
+
```ruby
|
222
|
+
# a scope in the default group
|
223
|
+
scope :all
|
224
|
+
|
225
|
+
# two scopes used to filter by status
|
226
|
+
scope :active, group: :status
|
227
|
+
scope :inactive, group: :status
|
228
|
+
|
229
|
+
# two scopes used to filter by date
|
230
|
+
scope :today, group: :date
|
231
|
+
scope :tomorrow, group: :date
|
232
|
+
```
|
233
|
+
|
189
234
|
## Index default sort order
|
190
235
|
|
191
236
|
You can define the default sort order for index pages:
|
@@ -214,6 +259,14 @@ ActiveAdmin.register Post do
|
|
214
259
|
end
|
215
260
|
```
|
216
261
|
|
262
|
+
Or allow users to choose themselves using dropdown with values
|
263
|
+
|
264
|
+
```ruby
|
265
|
+
ActiveAdmin.register Post do
|
266
|
+
config.per_page = [10, 50, 100]
|
267
|
+
end
|
268
|
+
```
|
269
|
+
|
217
270
|
You can change it per request / action too:
|
218
271
|
|
219
272
|
```ruby
|
@@ -267,6 +320,9 @@ ActiveAdmin.setup do |config|
|
|
267
320
|
end
|
268
321
|
```
|
269
322
|
|
270
|
-
Note: you have to actually implement PDF rendering for your action, ActiveAdmin
|
323
|
+
Note: you have to actually implement PDF rendering for your action, ActiveAdmin
|
324
|
+
does not provide this feature. This setting just allows you to specify formats
|
325
|
+
that you want to show up under the index collection.
|
271
326
|
|
272
|
-
You'll need to use a PDF rendering library like PDFKit or WickedPDF to get the
|
327
|
+
You'll need to use a PDF rendering library like PDFKit or WickedPDF to get the
|
328
|
+
PDF generation you want.
|
data/docs/4-csv-format.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/4-csv-format.html
|
3
|
+
---
|
4
|
+
|
1
5
|
# Customizing the CSV format
|
2
6
|
|
3
7
|
Active Admin provides CSV file downloads on the index screen for each Resource.
|
@@ -39,6 +43,18 @@ config.csv_options = { col_sep: ';' }
|
|
39
43
|
config.csv_options = { force_quotes: true }
|
40
44
|
```
|
41
45
|
|
46
|
+
You can customize the filename by overriding `csv_filename` in the controller block.
|
47
|
+
|
48
|
+
```ruby
|
49
|
+
ActiveAdmin.register User do
|
50
|
+
controller do
|
51
|
+
def csv_filename
|
52
|
+
'User Details.csv'
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
```
|
57
|
+
|
42
58
|
## Streaming
|
43
59
|
|
44
60
|
By default Active Admin streams the CSV response to your browser as it's generated.
|
data/docs/5-forms.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/5-forms.html
|
3
|
+
---
|
4
|
+
|
1
5
|
# Forms
|
2
6
|
|
3
7
|
Active Admin gives you complete control over the output of the form by creating
|
@@ -24,7 +28,7 @@ ActiveAdmin.register Post do
|
|
24
28
|
end
|
25
29
|
```
|
26
30
|
|
27
|
-
For more details, please see Formtastic's documentation.
|
31
|
+
For more details, please see [Formtastic's documentation](https://github.com/justinfrench/formtastic/wiki).
|
28
32
|
|
29
33
|
## Default
|
30
34
|
|
@@ -60,7 +64,8 @@ end
|
|
60
64
|
|
61
65
|
This is a regular Rails partial so any template engine may be used.
|
62
66
|
|
63
|
-
You can also use the `ActiveAdmin::FormBuilder` as builder in your Formtastic
|
67
|
+
You can also use the `ActiveAdmin::FormBuilder` as builder in your Formtastic
|
68
|
+
Form for use the same helpers are used in the admin file:
|
64
69
|
|
65
70
|
```ruby
|
66
71
|
= semantic_form_for [:admin, @post], builder: ActiveAdmin::FormBuilder do |f|
|
@@ -74,10 +79,17 @@ You can also use the `ActiveAdmin::FormBuilder` as builder in your Formtastic Fo
|
|
74
79
|
|
75
80
|
## Nested Resources
|
76
81
|
|
77
|
-
You can create forms with nested models using the `has_many` method, even if
|
82
|
+
You can create forms with nested models using the `has_many` method, even if
|
83
|
+
your model uses `has_one`:
|
78
84
|
|
79
85
|
```ruby
|
80
86
|
ActiveAdmin.register Post do
|
87
|
+
permit_params :title,
|
88
|
+
:published_at,
|
89
|
+
:body,
|
90
|
+
categories_attributes: [:id, :title, :_destroy],
|
91
|
+
taggings_attributes: [:id, :tag],
|
92
|
+
comment_attributes: [:id, :body, :_destroy]
|
81
93
|
|
82
94
|
form do |f|
|
83
95
|
f.inputs 'Details' do
|
@@ -86,7 +98,9 @@ ActiveAdmin.register Post do
|
|
86
98
|
end
|
87
99
|
f.inputs 'Content', :body
|
88
100
|
f.inputs do
|
89
|
-
f.has_many :categories, heading: 'Themes',
|
101
|
+
f.has_many :categories, heading: 'Themes',
|
102
|
+
allow_destroy: true,
|
103
|
+
new_record: false do |a|
|
90
104
|
a.input :title
|
91
105
|
end
|
92
106
|
end
|
@@ -96,7 +110,9 @@ ActiveAdmin.register Post do
|
|
96
110
|
end
|
97
111
|
end
|
98
112
|
f.inputs do
|
99
|
-
f.has_many :comment,
|
113
|
+
f.has_many :comment,
|
114
|
+
new_record: 'Leave Comment',
|
115
|
+
allow_destroy: -> (c) { c.author?(current_admin_user) } do |b|
|
100
116
|
b.input :body
|
101
117
|
end
|
102
118
|
end
|
@@ -106,32 +122,55 @@ ActiveAdmin.register Post do
|
|
106
122
|
end
|
107
123
|
```
|
108
124
|
|
125
|
+
*NOTE*: In addition to using `has_many` as illustrated above, you'll need to add
|
126
|
+
`accepts_nested_attributes` to your parent model and [configure strong parameters](https://activeadmin.info/2-resource-customization.html)
|
127
|
+
|
109
128
|
The `:allow_destroy` option adds a checkbox to the end of the nested form allowing
|
110
129
|
removal of the child object upon submission. Be sure to set `allow_destroy: true`
|
111
|
-
on the association to use this option.
|
130
|
+
on the association to use this option. It is possible to associate
|
131
|
+
`:allow_destroy` with a string or a symbol, corresponding to the name of a child
|
132
|
+
object's method that will get called, or with a Proc object. The Proc object
|
133
|
+
receives the child object as a parameter and should return either true or false.
|
112
134
|
|
113
|
-
The `:heading` option adds a custom heading. You can hide it entirely by passing
|
135
|
+
The `:heading` option adds a custom heading. You can hide it entirely by passing
|
136
|
+
`false`.
|
114
137
|
|
115
|
-
The `:new_record` option controls the visibility of the new record button (shown
|
116
|
-
If you pass a string, it will be used as the text for the new
|
138
|
+
The `:new_record` option controls the visibility of the new record button (shown
|
139
|
+
by default). If you pass a string, it will be used as the text for the new
|
140
|
+
record button.
|
117
141
|
|
118
|
-
The `:sortable` option adds a hidden field and will enable drag & drop sorting
|
119
|
-
expects the name of the column that will store the index of
|
142
|
+
The `:sortable` option adds a hidden field and will enable drag & drop sorting
|
143
|
+
of the children. It expects the name of the column that will store the index of
|
144
|
+
each child.
|
120
145
|
|
121
|
-
The `:sortable_start` option sets the value (0 by default) of the first position
|
146
|
+
The `:sortable_start` option sets the value (0 by default) of the first position
|
147
|
+
in the list.
|
122
148
|
|
123
149
|
## Datepicker
|
124
150
|
|
125
|
-
ActiveAdmin offers the `datepicker` input, which uses the [jQuery UI
|
126
|
-
The datepicker input accepts any
|
151
|
+
ActiveAdmin offers the `datepicker` input, which uses the [jQuery UI
|
152
|
+
datepicker](http://jqueryui.com/datepicker/). The datepicker input accepts any
|
153
|
+
of the options available to the standard jQueryUI Datepicker. For example:
|
127
154
|
|
128
155
|
```ruby
|
129
156
|
form do |f|
|
130
|
-
f.input :starts_at, as: :datepicker,
|
131
|
-
|
157
|
+
f.input :starts_at, as: :datepicker,
|
158
|
+
datepicker_options: {
|
159
|
+
min_date: "2013-10-8",
|
160
|
+
max_date: "+3D"
|
161
|
+
}
|
162
|
+
|
163
|
+
f.input :ends_at, as: :datepicker,
|
164
|
+
datepicker_options: {
|
165
|
+
min_date: 3.days.ago.to_date,
|
166
|
+
max_date: "+1W +5D"
|
167
|
+
}
|
132
168
|
end
|
133
169
|
```
|
134
170
|
|
171
|
+
Datepicker also accepts the `:label` option as a string or proc to display.
|
172
|
+
If it's a proc, it will be called each time the datepicker is rendered.
|
173
|
+
|
135
174
|
## Displaying Errors
|
136
175
|
|
137
176
|
To display a list of all validation errors:
|
@@ -160,7 +199,7 @@ You can arrange content in tabs as shown below:
|
|
160
199
|
end
|
161
200
|
end
|
162
201
|
|
163
|
-
tab 'Advanced' do
|
202
|
+
tab 'Advanced', html_options: { class: 'specific_css_class' } do
|
164
203
|
f.inputs 'Advanced Details' do
|
165
204
|
f.input :role
|
166
205
|
end
|
@@ -169,3 +208,25 @@ You can arrange content in tabs as shown below:
|
|
169
208
|
f.actions
|
170
209
|
end
|
171
210
|
```
|
211
|
+
|
212
|
+
`html_options` allows you set additional html params for tab's menu item.
|
213
|
+
|
214
|
+
# Customize the Create Another checkbox
|
215
|
+
|
216
|
+
In order to simplify creating multiple resources you may enable ActiveAdmin to
|
217
|
+
show nice "Create Another" checkbox alongside of Create Model button. It may be
|
218
|
+
enabled for the whole application:
|
219
|
+
|
220
|
+
```ruby
|
221
|
+
ActiveAdmin.setup do |config|
|
222
|
+
config.create_another = true
|
223
|
+
end
|
224
|
+
```
|
225
|
+
|
226
|
+
or for the particular resource:
|
227
|
+
|
228
|
+
```ruby
|
229
|
+
ActiveAdmin.register Post do
|
230
|
+
config.create_another = true
|
231
|
+
end
|
232
|
+
```
|
data/docs/6-show-pages.md
CHANGED
@@ -1,6 +1,10 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/6-show-pages.html
|
3
|
+
---
|
1
4
|
# Customize the Show Page
|
2
5
|
|
3
|
-
The show block is rendered within the context of the view and uses
|
6
|
+
The show block is rendered within the context of the view and uses
|
7
|
+
[Arbre](https://github.com/activeadmin/arbre) syntax.
|
4
8
|
|
5
9
|
With the `show` block, you can render anything you want.
|
6
10
|
|
@@ -75,31 +79,3 @@ ActiveAdmin.register Book do
|
|
75
79
|
end
|
76
80
|
end
|
77
81
|
```
|
78
|
-
|
79
|
-
# Tabs
|
80
|
-
|
81
|
-
You can arrange content in tabs as shown below:
|
82
|
-
|
83
|
-
```ruby
|
84
|
-
ActiveAdmin.register Order do
|
85
|
-
show do
|
86
|
-
tabs do
|
87
|
-
tab 'Overview' do
|
88
|
-
attributes_table do
|
89
|
-
row(:status) { status_tag(order.status) }
|
90
|
-
row(:paid) { number_to_currency(order.amount_paid_in_dollars) }
|
91
|
-
end
|
92
|
-
end
|
93
|
-
|
94
|
-
tab 'Payments' do
|
95
|
-
table_for order.payments do
|
96
|
-
column('Payment Type') { |p| p.payment_type.titleize }
|
97
|
-
column('Received On', :created_at)
|
98
|
-
column('Payment Details & Notes', :notes)
|
99
|
-
column('Amount') { |p| number_to_currency(p.amount_in_dollars) }
|
100
|
-
end
|
101
|
-
end
|
102
|
-
end
|
103
|
-
end
|
104
|
-
end
|
105
|
-
```
|
data/docs/7-sidebars.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/7-sidebars.html
|
3
|
+
---
|
1
4
|
# Sidebar Sections
|
2
5
|
|
3
6
|
Sidebars allow you to put whatever content you want on the side the page.
|
@@ -65,7 +68,8 @@ By default sidebars are positioned in the same order as they defined, but it's a
|
|
65
68
|
possible to specify their position manually:
|
66
69
|
|
67
70
|
```ruby
|
68
|
-
|
71
|
+
# will push Help section to the top (above default Filters section)
|
72
|
+
sidebar :help, priority: 0
|
69
73
|
```
|
70
74
|
|
71
75
|
Default sidebar priority is `10`.
|
data/docs/8-custom-actions.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/8-custom-actions.html
|
3
|
+
---
|
4
|
+
|
1
5
|
# Custom Controller Actions
|
2
6
|
|
3
7
|
Active Admin allows you to override and modify the underlying controller which
|
@@ -135,11 +139,24 @@ end
|
|
135
139
|
Actions items also accept the `:if` option to conditionally display them:
|
136
140
|
|
137
141
|
```ruby
|
138
|
-
action_item :super_action,
|
142
|
+
action_item :super_action,
|
143
|
+
only: :show,
|
144
|
+
if: proc{ current_admin_user.super_admin? } do
|
139
145
|
"Only display this to super admins on the show screen"
|
140
146
|
end
|
141
147
|
```
|
142
148
|
|
149
|
+
By default action items are positioned in the same order as they defined (after default actions),
|
150
|
+
but it’s also possible to specify their position manually:
|
151
|
+
|
152
|
+
```ruby
|
153
|
+
action_item :help, priority: 0 do
|
154
|
+
"Display this action to the first position"
|
155
|
+
end
|
156
|
+
```
|
157
|
+
|
158
|
+
Default action item priority is 10.
|
159
|
+
|
143
160
|
# Modifying the Controller
|
144
161
|
|
145
162
|
The generated controller is available to you within the registration block by
|
data/docs/9-batch-actions.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
---
|
2
|
+
redirect_from: /docs/9-batch-actions.html
|
3
|
+
---
|
4
|
+
|
1
5
|
# Batch Actions
|
2
6
|
|
3
7
|
By default, the index page provides you a "Batch Action" to quickly delete records,
|
@@ -48,7 +52,7 @@ end
|
|
48
52
|
|
49
53
|
# app/admin/post.rb
|
50
54
|
ActiveAdmin.register Post do
|
51
|
-
|
55
|
+
|
52
56
|
# Resource level:
|
53
57
|
config.batch_actions = false
|
54
58
|
end
|
@@ -144,14 +148,14 @@ end
|
|
144
148
|
When you have dynamic form inputs you can pass a proc instead:
|
145
149
|
|
146
150
|
```ruby
|
147
|
-
|
148
|
-
batch_action :doit, form: ->{{user: User.pluck(:name, :id)}} do |ids, inputs|
|
151
|
+
batch_action :doit, form: -> { {user: User.pluck(:name, :id)} } do |ids, inputs|
|
149
152
|
User.find(inputs[:user])
|
150
153
|
# ...
|
151
154
|
end
|
152
155
|
```
|
153
156
|
|
154
|
-
Under the covers this is powered by the JS `ActiveAdmin.modal_dialog` which you
|
157
|
+
Under the covers this is powered by the JS `ActiveAdmin.modal_dialog` which you
|
158
|
+
can use yourself:
|
155
159
|
|
156
160
|
```coffee
|
157
161
|
if $('body.admin_users').length
|
data/docs/CNAME
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
activeadmin.info
|
data/docs/Gemfile
ADDED