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/CODE_OF_CONDUCT.md
CHANGED
@@ -1,22 +1,74 @@
|
|
1
|
-
# Contributor Code of Conduct
|
1
|
+
# Contributor Covenant Code of Conduct
|
2
2
|
|
3
|
-
|
3
|
+
## Our Pledge
|
4
4
|
|
5
|
-
|
5
|
+
In the interest of fostering an open and welcoming environment, we as
|
6
|
+
contributors and maintainers pledge to making participation in our project and
|
7
|
+
our community a harassment-free experience for everyone, regardless of age, body
|
8
|
+
size, disability, ethnicity, sex characteristics, gender identity and expression,
|
9
|
+
level of experience, education, socio-economic status, nationality, personal
|
10
|
+
appearance, race, religion, or sexual identity and orientation.
|
11
|
+
|
12
|
+
## Our Standards
|
13
|
+
|
14
|
+
Examples of behavior that contributes to creating a positive environment
|
15
|
+
include:
|
16
|
+
|
17
|
+
* Using welcoming and inclusive language
|
18
|
+
* Being respectful of differing viewpoints and experiences
|
19
|
+
* Gracefully accepting constructive criticism
|
20
|
+
* Focusing on what is best for the community
|
21
|
+
* Showing empathy towards other community members
|
6
22
|
|
7
23
|
Examples of unacceptable behavior by participants include:
|
8
24
|
|
9
|
-
* The use of sexualized language or imagery
|
10
|
-
|
11
|
-
* Trolling
|
25
|
+
* The use of sexualized language or imagery and unwelcome sexual attention or
|
26
|
+
advances
|
27
|
+
* Trolling, insulting/derogatory comments, and personal or political attacks
|
12
28
|
* Public or private harassment
|
13
|
-
* Publishing
|
14
|
-
|
29
|
+
* Publishing others' private information, such as a physical or electronic
|
30
|
+
address, without explicit permission
|
31
|
+
* Other conduct which could reasonably be considered inappropriate in a
|
32
|
+
professional setting
|
33
|
+
|
34
|
+
## Our Responsibilities
|
35
|
+
|
36
|
+
Project maintainers are responsible for clarifying the standards of acceptable
|
37
|
+
behavior and are expected to take appropriate and fair corrective action in
|
38
|
+
response to any instances of unacceptable behavior.
|
39
|
+
|
40
|
+
Project maintainers have the right and responsibility to remove, edit, or
|
41
|
+
reject comments, commits, code, wiki edits, issues, and other contributions
|
42
|
+
that are not aligned to this Code of Conduct, or to ban temporarily or
|
43
|
+
permanently any contributor for other behaviors that they deem inappropriate,
|
44
|
+
threatening, offensive, or harmful.
|
45
|
+
|
46
|
+
## Scope
|
47
|
+
|
48
|
+
This Code of Conduct applies both within project spaces and in public spaces
|
49
|
+
when an individual is representing the project or its community. Examples of
|
50
|
+
representing a project or community include using an official project e-mail
|
51
|
+
address, posting via an official social media account, or acting as an appointed
|
52
|
+
representative at an online or offline event. Representation of a project may be
|
53
|
+
further defined and clarified by project maintainers.
|
54
|
+
|
55
|
+
## Enforcement
|
56
|
+
|
57
|
+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
58
|
+
reported by contacting one or more of the project maintainers. All complaints
|
59
|
+
will be reviewed and investigated and will result in a response that is deemed
|
60
|
+
necessary and appropriate to the circumstances. The project team is obligated to
|
61
|
+
maintain confidentiality with regard to the reporter of an incident. Further
|
62
|
+
details of specific enforcement policies may be posted separately.
|
15
63
|
|
16
|
-
Project maintainers
|
64
|
+
Project maintainers who do not follow or enforce the Code of Conduct in good
|
65
|
+
faith may face temporary or permanent repercussions as determined by other
|
66
|
+
members of the project's leadership.
|
17
67
|
|
18
|
-
|
68
|
+
## Attribution
|
19
69
|
|
20
|
-
|
70
|
+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
71
|
+
available [here][source].
|
21
72
|
|
22
|
-
|
73
|
+
[homepage]: https://www.contributor-covenant.org
|
74
|
+
[source]: https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
|
data/CONTRIBUTING.md
CHANGED
@@ -3,20 +3,17 @@
|
|
3
3
|
First off, thank you for considering contributing to Active Admin. It's people
|
4
4
|
like you that make Active Admin such a great tool.
|
5
5
|
|
6
|
-
###
|
6
|
+
### Where do I go from here?
|
7
7
|
|
8
8
|
If you've noticed a bug or have a question that doesn't belong on the
|
9
|
-
[mailing list]
|
10
|
-
|
11
|
-
[
|
12
|
-
to see if someone else in the community has already created a ticket.
|
13
|
-
If not, go ahead and [make one](https://github.com/activeadmin/activeadmin/issues/new)!
|
9
|
+
[mailing list][] or [Stack Overflow][], [search the issue tracker][] to see if
|
10
|
+
someone else in the community has already created a ticket. If not, go ahead and
|
11
|
+
[make one][new issue]!
|
14
12
|
|
15
|
-
###
|
13
|
+
### Fork & create a branch
|
16
14
|
|
17
|
-
If this is something you think you can fix, then
|
18
|
-
|
19
|
-
and create a branch with a descriptive name.
|
15
|
+
If this is something you think you can fix, then [fork Active Admin][] and
|
16
|
+
create a branch with a descriptive name.
|
20
17
|
|
21
18
|
A good branch name would be (where issue #325 is the ticket you're working on):
|
22
19
|
|
@@ -24,9 +21,14 @@ A good branch name would be (where issue #325 is the ticket you're working on):
|
|
24
21
|
git checkout -b 325-add-japanese-translations
|
25
22
|
```
|
26
23
|
|
27
|
-
###
|
24
|
+
### Get the test suite running
|
28
25
|
|
29
|
-
|
26
|
+
Make sure you're using a recent ruby and have the `bundler` gem installed, at
|
27
|
+
least version `1.14.3`.
|
28
|
+
|
29
|
+
You'll also need chrome installed in order to run cucumber scenarios.
|
30
|
+
|
31
|
+
Now install the development dependencies:
|
30
32
|
|
31
33
|
```sh
|
32
34
|
bundle install
|
@@ -35,23 +37,52 @@ bundle install
|
|
35
37
|
Now you should be able to run the entire suite using:
|
36
38
|
|
37
39
|
```sh
|
38
|
-
rake
|
40
|
+
bin/rake
|
39
41
|
```
|
40
42
|
|
41
|
-
|
43
|
+
The test run will generate a sample Rails application in `tmp/test_apps` to run the
|
44
|
+
tests against.
|
45
|
+
|
46
|
+
If your tests are passing locally but they're failing on CircleCI, it's probably
|
47
|
+
because of some breaking change or problem with the latest version of some
|
48
|
+
dependency. You should be able to reproduce the issue locally by:
|
49
|
+
|
50
|
+
* Removing the `Gemfile.lock` file.
|
51
|
+
* Running `bundle install`.
|
52
|
+
* Re-running the tests again like you did previously.
|
53
|
+
|
54
|
+
This is not your fault though, so if this happens feel free to investigate, but
|
55
|
+
also feel free to ping maintainers about the issue you just found.
|
42
56
|
|
43
|
-
If
|
57
|
+
If you want to test against a Rails version different from the latest, make sure
|
58
|
+
you use the correct Gemfile, for example:
|
44
59
|
|
45
60
|
```sh
|
46
|
-
|
61
|
+
export BUNDLE_GEMFILE=gemfiles/rails_51.gemfile
|
47
62
|
```
|
48
63
|
|
49
|
-
###
|
64
|
+
### Did you find a bug?
|
65
|
+
|
66
|
+
* **Ensure the bug was not already reported** by [searching all issues][].
|
67
|
+
|
68
|
+
* If you're unable to find an open issue addressing the problem,
|
69
|
+
[open a new one][new issue]. Be sure to include a **title and clear
|
70
|
+
description**, as much relevant information as possible, and a **code sample**
|
71
|
+
or an **executable test case** demonstrating the expected behavior that is not
|
72
|
+
occurring.
|
73
|
+
|
74
|
+
* If possible, use the relevant bug report templates to create the issue.
|
75
|
+
Simply copy the content of the appropriate template into a .rb file, make the
|
76
|
+
necessary changes to demonstrate the issue, and **paste the content into the
|
77
|
+
issue description**:
|
78
|
+
* [**ActiveAdmin** master issues][master template]
|
79
|
+
|
80
|
+
### 5. Implement your fix or feature
|
50
81
|
|
51
82
|
At this point, you're ready to make your changes! Feel free to ask for help;
|
52
83
|
everyone is a beginner at first :smile_cat:
|
53
84
|
|
54
|
-
###
|
85
|
+
### 6. View your changes in a Rails application
|
55
86
|
|
56
87
|
Active Admin is meant to be used by humans, not cucumbers. So make sure to take
|
57
88
|
a look at your changes in a browser.
|
@@ -59,54 +90,40 @@ a look at your changes in a browser.
|
|
59
90
|
To boot up a test Rails app:
|
60
91
|
|
61
92
|
```sh
|
62
|
-
|
63
|
-
```
|
64
|
-
|
65
|
-
This will automatically create a Rails app if none already exists, and store it in the
|
66
|
-
`.test-rails-apps` folder. The currently active app is symlinked to `test-rails-app`.
|
67
|
-
|
68
|
-
If you have any Bundler issues, call the `use_rails` script then prepend
|
69
|
-
the version of rails you would like to use in an environment variable:
|
70
|
-
|
71
|
-
```sh
|
72
|
-
script/use_rails 4.0.0
|
73
|
-
RAILS=4.0.0 script/local server
|
93
|
+
bin/rake local server
|
74
94
|
```
|
75
95
|
|
76
|
-
|
96
|
+
This will automatically create a Rails app if none already exists, and store it
|
97
|
+
in the `tmp/development_apps` folder.
|
77
98
|
|
78
|
-
|
79
|
-
|
99
|
+
You should now be able to open <http://localhost:3000/admin> in your browser.
|
100
|
+
You can log in using:
|
80
101
|
|
81
|
-
|
82
|
-
|
102
|
+
*User*: admin@example.com
|
103
|
+
*Password*: password
|
83
104
|
|
84
|
-
|
105
|
+
If you need to perform any other commands on the test application, just pass
|
106
|
+
them to the `local` rake task. For example, to boot the rails console:
|
85
107
|
|
86
108
|
```sh
|
87
|
-
|
109
|
+
bin/rake local console
|
88
110
|
```
|
89
111
|
|
90
|
-
Or to migrate the database
|
112
|
+
Or to migrate the database, if you create a new migration or just play around
|
113
|
+
with the db:
|
91
114
|
|
92
115
|
```sh
|
93
|
-
|
116
|
+
bin/rake local db:migrate
|
94
117
|
```
|
95
118
|
|
96
|
-
###
|
97
|
-
|
98
|
-
Once you've implemented your code, got the tests passing, previewed it in a
|
99
|
-
browser, you're ready to test it against multiple versions of Rails.
|
119
|
+
### Get the style right
|
100
120
|
|
101
|
-
|
102
|
-
rake
|
103
|
-
|
104
|
-
|
105
|
-
This runs our test suite against a couple of major versions of Rails.
|
106
|
-
Travis does essentially the same thing when you open a Pull Request.
|
107
|
-
We care about quality, so your PR won't be merged until all tests pass.
|
121
|
+
Your patch should follow the same conventions & pass the same code quality
|
122
|
+
checks as the rest of the project. `bin/rake lint` will give you feedback in
|
123
|
+
this regard. You can check & fix style issues by running each linter
|
124
|
+
individually. Run `bin/rake -T lint` to see the available linters.
|
108
125
|
|
109
|
-
###
|
126
|
+
### Make a Pull Request
|
110
127
|
|
111
128
|
At this point, you should switch back to your master branch and make sure it's
|
112
129
|
up to date with Active Admin's master branch:
|
@@ -125,20 +142,74 @@ git rebase master
|
|
125
142
|
git push --set-upstream origin 325-add-japanese-translations
|
126
143
|
```
|
127
144
|
|
128
|
-
Finally, go to GitHub and [make a Pull Request]
|
145
|
+
Finally, go to GitHub and [make a Pull Request][] :D
|
129
146
|
|
130
|
-
|
147
|
+
CircleCI will run our test suite against all supported Rails versions. We care
|
148
|
+
about quality, so your PR won't be merged until all tests pass. It's unlikely,
|
149
|
+
but it's possible that your changes pass tests in one Rails version but fail in
|
150
|
+
another. In that case, you'll have to setup your development environment (as
|
151
|
+
explained in step 3) to use the problematic Rails version, and investigate
|
152
|
+
what's going on!
|
153
|
+
|
154
|
+
### Keeping your Pull Request updated
|
131
155
|
|
132
156
|
If a maintainer asks you to "rebase" your PR, they're saying that a lot of code
|
133
157
|
has changed, and that you need to update your branch so it's easier to merge.
|
134
158
|
|
135
|
-
To learn more about rebasing in Git, there are a lot of
|
136
|
-
[
|
137
|
-
[resources](https://help.github.com/articles/interactive-rebase),
|
138
|
-
but here's the suggested workflow:
|
159
|
+
To learn more about rebasing in Git, there are a lot of [good][git rebasing]
|
160
|
+
[resources][interactive rebase] but here's the suggested workflow:
|
139
161
|
|
140
162
|
```sh
|
141
163
|
git checkout 325-add-japanese-translations
|
142
164
|
git pull --rebase upstream master
|
143
|
-
git push -
|
165
|
+
git push --force-with-lease 325-add-japanese-translations
|
144
166
|
```
|
167
|
+
|
168
|
+
### Merging a PR (maintainers only)
|
169
|
+
|
170
|
+
A PR can only be merged into master by a maintainer if:
|
171
|
+
|
172
|
+
* It is passing CI.
|
173
|
+
* It has been approved by at least two maintainers. If it was a maintainer who
|
174
|
+
opened the PR, only one extra approval is needed.
|
175
|
+
* It has no requested changes.
|
176
|
+
* It is up to date with current master.
|
177
|
+
|
178
|
+
Any maintainer is allowed to merge a PR if all of these conditions are
|
179
|
+
met.
|
180
|
+
|
181
|
+
### Shipping a release (maintainers only)
|
182
|
+
|
183
|
+
Maintainers need to do the following to push out a release:
|
184
|
+
|
185
|
+
* Make sure all pull requests are in and that changelog is current
|
186
|
+
* Update `version.rb` file and changelog with new version number
|
187
|
+
* If it's not a patch level release, create a stable branch for that release,
|
188
|
+
otherwise switch to the stable branch corresponding to the patch release you
|
189
|
+
want to ship:
|
190
|
+
|
191
|
+
```sh
|
192
|
+
git checkout master
|
193
|
+
git fetch activeadmin
|
194
|
+
git rebase activeadmin/master
|
195
|
+
# If the release is 2.1.x then this should be: 2-1-stable
|
196
|
+
git checkout -b N-N-stable
|
197
|
+
git push activeadmin N-N-stable:N-N-stable
|
198
|
+
```
|
199
|
+
|
200
|
+
* Make sure you have [chandler] properly configured. Chandler is used to
|
201
|
+
automatically submit github release notes from the changelog right after
|
202
|
+
pushing the gem to rubygems.
|
203
|
+
* `bin/rake release`
|
204
|
+
|
205
|
+
[chandler]: https://github.com/mattbrictson/chandler#2-configure-credentials
|
206
|
+
[mailing list]: http://groups.google.com/group/activeadmin
|
207
|
+
[Stack Overflow]: http://stackoverflow.com/questions/tagged/activeadmin
|
208
|
+
[search the issue tracker]: https://github.com/activeadmin/activeadmin/issues?q=something
|
209
|
+
[new issue]: https://github.com/activeadmin/activeadmin/issues/new
|
210
|
+
[fork Active Admin]: https://help.github.com/articles/fork-a-repo
|
211
|
+
[searching all issues]: https://github.com/activeadmin/activeadmin/issues?q=
|
212
|
+
[master template]: https://github.com/activeadmin/activeadmin/blob/master/tasks/bug_report_template.rb
|
213
|
+
[make a pull request]: https://help.github.com/articles/creating-a-pull-request
|
214
|
+
[git rebasing]: http://git-scm.com/book/en/Git-Branching-Rebasing
|
215
|
+
[interactive rebase]: https://help.github.com/articles/interactive-rebase
|
data/README.md
CHANGED
@@ -1,99 +1,58 @@
|
|
1
1
|
# Active Admin
|
2
2
|
|
3
|
-
Active Admin is a Ruby on Rails framework for
|
3
|
+
[Active Admin](https://activeadmin.info) is a Ruby on Rails framework for
|
4
|
+
creating elegant backends for website administration.
|
4
5
|
|
5
|
-
[![Version ]
|
6
|
-
[![
|
7
|
-
[![
|
8
|
-
[![
|
9
|
-
[![Inch CI ]
|
6
|
+
[![Version ][rubygems_badge]][rubygems]
|
7
|
+
[![Circle CI ][circle_badge]][circle]
|
8
|
+
[![Coverage ][coverage_badge]][coverage]
|
9
|
+
[![Tidelift ][tidelift_badge]][tidelift]
|
10
|
+
[![Inch CI ][inch_badge]][inch]
|
10
11
|
|
11
|
-
##
|
12
|
-
|
13
|
-
### 1.0.0
|
14
|
-
|
15
|
-
We're [currently working on 1.0.0](https://github.com/activeadmin/activeadmin/issues?milestone=18),
|
16
|
-
which as far as dependencies, moves us from meta_search to Ransack and adds Rails 4 & 5 support.
|
17
|
-
|
18
|
-
You can get it by tracking master:
|
19
|
-
```ruby
|
20
|
-
gem 'activeadmin', github: 'activeadmin'
|
21
|
-
```
|
22
|
-
|
23
|
-
Or you can using rubygems:
|
24
|
-
```ruby
|
25
|
-
gem 'activeadmin', '~> 1.0.0.pre4'
|
26
|
-
```
|
27
|
-
|
28
|
-
*Keep in mind that during the time where we use `pre`-release label, things can break in each release!*
|
29
|
-
|
30
|
-
### Rails 5
|
31
|
-
|
32
|
-
Active Admin master has preliminary support for Rails 5. To give it a try, these Gemfile changes may be needed:
|
33
|
-
|
34
|
-
```ruby
|
35
|
-
gem 'devise', '> 4.x'
|
36
|
-
gem 'rspec-rails', '>= 3.5.0.beta1'
|
37
|
-
gem 'ransack', github: 'activerecord-hackery/ransack'
|
38
|
-
gem 'kaminari', github: 'amatsuda/kaminari', branch: '0-17-stable'
|
39
|
-
gem 'formtastic', github: 'justinfrench/formtastic'
|
40
|
-
gem 'draper', github: 'audionerd/draper', branch: 'rails5', ref: 'e816e0e587'
|
41
|
-
# To fix a Draper deprecation error
|
42
|
-
gem 'activemodel-serializers-xml', github: 'rails/activemodel-serializers-xml'
|
43
|
-
# Optional -- only if you already include these gems
|
44
|
-
gem 'rack-mini-profiler', github: 'MiniProfiler/rack-mini-profiler'
|
45
|
-
gem 'database_cleaner', github: 'pschambacher/database_cleaner', branch: 'rails5.0', ref: '8dd9fa4'
|
46
|
-
# Only for JRuby:
|
47
|
-
gem 'activerecord-jdbc-adapter', github: 'jruby/activerecord-jdbc-adapter', platforms: :jruby
|
48
|
-
```
|
49
|
-
|
50
|
-
If something isn't working for you please report it on [#4177](https://github.com/activeadmin/activeadmin/issues/4177).
|
12
|
+
## Goals
|
51
13
|
|
52
|
-
|
14
|
+
* Enable developers to quickly create good-looking administration interfaces.
|
15
|
+
* Build a DSL for developers and an interface for businesses.
|
16
|
+
* Ensure that developers can easily customize every nook and cranny.
|
53
17
|
|
54
|
-
|
55
|
-
still be maintained, and we will backport bug fixes into future 0.6.x releases. If you don't want
|
56
|
-
to have to wait for a release, you can track the branch instead:
|
18
|
+
## Getting started
|
57
19
|
|
58
|
-
|
59
|
-
|
60
|
-
|
20
|
+
* Check out [the docs][docs].
|
21
|
+
* Try the [live demo][demo].
|
22
|
+
* The [wiki] includes links to tutorials, articles and sample projects.
|
61
23
|
|
62
|
-
##
|
24
|
+
## For enterprise
|
63
25
|
|
64
|
-
|
65
|
-
|
26
|
+
Active Admin for enterprise is available via the Tidelift subscription. [Learn
|
27
|
+
More][tidelift_enterprise].
|
66
28
|
|
67
|
-
##
|
29
|
+
## Need help?
|
68
30
|
|
69
|
-
|
70
|
-
* Live demo: <http://demo.activeadmin.info/admin>
|
71
|
-
* Documentation
|
72
|
-
* Guides: <https://github.com/activeadmin/activeadmin/tree/master/docs>
|
73
|
-
* YARD: <http://rubydoc.info/gems/activeadmin>
|
74
|
-
* Wiki: <https://github.com/activeadmin/activeadmin/wiki>
|
31
|
+
Please use [StackOverflow][stackoverflow] for help requests and how-to questions.
|
75
32
|
|
76
|
-
|
33
|
+
Please open GitHub issues for bugs and enhancements only, not general help requests.
|
34
|
+
Please search previous issues (and Google and StackOverflow) before creating a new issue.
|
77
35
|
|
78
|
-
|
79
|
-
2. Build a DSL for developers and an interface for businesses.
|
80
|
-
3. Ensure that developers can easily customize every nook and cranny.
|
36
|
+
Google Groups, IRC #activeadmin and Gitter are not actively monitored.
|
81
37
|
|
82
|
-
##
|
38
|
+
## Want to contribute?
|
83
39
|
|
84
|
-
|
40
|
+
If you want to contribute through code or documentation, the [Contributing
|
41
|
+
guide is the best place to start][contributing]. If you have questions, feel free
|
42
|
+
to ask.
|
85
43
|
|
86
|
-
##
|
44
|
+
## Want to support us?
|
87
45
|
|
88
|
-
|
89
|
-
|
90
|
-
|
46
|
+
If you want to support us financially, you can [help fund the project
|
47
|
+
through a Tidelift subscription][tidelift_support]. By buying a Tidelift subscription
|
48
|
+
you make sure your whole dependency stack is properly maintained, while also
|
49
|
+
getting a comprehensive view of outdated dependencies, new releases, security
|
50
|
+
alerts, and licensing compatibility issues.
|
91
51
|
|
92
|
-
|
52
|
+
You can also support us with a weekly tip via [Liberapay].
|
93
53
|
|
94
|
-
|
95
|
-
|
96
|
-
[@seanlinsley](https://twitter.com/seanlinsley) or [@captainhagbard](https://twitter.com/captainhagbard).
|
54
|
+
Finally, we have an [Open Collective][opencollective page] where you can become a backer or
|
55
|
+
sponsor for the project, and also submit expenses to it.
|
97
56
|
|
98
57
|
## Dependencies
|
99
58
|
|
@@ -108,9 +67,51 @@ Tool | Description
|
|
108
67
|
[Kaminari] | Elegant pagination for any sort of collection
|
109
68
|
[Ransack] | Provides a simple search API to query your data
|
110
69
|
|
70
|
+
## Security contact information
|
71
|
+
|
72
|
+
Please use the Tidelift security contact to [report a security vulnerability][Tidelift security contact].
|
73
|
+
Tidelift will coordinate the fix and disclosure.
|
74
|
+
|
75
|
+
## Acknowledgements
|
76
|
+
|
77
|
+
Thanks to [Greg Bell][Greg] for creating and sharing this project with the open source community.
|
78
|
+
|
79
|
+
Thanks to [all the people that ever contributed through code][contributors] or
|
80
|
+
other means such as bug reports, issue triaging, feature suggestions, code
|
81
|
+
snippet tips, Slack discussions and so on.
|
82
|
+
|
83
|
+
Thanks to [Tidelift][tidelift] and all our Tidelift subscribers.
|
84
|
+
|
85
|
+
Thanks to [Open Collective][opencollective contributors] and all our Open Collective contributors.
|
86
|
+
|
111
87
|
[Arbre]: https://github.com/activeadmin/arbre
|
112
88
|
[Devise]: https://github.com/plataformatec/devise
|
113
89
|
[Formtastic]: https://github.com/justinfrench/formtastic
|
114
|
-
[Inherited Resources]: https://github.com/
|
115
|
-
[Kaminari]: https://github.com/
|
90
|
+
[Inherited Resources]: https://github.com/activeadmin/inherited_resources
|
91
|
+
[Kaminari]: https://github.com/kaminari/kaminari
|
116
92
|
[Ransack]: https://github.com/activerecord-hackery/ransack
|
93
|
+
|
94
|
+
[rubygems_badge]: http://img.shields.io/gem/v/activeadmin.svg
|
95
|
+
[rubygems]: https://rubygems.org/gems/activeadmin
|
96
|
+
[circle_badge]: https://circleci.com/gh/activeadmin/activeadmin/tree/master.svg
|
97
|
+
[circle]: https://circleci.com/gh/activeadmin/activeadmin/tree/master
|
98
|
+
[coverage_badge]: https://api.codeclimate.com/v1/badges/779e407d22bacff19733/test_coverage
|
99
|
+
[coverage]: https://codeclimate.com/github/activeadmin/activeadmin/test_coverage
|
100
|
+
[inch_badge]: http://inch-ci.org/github/activeadmin/activeadmin.svg?branch=master
|
101
|
+
[inch]: http://inch-ci.org/github/activeadmin/activeadmin
|
102
|
+
[tidelift_badge]: https://tidelift.com/badges/github/activeadmin/activeadmin
|
103
|
+
[tidelift]: https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=readme
|
104
|
+
[tidelift_enterprise]: https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=github&utm_content=enterprise
|
105
|
+
[tidelift_support]: https://tidelift.com/subscription/pkg/rubygems-activeadmin?utm_source=rubygems-activeadmin&utm_medium=referral&utm_campaign=github&utm_content=support
|
106
|
+
|
107
|
+
[docs]: http://activeadmin.info/0-installation.html
|
108
|
+
[demo]: http://demo.activeadmin.info/admin
|
109
|
+
[wiki]: https://github.com/activeadmin/activeadmin/wiki
|
110
|
+
[stackoverflow]: http://stackoverflow.com/questions/tagged/activeadmin
|
111
|
+
[contributing]: https://github.com/activeadmin/activeadmin/blob/master/CONTRIBUTING.md
|
112
|
+
[Liberapay]: https://liberapay.com/Active-Admin/donate
|
113
|
+
[Tidelift security contact]: https://tidelift.com/security
|
114
|
+
[Greg]: https://github.com/gregbell
|
115
|
+
[contributors]: https://github.com/activeadmin/activeadmin/graphs/contributors
|
116
|
+
[opencollective page]: https://opencollective.com/activeadmin
|
117
|
+
[opencollective contributors]: https://opencollective.com/activeadmin#contributors
|
@@ -0,0 +1,23 @@
|
|
1
|
+
//= require jquery3
|
2
|
+
//= require jquery-ui/widgets/datepicker
|
3
|
+
//= require jquery-ui/widgets/dialog
|
4
|
+
//= require jquery-ui/widgets/sortable
|
5
|
+
//= require jquery-ui/widgets/tabs
|
6
|
+
//= require jquery-ui/widget
|
7
|
+
//= require jquery_ujs
|
8
|
+
//= require_self
|
9
|
+
//= require ./ext/jquery
|
10
|
+
//= require ./ext/jquery-ui
|
11
|
+
//= require ./lib/active_admin
|
12
|
+
//= require ./lib/batch_actions
|
13
|
+
//= require ./lib/dropdown-menu
|
14
|
+
//= require ./lib/has_many
|
15
|
+
//= require ./lib/modal_dialog
|
16
|
+
//= require ./lib/per_page
|
17
|
+
//= require ./lib/checkbox-toggler
|
18
|
+
//= require ./lib/table-checkbox-toggler
|
19
|
+
//= require ./initializers/datepicker
|
20
|
+
//= require ./initializers/filters
|
21
|
+
//= require ./initializers/tabs
|
22
|
+
|
23
|
+
window.ActiveAdmin = {}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
// Short-circuits `_focusTabbable` to focus on the modal itself instead of
|
2
|
+
// elements inside the modal. Without this, if a datepicker is the first input,
|
3
|
+
// it'll immediately pop up when the modal opens.
|
4
|
+
// See this ticket for more info: http://bugs.jqueryui.com/ticket/4731
|
5
|
+
$.ui.dialog.prototype._focusTabbable = function() {
|
6
|
+
this.uiDialog.focus();
|
7
|
+
};
|
@@ -0,0 +1,9 @@
|
|
1
|
+
// `serializeArray` generates => [{ name: 'foo', value: 'bar' }]
|
2
|
+
// This function remaps it to => { foo: 'bar' }
|
3
|
+
$.fn.serializeObject = function() {
|
4
|
+
return this.serializeArray()
|
5
|
+
.reduce((obj, item) => {
|
6
|
+
obj[item.name] = item.value
|
7
|
+
return obj
|
8
|
+
}, {});
|
9
|
+
};
|
@@ -0,0 +1,16 @@
|
|
1
|
+
(($) => {
|
2
|
+
|
3
|
+
$(document)
|
4
|
+
.on('focus', 'input.datepicker:not(.hasDatepicker)', function() {
|
5
|
+
const input = $(this);
|
6
|
+
|
7
|
+
// Only create datepickers in compatible browsers
|
8
|
+
if (input[0].type === 'date') { return; }
|
9
|
+
|
10
|
+
const defaults = { dateFormat: 'yy-mm-dd' };
|
11
|
+
const options = input.data('datepicker-options');
|
12
|
+
|
13
|
+
input.datepicker($.extend(defaults, options));
|
14
|
+
});
|
15
|
+
|
16
|
+
})(jQuery);
|
@@ -0,0 +1,45 @@
|
|
1
|
+
(($, ActiveAdmin) => {
|
2
|
+
|
3
|
+
class Filters {
|
4
|
+
|
5
|
+
static _clearForm(event) {
|
6
|
+
const regex = /^(q\[|q%5B|q%5b|page|utf8|commit)/;
|
7
|
+
const params = ActiveAdmin
|
8
|
+
.queryStringToParams()
|
9
|
+
.filter(({name}) => !name.match(regex));
|
10
|
+
|
11
|
+
event.preventDefault();
|
12
|
+
|
13
|
+
if (ActiveAdmin.turbolinks) {
|
14
|
+
ActiveAdmin.turbolinksVisit(params);
|
15
|
+
} else {
|
16
|
+
window.location.search = ActiveAdmin.toQueryString(params);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
static _disableEmptyInputFields(event) {
|
21
|
+
const params = $(this)
|
22
|
+
.find(':input')
|
23
|
+
.filter((i, input) => input.value === '')
|
24
|
+
.prop({ disabled: true })
|
25
|
+
.end()
|
26
|
+
.serializeArray();
|
27
|
+
|
28
|
+
if (ActiveAdmin.turbolinks) {
|
29
|
+
event.preventDefault();
|
30
|
+
ActiveAdmin.turbolinksVisit(params);
|
31
|
+
}
|
32
|
+
}
|
33
|
+
|
34
|
+
static _setSearchType() {
|
35
|
+
$(this).siblings('input').prop({name: `q[${this.value}]`});
|
36
|
+
}
|
37
|
+
|
38
|
+
}
|
39
|
+
|
40
|
+
$(document).
|
41
|
+
on('click', '.clear_filters_btn', Filters._clearForm).
|
42
|
+
on('submit', '.filter_form', Filters._disableEmptyInputFields).
|
43
|
+
on('change', '.filter_form_field.select_and_search select', Filters._setSearchType);
|
44
|
+
|
45
|
+
})(jQuery, window.activeadmin);
|