yousty-activeadmin 1.0.4.pre → 1.0.5.pre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +261 -211
- data/CONTRIBUTING.md +73 -39
- data/Gemfile +38 -20
- data/Guardfile +1 -0
- data/LICENSE +1 -1
- data/README.md +48 -24
- data/Rakefile +12 -4
- data/activeadmin.gemspec +21 -26
- data/app/assets/javascripts/active_admin/application.js.coffee +34 -5
- data/app/assets/javascripts/active_admin/base.js.coffee +11 -2
- data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +6 -0
- data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +7 -0
- data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +39 -0
- data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +3 -4
- data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +51 -55
- data/app/assets/javascripts/active_admin/lib/flash.js.coffee +19 -0
- data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +79 -0
- data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +37 -0
- data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +27 -0
- data/app/assets/javascripts/active_admin/lib/popover.js.coffee +29 -58
- data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +2 -3
- data/app/assets/stylesheets/active_admin/{_base.css.scss → _base.scss} +3 -0
- data/app/assets/stylesheets/active_admin/{_forms.css.scss → _forms.scss} +51 -15
- data/app/assets/stylesheets/active_admin/{_header.css.scss → _header.scss} +9 -5
- data/app/assets/stylesheets/active_admin/{_mixins.css.scss → _mixins.scss} +0 -0
- data/app/assets/stylesheets/active_admin/{_typography.css.scss → _typography.scss} +0 -0
- data/app/assets/stylesheets/active_admin/components/_batch_actions.scss +11 -0
- data/app/assets/stylesheets/active_admin/components/_buttons.scss +1 -1
- data/app/assets/stylesheets/active_admin/components/{_comments.css.scss → _comments.scss} +0 -0
- data/app/assets/stylesheets/active_admin/components/{_date_picker.css.scss → _date_picker.scss} +40 -12
- data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +3 -1
- data/app/assets/stylesheets/active_admin/components/_flash_messages.scss +37 -0
- data/app/assets/stylesheets/active_admin/components/_modal_dialog.scss +34 -0
- data/app/assets/stylesheets/active_admin/components/_pagination.scss +10 -0
- data/app/assets/stylesheets/active_admin/components/{_popovers.css.scss → _popovers.scss} +0 -0
- data/app/assets/stylesheets/active_admin/components/_status_tags.scss +4 -0
- data/app/assets/stylesheets/active_admin/components/_table_tools.scss +67 -0
- data/app/assets/stylesheets/active_admin/components/{_tables.css.scss → _tables.scss} +1 -0
- data/app/assets/stylesheets/active_admin/components/_tabs.scss +65 -0
- data/app/assets/stylesheets/active_admin/components/_unsupported_browser.scss +16 -0
- data/app/assets/stylesheets/active_admin/mixins/{_all.css.scss → _all.scss} +0 -0
- data/app/assets/stylesheets/active_admin/mixins/{_buttons.css.scss → _buttons.scss} +0 -0
- data/app/assets/stylesheets/active_admin/mixins/{_gradients.css.scss → _gradients.scss} +1 -1
- data/app/assets/stylesheets/active_admin/mixins/{_icons.css.scss → _icons.scss} +1 -2
- data/app/assets/stylesheets/active_admin/mixins/{_reset.css.scss → _reset.scss} +0 -0
- data/app/assets/stylesheets/active_admin/mixins/{_rounded.css.scss → _rounded.scss} +0 -0
- data/app/assets/stylesheets/active_admin/mixins/{_sections.css.scss → _sections.scss} +7 -1
- data/app/assets/stylesheets/active_admin/mixins/{_shadows.css.scss → _shadows.scss} +0 -0
- data/app/assets/stylesheets/active_admin/mixins/{_variables.css.scss → _variables.scss} +10 -8
- data/app/assets/stylesheets/active_admin/{print.css.scss → print.scss} +4 -0
- data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +10 -7
- data/app/views/active_admin/devise/confirmations/new.html.erb +15 -0
- data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
- data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +1 -1
- data/app/views/active_admin/devise/passwords/edit.html.erb +9 -10
- data/app/views/active_admin/devise/passwords/new.html.erb +5 -4
- data/app/views/active_admin/devise/registrations/new.html.erb +22 -0
- data/app/views/active_admin/devise/sessions/new.html.erb +8 -8
- data/app/views/active_admin/devise/shared/_links.erb +1 -1
- data/app/views/active_admin/devise/unlocks/new.html.erb +5 -4
- data/app/views/layouts/active_admin_logged_out.html.erb +3 -5
- data/config/locales/ar.yml +120 -0
- data/config/locales/bg.yml +26 -6
- data/config/locales/bs.yml +122 -0
- data/config/locales/ca.yml +10 -1
- data/config/locales/cs.yml +7 -2
- data/config/locales/da.yml +7 -3
- data/config/locales/de-CH.yml +14 -31
- data/config/locales/de.yml +33 -33
- data/config/locales/el.yml +127 -0
- data/config/locales/en-GB.yml +11 -4
- data/config/locales/en.yml +21 -4
- data/config/locales/{es_MX.yml → es-MX.yml} +14 -24
- data/config/locales/es.yml +32 -25
- data/config/locales/fa.yml +120 -0
- data/config/locales/fi.yml +9 -5
- data/config/locales/fr.yml +28 -12
- data/config/locales/he.yml +7 -3
- data/config/locales/hr.yml +42 -11
- data/config/locales/hu.yml +10 -3
- data/config/locales/it.yml +31 -3
- data/config/locales/ja.yml +17 -4
- data/config/locales/ko.yml +7 -1
- data/config/locales/lt.yml +42 -11
- data/config/locales/lv.yml +7 -3
- data/config/locales/{no-NB.yml → nb.yml} +46 -15
- data/config/locales/nl.yml +36 -5
- data/config/locales/pl.yml +13 -8
- data/config/locales/pt-BR.yml +36 -5
- data/config/locales/pt-PT.yml +8 -4
- data/config/locales/ro.yml +7 -3
- data/config/locales/ru.yml +26 -5
- data/config/locales/sv-SE.yml +9 -5
- data/config/locales/tr.yml +10 -3
- data/config/locales/uk.yml +36 -12
- data/config/locales/vi.yml +7 -3
- data/config/locales/zh-CN.yml +26 -10
- data/config/locales/zh-TW.yml +19 -13
- data/docs/0-installation.md +14 -6
- data/docs/1-general-configuration.md +8 -5
- data/docs/10-custom-pages.md +68 -70
- data/docs/11-decorators.md +48 -59
- data/docs/12-arbre-components.md +79 -73
- data/docs/13-authorization-adapter.md +128 -107
- data/docs/14-gotchas.md +90 -0
- data/docs/2-resource-customization.md +82 -15
- data/docs/3-index-pages.md +71 -12
- data/docs/3-index-pages/custom-index.md +31 -0
- data/docs/3-index-pages/index-as-table.md +45 -2
- data/docs/4-csv-format.md +1 -1
- data/docs/5-forms.md +78 -29
- data/docs/6-show-pages.md +31 -3
- data/docs/7-sidebars.md +46 -25
- data/docs/8-custom-actions.md +98 -77
- data/docs/9-batch-actions.md +211 -133
- data/docs/README.md +24 -0
- data/features/action_item.feature +3 -3
- data/features/authorization_pundit.feature +37 -0
- data/features/belongs_to.feature +3 -0
- data/features/breadcrumb.feature +48 -0
- data/features/comments/commenting.feature +44 -13
- data/features/development_reloading.feature +3 -4
- data/features/edit_page.feature +9 -19
- data/features/favicon.feature +3 -3
- data/features/i18n.feature +5 -0
- data/features/index/batch_actions.feature +41 -0
- data/features/index/filters.feature +23 -0
- data/features/index/format_as_csv.feature +90 -4
- data/features/index/index_as_blog.feature +4 -4
- data/features/index/index_as_table.feature +102 -6
- data/features/index/index_blank_slate.feature +22 -0
- data/features/index/index_scope_to.feature +16 -16
- data/features/index/page_title.feature +11 -0
- data/features/index/pagination.feature +1 -1
- data/features/index/switch_index_view.feature +14 -14
- data/features/new_page.feature +10 -20
- data/features/registering_pages.feature +1 -1
- data/features/renamed_resource.feature +32 -0
- data/features/show/page_title.feature +11 -0
- data/features/show/tabs.feature +27 -0
- data/features/sidebar_sections.feature +12 -0
- data/features/specifying_actions.feature +3 -3
- data/features/step_definitions/action_item_steps.rb +2 -2
- data/features/step_definitions/action_link_steps.rb +14 -1
- data/features/step_definitions/additional_web_steps.rb +17 -18
- data/features/step_definitions/asset_steps.rb +3 -3
- data/features/step_definitions/attribute_steps.rb +8 -3
- data/features/step_definitions/batch_action_steps.rb +26 -9
- data/features/step_definitions/blog_steps.rb +3 -0
- data/features/step_definitions/breadcrumb_steps.rb +1 -1
- data/features/step_definitions/comment_steps.rb +1 -1
- data/features/step_definitions/configuration_steps.rb +1 -1
- data/features/step_definitions/dashboard_steps.rb +2 -2
- data/features/step_definitions/factory_steps.rb +6 -6
- data/features/step_definitions/filter_steps.rb +25 -3
- data/features/step_definitions/flash_steps.rb +3 -3
- data/features/step_definitions/format_steps.rb +17 -10
- data/features/step_definitions/index_scope_steps.rb +5 -5
- data/features/step_definitions/layout_steps.rb +1 -1
- data/features/step_definitions/member_link_steps.rb +2 -2
- data/features/step_definitions/menu_steps.rb +3 -3
- data/features/step_definitions/pagination_steps.rb +2 -3
- data/features/step_definitions/sidebar_steps.rb +8 -3
- data/features/step_definitions/site_title_steps.rb +6 -4
- data/features/step_definitions/symbol_leak_steps.rb +1 -1
- data/features/step_definitions/tab_steps.rb +5 -0
- data/features/step_definitions/table_steps.rb +4 -4
- data/features/step_definitions/user_steps.rb +15 -9
- data/features/step_definitions/web_steps.rb +10 -11
- data/features/sti_resource.feature +2 -10
- data/features/strong_parameters.feature +73 -0
- data/features/support/env.rb +35 -2
- data/features/support/paths.rb +2 -2
- data/features/support/selectors.rb +1 -1
- data/features/users/resetting_password.feature +7 -7
- data/lib/active_admin.rb +18 -13
- data/lib/active_admin/abstract_view_factory.rb +7 -17
- data/lib/active_admin/application.rb +50 -25
- data/lib/active_admin/asset_registration.rb +2 -2
- data/lib/active_admin/authorization_adapter.rb +2 -2
- data/lib/active_admin/base_controller.rb +2 -3
- data/lib/active_admin/base_controller/authorization.rb +13 -31
- data/lib/active_admin/batch_actions.rb +1 -1
- data/lib/active_admin/batch_actions/controller.rb +13 -7
- data/lib/active_admin/batch_actions/resource_extension.rb +43 -17
- data/lib/active_admin/batch_actions/views/batch_action_form.rb +7 -4
- data/lib/active_admin/batch_actions/views/batch_action_popover.rb +3 -3
- data/lib/active_admin/batch_actions/views/batch_action_selector.rb +8 -17
- data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -4
- data/lib/active_admin/callbacks.rb +25 -24
- data/lib/active_admin/cancan_adapter.rb +7 -11
- data/lib/active_admin/csv_builder.rb +92 -15
- data/lib/active_admin/dependency.rb +93 -0
- data/lib/active_admin/deprecation.rb +6 -7
- data/lib/active_admin/devise.rb +26 -14
- data/lib/active_admin/dsl.rb +18 -11
- data/lib/active_admin/engine.rb +7 -2
- data/lib/active_admin/error.rb +59 -0
- data/lib/active_admin/filters/dsl.rb +2 -2
- data/lib/active_admin/filters/forms.rb +19 -30
- data/lib/active_admin/filters/formtastic_addons.rb +20 -11
- data/lib/active_admin/filters/resource_extension.rb +16 -9
- data/lib/active_admin/form_builder.rb +94 -105
- data/lib/active_admin/helpers/collection.rb +7 -13
- data/lib/active_admin/helpers/i18n.rb +7 -0
- data/lib/active_admin/helpers/optional_display.rb +5 -5
- data/lib/active_admin/helpers/scope_chain.rb +1 -1
- data/lib/active_admin/helpers/settings.rb +16 -9
- data/lib/active_admin/iconic.rb +17 -15
- data/lib/active_admin/iconic/icons.rb +136 -136
- data/lib/active_admin/inputs.rb +11 -7
- data/lib/active_admin/inputs/datepicker_input.rb +1 -1
- data/lib/active_admin/inputs/filters/base.rb +42 -0
- data/lib/active_admin/inputs/filters/base/search_method_select.rb +75 -0
- data/lib/active_admin/inputs/filters/boolean_input.rb +24 -0
- data/lib/active_admin/inputs/filters/check_boxes_input.rb +50 -0
- data/lib/active_admin/inputs/filters/date_range_input.rb +36 -0
- data/lib/active_admin/inputs/filters/numeric_input.rb +12 -0
- data/lib/active_admin/inputs/filters/select_input.rb +54 -0
- data/lib/active_admin/inputs/filters/string_input.rb +26 -0
- data/lib/active_admin/menu.rb +3 -3
- data/lib/active_admin/menu_collection.rb +1 -4
- data/lib/active_admin/namespace.rb +52 -29
- data/lib/active_admin/order_clause.rb +26 -0
- data/lib/active_admin/orm/active_record.rb +2 -0
- data/lib/active_admin/orm/active_record/comments.rb +48 -51
- data/lib/active_admin/orm/active_record/comments/comment.rb +16 -10
- data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -1
- data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -1
- data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +15 -13
- data/lib/active_admin/page.rb +5 -1
- data/lib/active_admin/page_dsl.rb +1 -1
- data/lib/active_admin/page_presenter.rb +2 -2
- data/lib/active_admin/pundit_adapter.rb +68 -0
- data/lib/active_admin/resource.rb +12 -3
- data/lib/active_admin/resource/action_items.rb +15 -8
- data/lib/active_admin/resource/belongs_to.rb +7 -3
- data/lib/active_admin/resource/controllers.rb +1 -0
- data/lib/active_admin/resource/includes.rb +12 -0
- data/lib/active_admin/resource/menu.rb +5 -5
- data/lib/active_admin/resource/naming.rb +25 -47
- data/lib/active_admin/resource/page_presenters.rb +1 -1
- data/lib/active_admin/resource/routes.rb +26 -10
- data/lib/active_admin/resource/scope_to.rb +7 -7
- data/lib/active_admin/resource/sidebars.rb +1 -0
- data/lib/active_admin/resource_collection.rb +44 -16
- data/lib/active_admin/resource_controller.rb +6 -5
- data/lib/active_admin/resource_controller/data_access.rb +87 -82
- data/lib/active_admin/resource_controller/decorators.rb +91 -9
- data/lib/active_admin/resource_controller/streaming.rb +37 -0
- data/lib/active_admin/resource_dsl.rb +54 -10
- data/lib/active_admin/router.rb +7 -7
- data/lib/active_admin/scope.rb +6 -6
- data/lib/active_admin/sidebar_section.rb +10 -2
- data/lib/active_admin/version.rb +1 -1
- data/lib/active_admin/view_factory.rb +17 -16
- data/lib/active_admin/view_helpers.rb +0 -1
- data/lib/active_admin/view_helpers/auto_link_helper.rb +23 -12
- data/lib/active_admin/view_helpers/breadcrumb_helper.rb +13 -6
- data/lib/active_admin/view_helpers/display_helper.rb +30 -17
- data/lib/active_admin/view_helpers/download_format_links_helper.rb +21 -24
- data/lib/active_admin/view_helpers/fields_for.rb +2 -2
- data/lib/active_admin/view_helpers/flash_helper.rb +4 -3
- data/lib/active_admin/view_helpers/form_helper.rb +5 -9
- data/lib/active_admin/view_helpers/method_or_proc_helper.rb +6 -6
- data/lib/active_admin/views/action_items.rb +2 -2
- data/lib/active_admin/views/components/action_list_popover.rb +1 -1
- data/lib/active_admin/views/components/active_admin_form.rb +123 -0
- data/lib/active_admin/views/components/attributes_table.rb +22 -13
- data/lib/active_admin/views/components/blank_slate.rb +1 -1
- data/lib/active_admin/views/components/columns.rb +13 -7
- data/lib/active_admin/views/components/dropdown_menu.rb +6 -6
- data/lib/active_admin/views/components/index_list.rb +7 -7
- data/lib/active_admin/views/components/paginated_collection.rb +33 -17
- data/lib/active_admin/views/components/panel.rb +8 -2
- data/lib/active_admin/views/components/popover.rb +1 -1
- data/lib/active_admin/views/components/scopes.rb +1 -1
- data/lib/active_admin/views/components/sidebar_section.rb +3 -2
- data/lib/active_admin/views/components/site_title.rb +2 -2
- data/lib/active_admin/views/components/status_tag.rb +34 -11
- data/lib/active_admin/views/components/table_for.rb +67 -22
- data/lib/active_admin/views/components/tabs.rb +28 -0
- data/lib/active_admin/views/components/unsupported_browser.rb +11 -0
- data/lib/active_admin/views/footer.rb +3 -3
- data/lib/active_admin/views/header.rb +3 -3
- data/lib/active_admin/views/index_as_blog.rb +6 -6
- data/lib/active_admin/views/index_as_grid.rb +2 -2
- data/lib/active_admin/views/index_as_table.rb +127 -40
- data/lib/active_admin/views/pages/base.rb +22 -18
- data/lib/active_admin/views/pages/form.rb +16 -6
- data/lib/active_admin/views/pages/index.rb +36 -20
- data/lib/active_admin/views/pages/layout.rb +1 -1
- data/lib/active_admin/views/pages/show.rb +4 -4
- data/lib/active_admin/views/tabbed_navigation.rb +7 -3
- data/lib/active_admin/views/title_bar.rb +10 -8
- data/lib/generators/active_admin/assets/assets_generator.rb +1 -3
- data/lib/generators/active_admin/devise/devise_generator.rb +20 -28
- data/lib/generators/active_admin/install/install_generator.rb +8 -9
- data/lib/generators/active_admin/install/templates/active_admin.rb.erb +20 -22
- data/lib/generators/active_admin/install/templates/admin_user.rb.erb +12 -9
- data/lib/generators/active_admin/install/templates/dashboard.rb +4 -4
- data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb +3 -3
- data/lib/generators/active_admin/page/USAGE +8 -0
- data/lib/generators/active_admin/page/page_generator.rb +12 -0
- data/lib/generators/active_admin/page/templates/page.rb +5 -0
- data/lib/generators/active_admin/resource/resource_generator.rb +2 -4
- data/lib/generators/active_admin/resource/templates/admin.rb +15 -0
- data/lib/ransack_ext.rb +4 -4
- data/script/local +2 -2
- data/script/travis_cache +107 -0
- data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +25 -0
- data/spec/javascripts/fixtures/flashes.html +2 -0
- data/spec/rails_helper.rb +154 -0
- data/spec/{integration → requests}/default_namespace_spec.rb +6 -6
- data/spec/{integration → requests}/javascript_spec.rb +5 -5
- data/spec/requests/memory_spec.rb +23 -0
- data/spec/requests/stylesheets_spec.rb +18 -0
- data/spec/spec_helper.rb +12 -170
- data/spec/support/detect_rails_version.rb +31 -39
- data/spec/support/rails_template.rb +61 -34
- data/spec/support/rails_template_with_data.rb +14 -14
- data/spec/support/templates/admin/stores.rb +3 -5
- data/spec/support/templates/policies/active_admin/comment_policy.rb +9 -0
- data/spec/support/templates/policies/active_admin/page_policy.rb +18 -0
- data/spec/support/templates/policies/admin_user_policy.rb +11 -0
- data/spec/support/templates/policies/application_policy.rb +45 -0
- data/spec/support/templates/policies/category_policy.rb +7 -0
- data/spec/support/templates/policies/post_policy.rb +15 -0
- data/spec/support/templates/policies/store_policy.rb +11 -0
- data/spec/support/templates/policies/user_policy.rb +11 -0
- data/spec/support/templates/post_decorator.rb +4 -46
- data/spec/unit/abstract_view_factory_spec.rb +11 -11
- data/spec/unit/action_builder_spec.rb +24 -18
- data/spec/unit/active_admin_spec.rb +2 -2
- data/spec/unit/application_spec.rb +30 -31
- data/spec/unit/asset_registration_spec.rb +11 -11
- data/spec/unit/authorization/authorization_adapter_spec.rb +7 -7
- data/spec/unit/authorization/controller_authorization_spec.rb +11 -11
- data/spec/unit/authorization/index_overriding_spec.rb +22 -0
- data/spec/unit/auto_link_spec.rb +42 -5
- data/spec/unit/batch_actions/resource_spec.rb +15 -14
- data/spec/unit/batch_actions/settings_spec.rb +18 -18
- data/spec/unit/belongs_to_spec.rb +26 -17
- data/spec/unit/cancan_adapter_spec.rb +4 -4
- data/spec/unit/comments_spec.rb +99 -39
- data/spec/unit/component_spec.rb +3 -3
- data/spec/unit/config_shared_examples.rb +8 -8
- data/spec/unit/controller_filters_spec.rb +26 -14
- data/spec/unit/csv_builder_spec.rb +152 -24
- data/spec/unit/dependency_spec.rb +135 -0
- data/spec/unit/devise_spec.rb +17 -37
- data/spec/unit/dsl_spec.rb +70 -9
- data/spec/unit/event_spec.rb +9 -9
- data/spec/unit/filters/filter_form_builder_spec.rb +167 -157
- data/spec/unit/filters/resource_spec.rb +35 -33
- data/spec/unit/form_builder_spec.rb +383 -145
- data/spec/unit/generators/install_spec.rb +5 -5
- data/spec/unit/helpers/collection_spec.rb +18 -18
- data/spec/unit/helpers/scope_chain_spec.rb +5 -5
- data/spec/unit/helpers/settings_spec.rb +4 -4
- data/spec/unit/i18n_spec.rb +12 -0
- data/spec/unit/menu_collection_spec.rb +14 -14
- data/spec/unit/menu_item_spec.rb +42 -42
- data/spec/unit/menu_spec.rb +20 -20
- data/spec/unit/namespace/authorization_spec.rb +5 -5
- data/spec/unit/namespace/register_page_spec.rb +9 -9
- data/spec/unit/namespace/register_resource_spec.rb +26 -28
- data/spec/unit/namespace_spec.rb +20 -20
- data/spec/unit/order_clause_spec.rb +81 -0
- data/spec/unit/page_controller_spec.rb +1 -1
- data/spec/unit/page_spec.rb +18 -12
- data/spec/unit/pretty_format_spec.rb +42 -14
- data/spec/unit/pundit_adapter_spec.rb +98 -0
- data/spec/unit/resource/action_items_spec.rb +13 -10
- data/spec/unit/resource/includes_spec.rb +21 -0
- data/spec/unit/resource/menu_spec.rb +1 -1
- data/spec/unit/resource/naming_spec.rb +23 -23
- data/spec/unit/resource/page_presenters_spec.rb +8 -8
- data/spec/unit/resource/pagination_spec.rb +6 -6
- data/spec/unit/resource/routes_spec.rb +10 -10
- data/spec/unit/resource/scopes_spec.rb +14 -7
- data/spec/unit/resource/sidebars_spec.rb +6 -6
- data/spec/unit/resource_collection_spec.rb +66 -68
- data/spec/unit/resource_controller/data_access_spec.rb +39 -21
- data/spec/unit/resource_controller/decorators_spec.rb +83 -0
- data/spec/unit/resource_controller/sidebars_spec.rb +7 -8
- data/spec/unit/resource_controller_spec.rb +66 -62
- data/spec/unit/resource_registration_spec.rb +12 -12
- data/spec/unit/resource_spec.rb +75 -40
- data/spec/unit/routing_spec.rb +39 -31
- data/spec/unit/scope_spec.rb +112 -30
- data/spec/unit/settings_spec.rb +51 -21
- data/spec/unit/view_factory_spec.rb +2 -2
- data/spec/unit/view_helpers/breadcrumbs_spec.rb +137 -69
- data/spec/unit/view_helpers/display_name_spec.rb +49 -21
- data/spec/unit/view_helpers/download_format_links_helper_spec.rb +5 -5
- data/spec/unit/view_helpers/fields_for_spec.rb +18 -18
- data/spec/unit/view_helpers/flash_helper_spec.rb +25 -0
- data/spec/unit/view_helpers/form_helper_spec.rb +9 -22
- data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +59 -21
- data/spec/unit/views/components/action_list_popover_spec.rb +16 -6
- data/spec/unit/views/components/attributes_table_spec.rb +94 -52
- data/spec/unit/views/components/batch_action_popover_spec.rb +20 -6
- data/spec/unit/views/components/blank_slate_spec.rb +14 -4
- data/spec/unit/views/components/columns_spec.rb +52 -22
- data/spec/unit/views/components/index_list_spec.rb +11 -8
- data/spec/unit/views/components/index_table_for_spec.rb +46 -0
- data/spec/unit/views/components/paginated_collection_spec.rb +68 -59
- data/spec/unit/views/components/panel_spec.rb +32 -21
- data/spec/unit/views/components/popover_spec.rb +7 -7
- data/spec/unit/views/components/sidebar_section_spec.rb +18 -8
- data/spec/unit/views/components/site_title_spec.rb +8 -8
- data/spec/unit/views/components/status_tag_spec.rb +178 -38
- data/spec/unit/views/components/table_for_spec.rb +227 -44
- data/spec/unit/views/components/tabs_spec.rb +39 -0
- data/spec/unit/views/components/unsupported_browser_spec.rb +47 -0
- data/spec/unit/views/pages/form_spec.rb +17 -10
- data/spec/unit/views/pages/index_spec.rb +60 -0
- data/spec/unit/views/pages/layout_spec.rb +17 -21
- data/spec/unit/views/pages/show_spec.rb +16 -3
- data/spec/unit/views/tabbed_navigation_spec.rb +61 -52
- data/tasks/docs.rake +1 -1
- data/tasks/parallel_tests.rake +8 -2
- data/tasks/test.rake +8 -4
- data/tasks/yard.rake +7 -5
- metadata +180 -101
- data/app/assets/images/active_admin/admin_notes_icon.png +0 -0
- data/app/assets/images/active_admin/datepicker/datepicker-header-bg.png +0 -0
- data/app/assets/images/active_admin/datepicker/datepicker-next-link-icon.png +0 -0
- data/app/assets/images/active_admin/datepicker/datepicker-nipple.png +0 -0
- data/app/assets/images/active_admin/datepicker/datepicker-prev-link-icon.png +0 -0
- data/app/assets/images/active_admin/index_list_icons/block_icon.svg +0 -10
- data/app/assets/images/active_admin/index_list_icons/blog_icon.svg +0 -4
- data/app/assets/images/active_admin/index_list_icons/grid_icon.svg +0 -13
- data/app/assets/images/active_admin/index_list_icons/table_icon.svg +0 -3
- data/app/assets/images/active_admin/loading.gif +0 -0
- data/app/assets/javascripts/active_admin/components/application.js.coffee +0 -23
- data/app/assets/javascripts/active_admin/components/batch_actions.js.coffee +0 -26
- data/app/assets/javascripts/active_admin/components/has_many.js.coffee +0 -41
- data/app/assets/stylesheets/active_admin/components/_batch_actions.css.scss +0 -11
- data/app/assets/stylesheets/active_admin/components/_flash_messages.css.scss +0 -39
- data/app/assets/stylesheets/active_admin/components/_table_tools.css.scss +0 -95
- data/app/views/active_admin/dashboard/index.html.arb +0 -1
- data/app/views/active_admin/resource/index.csv.erb +0 -17
- data/docs/3-index-pages/create-an-index.md +0 -29
- data/lib/active_admin/inputs/filter_base.rb +0 -33
- data/lib/active_admin/inputs/filter_base/search_method_select.rb +0 -73
- data/lib/active_admin/inputs/filter_boolean_input.rb +0 -32
- data/lib/active_admin/inputs/filter_check_boxes_input.rb +0 -51
- data/lib/active_admin/inputs/filter_date_range_input.rb +0 -34
- data/lib/active_admin/inputs/filter_numeric_input.rb +0 -10
- data/lib/active_admin/inputs/filter_select_input.rb +0 -61
- data/lib/active_admin/inputs/filter_string_input.rb +0 -24
- data/lib/active_admin/view_helpers/assigns_with_indifferent_access_helper.rb +0 -7
- data/spec/integration/memory_spec.rb +0 -29
- data/spec/integration/stylesheets_spec.rb +0 -41
- data/spec/javascripts/compiled/jquery.aa.checkbox-toggler-spec.js +0 -60
- data/spec/javascripts/compiled/jquery.aa.popover-spec.js +0 -106
- data/spec/javascripts/compiled/jquery.aa.table-checkbox-toggler-spec.js +0 -37
- data/spec/javascripts/helpers/vendor/jasmine-fixture-0.0.5.js +0 -108
- data/spec/javascripts/helpers/vendor/jasmine-jquery.js +0 -288
- data/spec/javascripts/helpers/vendor/sinon-1.2.0.js +0 -2915
- data/spec/javascripts/support/jquery-ui-1.8.16.custom.min.js +0 -34
- data/spec/javascripts/support/jquery.min.js +0 -4
- data/spec/spec_helper_without_rails.rb +0 -16
- data/tasks/js.rake +0 -32
|
@@ -10,9 +10,9 @@ Feature: Index as Blog
|
|
|
10
10
|
index :as => :blog
|
|
11
11
|
end
|
|
12
12
|
"""
|
|
13
|
-
|
|
13
|
+
And I am logged in
|
|
14
14
|
When I am on the index page for posts
|
|
15
|
-
Then I should see "Hello World"
|
|
15
|
+
Then I should see a blog header "Hello World"
|
|
16
16
|
And I should see a link to "Hello World"
|
|
17
17
|
|
|
18
18
|
Scenario: Viewing the blog with a resource as a simple configuration
|
|
@@ -26,7 +26,7 @@ Feature: Index as Blog
|
|
|
26
26
|
end
|
|
27
27
|
end
|
|
28
28
|
"""
|
|
29
|
-
Then I should see "Hello World"
|
|
29
|
+
Then I should see a blog header "Hello World"
|
|
30
30
|
And I should see a link to "Hello World"
|
|
31
31
|
And I should see "My great post body" within ".post"
|
|
32
32
|
|
|
@@ -45,7 +45,7 @@ Feature: Index as Blog
|
|
|
45
45
|
end
|
|
46
46
|
end
|
|
47
47
|
"""
|
|
48
|
-
Then I should see "Hello World From Block"
|
|
48
|
+
Then I should see a blog header "Hello World From Block"
|
|
49
49
|
And I should see a link to "Hello World From Block"
|
|
50
50
|
And I should see "My great post body From Block" within ".post"
|
|
51
51
|
|
|
@@ -93,6 +93,19 @@ Feature: Index as Table
|
|
|
93
93
|
And I should see a member link to "Edit"
|
|
94
94
|
And I should not see a member link to "Delete"
|
|
95
95
|
|
|
96
|
+
Scenario: Actions with custom column options
|
|
97
|
+
Given a post with the title "Hello World" and body "From the body" exists
|
|
98
|
+
And an index configuration of:
|
|
99
|
+
"""
|
|
100
|
+
ActiveAdmin.register Post do
|
|
101
|
+
index do
|
|
102
|
+
column :category
|
|
103
|
+
actions class: 'custom-column-class', name: 'That text'
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
"""
|
|
107
|
+
Then I should see the actions column with the class "custom-column-class" and the title "That text"
|
|
108
|
+
|
|
96
109
|
Scenario: Actions with defaults and custom actions
|
|
97
110
|
Given a post with the title "Hello World" and body "From the body" exists
|
|
98
111
|
And an index configuration of:
|
|
@@ -133,6 +146,59 @@ Feature: Index as Table
|
|
|
133
146
|
And I should not see a member link to "Delete"
|
|
134
147
|
And I should see a member link to "Custom Action"
|
|
135
148
|
|
|
149
|
+
Scenario: Actions with defaults and custom actions within a dropdown
|
|
150
|
+
Given a post with the title "Hello World" and body "From the body" exists
|
|
151
|
+
And an index configuration of:
|
|
152
|
+
"""
|
|
153
|
+
ActiveAdmin.register Post do
|
|
154
|
+
actions :index, :show, :edit, :update
|
|
155
|
+
|
|
156
|
+
index do
|
|
157
|
+
column :category
|
|
158
|
+
actions dropdown: true do |resource|
|
|
159
|
+
item 'Custom Action', edit_admin_post_path(resource)
|
|
160
|
+
end
|
|
161
|
+
end
|
|
162
|
+
end
|
|
163
|
+
"""
|
|
164
|
+
Then I should see a dropdown menu item to "View"
|
|
165
|
+
And I should see a dropdown menu item to "Edit"
|
|
166
|
+
And I should not see a dropdown menu item to "Delete"
|
|
167
|
+
And I should see a dropdown menu item to "Custom Action"
|
|
168
|
+
|
|
169
|
+
Scenario: Actions without default actions within a dropdown
|
|
170
|
+
Given a post with the title "Hello World" and body "From the body" exists
|
|
171
|
+
And an index configuration of:
|
|
172
|
+
"""
|
|
173
|
+
ActiveAdmin.register Post do
|
|
174
|
+
actions :index, :show, :edit, :update
|
|
175
|
+
|
|
176
|
+
index do
|
|
177
|
+
column :category
|
|
178
|
+
actions :defaults => false, dropdown: true do |resource|
|
|
179
|
+
item 'Custom Action', edit_admin_post_path(resource)
|
|
180
|
+
end
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
"""
|
|
184
|
+
Then I should not see a dropdown menu item to "View"
|
|
185
|
+
And I should not see a dropdown menu item to "Edit"
|
|
186
|
+
And I should not see a dropdown menu item to "Delete"
|
|
187
|
+
And I should see a dropdown menu item to "Custom Action"
|
|
188
|
+
|
|
189
|
+
Scenario: Index page without show action
|
|
190
|
+
Given a post with the title "Hello World" and body "From the body" exists
|
|
191
|
+
And an index configuration of:
|
|
192
|
+
"""
|
|
193
|
+
ActiveAdmin.register Post do
|
|
194
|
+
actions :index
|
|
195
|
+
end
|
|
196
|
+
"""
|
|
197
|
+
Then I should not see a member link to "View"
|
|
198
|
+
And I should not see a member link to "Edit"
|
|
199
|
+
And I should not see a member link to "Delete"
|
|
200
|
+
And I should see "Hello World"
|
|
201
|
+
|
|
136
202
|
Scenario: Associations are not sortable
|
|
137
203
|
Given 1 post exists
|
|
138
204
|
And an index configuration of:
|
|
@@ -145,6 +211,36 @@ Feature: Index as Table
|
|
|
145
211
|
"""
|
|
146
212
|
Then I should not see a sortable table header with "Category"
|
|
147
213
|
|
|
214
|
+
Scenario: Columns with block are sortable by default
|
|
215
|
+
Given 1 post exists
|
|
216
|
+
And an index configuration of:
|
|
217
|
+
"""
|
|
218
|
+
ActiveAdmin.register Post do
|
|
219
|
+
index do
|
|
220
|
+
column :author_id do end
|
|
221
|
+
column 'published_at' do end
|
|
222
|
+
column :category do end
|
|
223
|
+
end
|
|
224
|
+
end
|
|
225
|
+
"""
|
|
226
|
+
Then I should see a sortable table header with "Author"
|
|
227
|
+
Then I should see a sortable table header with "published_at"
|
|
228
|
+
Then I should not see a sortable table header with "Category"
|
|
229
|
+
|
|
230
|
+
Scenario: Columns with block are not sortable by when sortable option equals to false
|
|
231
|
+
Given 1 post exists
|
|
232
|
+
And an index configuration of:
|
|
233
|
+
"""
|
|
234
|
+
ActiveAdmin.register Post do
|
|
235
|
+
index do
|
|
236
|
+
column :author_id, sortable: false do end
|
|
237
|
+
column 'published_at', sortable: false do end
|
|
238
|
+
end
|
|
239
|
+
end
|
|
240
|
+
"""
|
|
241
|
+
Then I should not see a sortable table header with "Author"
|
|
242
|
+
Then I should not see a sortable table header with "published_at"
|
|
243
|
+
|
|
148
244
|
Scenario: Sorting
|
|
149
245
|
Given a post with the title "Hello World" and body "From the body" exists
|
|
150
246
|
And a post with the title "Bye bye world" and body "Move your..." exists
|
|
@@ -154,14 +250,14 @@ Feature: Index as Table
|
|
|
154
250
|
"""
|
|
155
251
|
When I am on the index page for posts
|
|
156
252
|
Then I should see the "index_table_posts" table:
|
|
157
|
-
| [ ] | Id | Title | Body | Published At | Starred | Created At | Updated At | |
|
|
158
|
-
| [ ] | 2 | Bye bye world | Move your... | | | /.*/ | /.*/ | ViewEditDelete |
|
|
159
|
-
| [ ] | 1 | Hello World | From the body | | | /.*/ | /.*/ | ViewEditDelete |
|
|
253
|
+
| [ ] | Id | Title | Body | Published At | Position | Starred | Created At | Updated At | |
|
|
254
|
+
| [ ] | 2 | Bye bye world | Move your... | | | No | /.*/ | /.*/ | ViewEditDelete |
|
|
255
|
+
| [ ] | 1 | Hello World | From the body | | | No | /.*/ | /.*/ | ViewEditDelete |
|
|
160
256
|
When I follow "Id"
|
|
161
257
|
Then I should see the "index_table_posts" table:
|
|
162
|
-
| [ ] | Id | Title | Body | Published At | Starred | Created At | Updated At | |
|
|
163
|
-
| [ ] | 1 | Hello World | From the body | | | /.*/ | /.*/ | ViewEditDelete |
|
|
164
|
-
| [ ] | 2 | Bye bye world | Move your... | | | /.*/ | /.*/ | ViewEditDelete |
|
|
258
|
+
| [ ] | Id | Title | Body | Published At | Position | Starred | Created At | Updated At | |
|
|
259
|
+
| [ ] | 1 | Hello World | From the body | | | No | /.*/ | /.*/ | ViewEditDelete |
|
|
260
|
+
| [ ] | 2 | Bye bye world | Move your... | | | No | /.*/ | /.*/ | ViewEditDelete |
|
|
165
261
|
|
|
166
262
|
Scenario: Sorting by a virtual column
|
|
167
263
|
Given a post with the title "Hello World" exists
|
|
@@ -59,3 +59,25 @@ Feature: Index Blank Slate
|
|
|
59
59
|
end
|
|
60
60
|
"""
|
|
61
61
|
And I should see "There are no Posts yet. Create one"
|
|
62
|
+
|
|
63
|
+
Scenario: Customizing the default table with no resources
|
|
64
|
+
Given an index configuration of:
|
|
65
|
+
"""
|
|
66
|
+
ActiveAdmin.register Post do
|
|
67
|
+
index blank_slate_link: ->{link_to("Go to dashboard", admin_root_path)} do |post|
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
"""
|
|
71
|
+
When I follow "Go to dashboard"
|
|
72
|
+
Then I should see "Dashboard"
|
|
73
|
+
|
|
74
|
+
Scenario: Customizing the default table with no blank slate link
|
|
75
|
+
Given an index configuration of:
|
|
76
|
+
"""
|
|
77
|
+
ActiveAdmin.register Post do
|
|
78
|
+
index blank_slate_link: false do |post|
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
"""
|
|
82
|
+
Then I should see "There are no Posts yet."
|
|
83
|
+
And I should not see "Create one"
|
|
@@ -3,27 +3,27 @@ Feature: Index Scope To
|
|
|
3
3
|
Viewing resource configs scoped to another object
|
|
4
4
|
|
|
5
5
|
Background:
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
6
|
+
Given 10 posts exist
|
|
7
|
+
And a post with the title "Hello World" written by "John Doe" exists
|
|
8
|
+
And a published post with the title "Hello World" written by "John Doe" exists
|
|
9
|
+
Given an index configuration of:
|
|
10
|
+
"""
|
|
11
|
+
ActiveAdmin.register Post do
|
|
12
|
+
# Scope section to a specific author
|
|
13
|
+
scope_to do
|
|
14
|
+
User.find_by_first_name_and_last_name "John", "Doe"
|
|
15
|
+
end
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
scope :all, :
|
|
17
|
+
# Set up some scopes
|
|
18
|
+
scope :all, default: true
|
|
19
19
|
scope :published do |posts|
|
|
20
|
-
posts.where
|
|
20
|
+
posts.where "published_at IS NOT NULL"
|
|
21
21
|
end
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
end
|
|
23
|
+
"""
|
|
24
24
|
|
|
25
25
|
Scenario: Viewing the default scope counts
|
|
26
|
-
|
|
26
|
+
When I am on the index page for posts
|
|
27
27
|
Then I should see the scope "All" selected
|
|
28
28
|
And I should see the scope "All" with the count 2
|
|
29
29
|
And I should see 2 posts in the table
|
|
@@ -28,3 +28,14 @@ Feature: Index - Page Title
|
|
|
28
28
|
end
|
|
29
29
|
"""
|
|
30
30
|
Then I should see the page title "List of posts"
|
|
31
|
+
|
|
32
|
+
Scenario: Set the title in controller
|
|
33
|
+
Given an index configuration of:
|
|
34
|
+
"""
|
|
35
|
+
ActiveAdmin.register Post do
|
|
36
|
+
controller do
|
|
37
|
+
before_filter { @page_title = "List of #{resource_class.model_name.plural}" }
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
"""
|
|
41
|
+
Then I should see the page title "List of posts"
|
|
@@ -53,7 +53,7 @@ Feature: Index Pagination
|
|
|
53
53
|
"""
|
|
54
54
|
Given 100 posts exist
|
|
55
55
|
When I am on the index page for posts
|
|
56
|
-
Then I should see pagination with
|
|
56
|
+
Then I should see pagination with 4 pages
|
|
57
57
|
Then I should see "Displaying Posts 1 - 30"
|
|
58
58
|
And I should not see "Displaying Posts 1 - 30 of 100 in total"
|
|
59
59
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Feature: Switch Index View
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
In order to switch index views
|
|
4
|
+
As a user
|
|
5
|
+
I want to view links to views
|
|
6
6
|
|
|
7
7
|
Scenario: Show default Page Presenter
|
|
8
8
|
Given a post with the title "Hello World from Table" exists
|
|
@@ -19,10 +19,10 @@ Feature: Switch Index View
|
|
|
19
19
|
"""
|
|
20
20
|
Then I should see "Hello World from Table" within ".index_as_table"
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
Scenario: Show default Page Presenter when default is specified
|
|
23
|
+
Given a post with the title "Hello World from Table" exists
|
|
24
|
+
And an index configuration of:
|
|
25
|
+
"""
|
|
26
26
|
ActiveAdmin.register Post do
|
|
27
27
|
index :as => :block do |post|
|
|
28
28
|
span(link_to(post.title, admin_post_path(post)))
|
|
@@ -35,9 +35,9 @@ Feature: Switch Index View
|
|
|
35
35
|
Then I should see "Hello World from Table" within ".index_as_table"
|
|
36
36
|
|
|
37
37
|
Scenario: Show links to different page views
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
Given a post with the title "Hello World from Table" exists
|
|
39
|
+
And an index configuration of:
|
|
40
|
+
"""
|
|
41
41
|
ActiveAdmin.register Post do
|
|
42
42
|
index :as => :block do |post|
|
|
43
43
|
span(link_to(post.title, admin_post_path(post)))
|
|
@@ -51,10 +51,10 @@ Feature: Switch Index View
|
|
|
51
51
|
And I should see a link to "Table"
|
|
52
52
|
And I should see a link to "List"
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
Scenario: Show change between page views
|
|
55
|
+
Given a post with the title "Hey from Table" and body "My body is awesome" exists
|
|
56
|
+
And an index configuration of:
|
|
57
|
+
"""
|
|
58
58
|
ActiveAdmin.register Post do
|
|
59
59
|
index :as => :block do |post|
|
|
60
60
|
span(link_to(post.title, admin_post_path(post)))
|
data/features/new_page.feature
CHANGED
|
@@ -9,10 +9,9 @@ Feature: New Page
|
|
|
9
9
|
Given a configuration of:
|
|
10
10
|
"""
|
|
11
11
|
ActiveAdmin.register Post do
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
end if Rails::VERSION::MAJOR == 4
|
|
12
|
+
if Rails::VERSION::MAJOR == 4
|
|
13
|
+
permit_params :custom_category_id, :author_id, :title,
|
|
14
|
+
:body, :position, :published_at, :starred
|
|
16
15
|
end
|
|
17
16
|
end
|
|
18
17
|
"""
|
|
@@ -28,18 +27,15 @@ Feature: New Page
|
|
|
28
27
|
Then I should see "Post was successfully created."
|
|
29
28
|
And I should see the attribute "Title" with "Hello World"
|
|
30
29
|
And I should see the attribute "Body" with "This is the body"
|
|
31
|
-
And I should see the attribute "Category" with "Music"
|
|
30
|
+
#And I should see the attribute "Category" with "Music"
|
|
32
31
|
And I should see the attribute "Author" with "John Doe"
|
|
33
32
|
|
|
34
33
|
Scenario: Generating a custom form
|
|
35
34
|
Given a configuration of:
|
|
36
35
|
"""
|
|
37
36
|
ActiveAdmin.register Post do
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
params.permit post: [:category_id, :author_id, :title, :body, :published_at, :starred]
|
|
41
|
-
end if Rails::VERSION::MAJOR == 4
|
|
42
|
-
end
|
|
37
|
+
permit_params :custom_category_id, :author_id, :title, :body, :published_at, :starred if Rails::VERSION::MAJOR == 4
|
|
38
|
+
|
|
43
39
|
form do |f|
|
|
44
40
|
f.inputs "Your Post" do
|
|
45
41
|
f.input :title
|
|
@@ -74,11 +70,8 @@ Feature: New Page
|
|
|
74
70
|
Given a configuration of:
|
|
75
71
|
"""
|
|
76
72
|
ActiveAdmin.register Post do
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
params.permit post: [:category_id, :author_id, :title, :body, :published_at, :starred]
|
|
80
|
-
end if Rails::VERSION::MAJOR == 4
|
|
81
|
-
end
|
|
73
|
+
permit_params :custom_category_id, :author_id, :title, :body, :published_at, :starred if Rails::VERSION::MAJOR == 4
|
|
74
|
+
|
|
82
75
|
form :partial => "form"
|
|
83
76
|
end
|
|
84
77
|
"""
|
|
@@ -94,11 +87,8 @@ Feature: New Page
|
|
|
94
87
|
Given a configuration of:
|
|
95
88
|
"""
|
|
96
89
|
ActiveAdmin.register Post do
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
params.permit post: [:category_id, :author_id, :title, :body, :published_at, :starred]
|
|
100
|
-
end if Rails::VERSION::MAJOR == 4
|
|
101
|
-
end
|
|
90
|
+
permit_params :custom_category_id, :author_id, :title, :body, :published_at, :starred if Rails::VERSION::MAJOR == 4
|
|
91
|
+
|
|
102
92
|
form do |f|
|
|
103
93
|
f.inputs "Your Post" do
|
|
104
94
|
if current_admin_user && false
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
Feature: Renamed Resource
|
|
2
|
+
|
|
3
|
+
Strong attributes for resources renamed with as: 'NewName'
|
|
4
|
+
|
|
5
|
+
Background:
|
|
6
|
+
Given a category named "Music" exists
|
|
7
|
+
Given a user named "John Doe" exists
|
|
8
|
+
And I am logged in
|
|
9
|
+
Given a configuration of:
|
|
10
|
+
"""
|
|
11
|
+
ActiveAdmin.register Blog::Post, as: 'Post' do
|
|
12
|
+
if Rails::VERSION::MAJOR == 4
|
|
13
|
+
permit_params :custom_category_id, :author_id, :title,
|
|
14
|
+
:body, :position, :published_at, :starred
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
"""
|
|
18
|
+
When I am on the index page for posts
|
|
19
|
+
|
|
20
|
+
Scenario: Default form with no config
|
|
21
|
+
Given I follow "New Post"
|
|
22
|
+
When I fill in "Title" with "Hello World"
|
|
23
|
+
And I fill in "Body" with "This is the body"
|
|
24
|
+
And I select "Music" from "Category"
|
|
25
|
+
And I select "John Doe" from "Author"
|
|
26
|
+
And I press "Create Post"
|
|
27
|
+
Then I should see "Post was successfully created."
|
|
28
|
+
And I should see the attribute "Title" with "Hello World"
|
|
29
|
+
And I should see the attribute "Body" with "This is the body"
|
|
30
|
+
#And I should see the attribute "Category" with "Music"
|
|
31
|
+
And I should see the attribute "Author" with "John Doe"
|
|
32
|
+
|
|
@@ -45,3 +45,14 @@ Feature: Show - Page Title
|
|
|
45
45
|
ActiveAdmin.register Tag
|
|
46
46
|
"""
|
|
47
47
|
Then I should see the page title "Tag #"
|
|
48
|
+
|
|
49
|
+
Scenario: Set the title in controller
|
|
50
|
+
Given a show configuration of:
|
|
51
|
+
"""
|
|
52
|
+
ActiveAdmin.register Post do
|
|
53
|
+
controller do
|
|
54
|
+
before_filter { @page_title = "List of #{resource_class.model_name.plural}" }
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
"""
|
|
58
|
+
Then I should see the page title "List of posts"
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
Feature: Show - Tabs
|
|
2
|
+
|
|
3
|
+
Add tabs with different content to the page
|
|
4
|
+
|
|
5
|
+
Background:
|
|
6
|
+
Given a post with the title "Hello World" written by "Jane Doe" exists
|
|
7
|
+
|
|
8
|
+
Scenario: Set a method to be called on the resource as the title
|
|
9
|
+
Given a show configuration of:
|
|
10
|
+
"""
|
|
11
|
+
ActiveAdmin.register Post do
|
|
12
|
+
show do
|
|
13
|
+
tabs do
|
|
14
|
+
tab :overview do
|
|
15
|
+
span "tab 1"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
tab :details do
|
|
19
|
+
span "tab 2"
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
"""
|
|
25
|
+
Then I should see two tabs "Overview" and "Details"
|
|
26
|
+
And I should see "tab 1"
|
|
27
|
+
And I should see "tab 2"
|