activeadmin 1.1.0 → 2.14.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.

Files changed (592) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +871 -111
  3. data/CODE_OF_CONDUCT.md +64 -12
  4. data/CONTRIBUTING.md +84 -63
  5. data/README.md +73 -19
  6. data/app/assets/javascripts/active_admin/base.js +521 -0
  7. data/app/assets/stylesheets/active_admin/_base.scss +53 -37
  8. data/app/assets/stylesheets/active_admin/_forms.scss +4 -26
  9. data/app/assets/stylesheets/active_admin/_header.scss +40 -8
  10. data/app/assets/stylesheets/active_admin/_mixins.scss +1 -1
  11. data/{vendor → app}/assets/stylesheets/active_admin/_normalize.scss +25 -123
  12. data/app/assets/stylesheets/active_admin/{print.scss → _print.scss} +2 -2
  13. data/app/assets/stylesheets/active_admin/components/_comments.scss +2 -2
  14. data/app/assets/stylesheets/active_admin/components/_date_picker.scss +1 -2
  15. data/app/assets/stylesheets/active_admin/components/_dropdown_menu.scss +0 -1
  16. data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
  17. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -5
  18. data/app/assets/stylesheets/active_admin/components/_tables.scss +1 -2
  19. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  20. data/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -8
  21. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  22. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +17 -0
  23. data/app/assets/stylesheets/active_admin/structure/_footer.scss +6 -1
  24. data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +1 -1
  25. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -1
  26. data/app/javascript/active_admin/base.js +28 -0
  27. data/app/javascript/active_admin/ext/jquery-ui.js +7 -0
  28. data/app/javascript/active_admin/ext/jquery.js +9 -0
  29. data/app/javascript/active_admin/initializers/batch-actions.js +61 -0
  30. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  31. data/app/javascript/active_admin/initializers/datepicker.js +16 -0
  32. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  33. data/app/javascript/active_admin/initializers/filters.js +10 -0
  34. data/app/javascript/active_admin/initializers/has-many.js +98 -0
  35. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  36. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  37. data/app/javascript/active_admin/initializers/tabs.js +6 -0
  38. data/app/javascript/active_admin/lib/checkbox-toggler.js +49 -0
  39. data/app/javascript/active_admin/lib/dropdown-menu.js +116 -0
  40. data/app/javascript/active_admin/lib/filters.js +39 -0
  41. data/app/javascript/active_admin/lib/modal-dialog.js +63 -0
  42. data/app/javascript/active_admin/lib/per-page.js +38 -0
  43. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +38 -0
  44. data/app/javascript/active_admin/lib/utils.js +40 -0
  45. data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
  46. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  47. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  48. data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
  49. data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
  50. data/app/views/active_admin/devise/registrations/new.html.erb +2 -3
  51. data/app/views/active_admin/devise/sessions/new.html.erb +1 -1
  52. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  53. data/app/views/active_admin/devise/shared/_links.erb +1 -1
  54. data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
  55. data/app/views/active_admin/page/index.html.arb +1 -0
  56. data/app/views/active_admin/resource/edit.html.arb +1 -0
  57. data/app/views/active_admin/resource/index.html.arb +1 -0
  58. data/app/views/active_admin/resource/new.html.arb +1 -0
  59. data/app/views/active_admin/resource/show.html.arb +1 -0
  60. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  61. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  62. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  63. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  64. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  65. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  66. data/app/views/layouts/active_admin.html.arb +1 -0
  67. data/app/views/layouts/active_admin_logged_out.html.erb +20 -9
  68. data/config/locales/ar.yml +9 -8
  69. data/config/locales/az.yml +138 -0
  70. data/config/locales/bg.yml +1 -1
  71. data/config/locales/bs.yml +1 -0
  72. data/config/locales/ca.yml +1 -1
  73. data/config/locales/cs.yml +1 -0
  74. data/config/locales/da.yml +1 -0
  75. data/config/locales/de-CH.yml +1 -0
  76. data/config/locales/de.yml +29 -0
  77. data/config/locales/el.yml +1 -0
  78. data/config/locales/en-CA.yml +4 -3
  79. data/config/locales/en-GB.yml +4 -3
  80. data/config/locales/en.yml +24 -4
  81. data/config/locales/eo.yml +145 -0
  82. data/config/locales/es-MX.yml +3 -1
  83. data/config/locales/es.yml +26 -6
  84. data/config/locales/fa.yml +1 -0
  85. data/config/locales/fi.yml +2 -1
  86. data/config/locales/fr.yml +9 -8
  87. data/config/locales/he.yml +1 -1
  88. data/config/locales/hr.yml +1 -0
  89. data/config/locales/hu.yml +5 -0
  90. data/config/locales/id.yml +1 -0
  91. data/config/locales/it.yml +31 -3
  92. data/config/locales/ja.yml +8 -2
  93. data/config/locales/ko.yml +2 -1
  94. data/config/locales/lt.yml +3 -2
  95. data/config/locales/lv.yml +3 -2
  96. data/config/locales/mk.yml +134 -0
  97. data/config/locales/nb.yml +16 -5
  98. data/config/locales/nl.yml +13 -1
  99. data/config/locales/pl.yml +72 -3
  100. data/config/locales/pt-BR.yml +9 -0
  101. data/config/locales/pt-PT.yml +1 -0
  102. data/config/locales/ro.yml +4 -2
  103. data/config/locales/ru.yml +3 -0
  104. data/config/locales/sk.yml +60 -0
  105. data/config/locales/sv-SE.yml +3 -0
  106. data/config/locales/tr.yml +10 -0
  107. data/config/locales/uk.yml +3 -0
  108. data/config/locales/vi.yml +82 -12
  109. data/config/locales/zh-CN.yml +68 -20
  110. data/config/locales/zh-TW.yml +1 -0
  111. data/lib/active_admin/abstract_view_factory.rb +14 -51
  112. data/lib/active_admin/application.rb +65 -172
  113. data/lib/active_admin/application_settings.rb +43 -0
  114. data/lib/active_admin/asset_registration.rb +4 -11
  115. data/lib/active_admin/authorization_adapter.rb +6 -3
  116. data/lib/active_admin/base_controller/authorization.rb +18 -18
  117. data/lib/active_admin/base_controller/menu.rb +1 -0
  118. data/lib/active_admin/base_controller.rb +12 -11
  119. data/lib/active_admin/batch_actions/controller.rb +6 -5
  120. data/lib/active_admin/batch_actions/resource_extension.rb +16 -10
  121. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -3
  122. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +7 -6
  123. data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -3
  124. data/lib/active_admin/batch_actions.rb +1 -0
  125. data/lib/active_admin/callbacks.rb +2 -1
  126. data/lib/active_admin/cancan_adapter.rb +2 -1
  127. data/lib/active_admin/collection_decorator.rb +32 -0
  128. data/lib/active_admin/component.rb +1 -0
  129. data/lib/active_admin/controller_action.rb +3 -1
  130. data/lib/active_admin/csv_builder.rb +15 -21
  131. data/lib/active_admin/dependency.rb +12 -79
  132. data/lib/active_admin/deprecation.rb +1 -25
  133. data/lib/active_admin/devise.rb +16 -5
  134. data/lib/active_admin/dsl.rb +3 -9
  135. data/lib/active_admin/dynamic_setting.rb +39 -0
  136. data/lib/active_admin/dynamic_settings_node.rb +29 -0
  137. data/lib/active_admin/engine.rb +16 -7
  138. data/lib/active_admin/error.rb +5 -4
  139. data/lib/active_admin/filters/active.rb +2 -1
  140. data/lib/active_admin/filters/active_filter.rb +52 -15
  141. data/lib/active_admin/filters/active_sidebar.rb +8 -30
  142. data/lib/active_admin/filters/dsl.rb +1 -0
  143. data/lib/active_admin/filters/forms.rb +13 -9
  144. data/lib/active_admin/filters/formtastic_addons.rb +3 -7
  145. data/lib/active_admin/filters/resource_extension.rb +34 -9
  146. data/lib/active_admin/filters.rb +8 -7
  147. data/lib/active_admin/form_builder.rb +110 -70
  148. data/lib/active_admin/generators/boilerplate.rb +13 -4
  149. data/lib/active_admin/helpers/collection.rb +2 -0
  150. data/lib/active_admin/helpers/i18n.rb +1 -0
  151. data/lib/active_admin/helpers/optional_display.rb +3 -2
  152. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -0
  153. data/lib/active_admin/helpers/scope_chain.rb +2 -0
  154. data/lib/active_admin/inputs/datepicker_input.rb +10 -2
  155. data/lib/active_admin/inputs/filters/base/search_method_select.rb +7 -6
  156. data/lib/active_admin/inputs/filters/base.rb +2 -1
  157. data/lib/active_admin/inputs/filters/boolean_input.rb +2 -1
  158. data/lib/active_admin/inputs/filters/check_boxes_input.rb +2 -1
  159. data/lib/active_admin/inputs/filters/date_picker_input.rb +1 -0
  160. data/lib/active_admin/inputs/filters/date_range_input.rb +16 -12
  161. data/lib/active_admin/inputs/filters/numeric_input.rb +1 -0
  162. data/lib/active_admin/inputs/filters/select_input.rb +8 -3
  163. data/lib/active_admin/inputs/filters/string_input.rb +1 -0
  164. data/lib/active_admin/inputs/filters/text_input.rb +1 -0
  165. data/lib/active_admin/inputs.rb +1 -0
  166. data/lib/active_admin/localizers/resource_localizer.rb +4 -3
  167. data/lib/active_admin/localizers.rb +2 -1
  168. data/lib/active_admin/menu.rb +9 -11
  169. data/lib/active_admin/menu_collection.rb +1 -0
  170. data/lib/active_admin/menu_item.rb +11 -38
  171. data/lib/active_admin/namespace.rb +33 -20
  172. data/lib/active_admin/namespace_settings.rb +127 -0
  173. data/lib/active_admin/order_clause.rb +4 -3
  174. data/lib/active_admin/orm/active_record/comments/comment.rb +5 -4
  175. data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -0
  176. data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -0
  177. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +1 -0
  178. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +36 -25
  179. data/lib/active_admin/orm/active_record/comments/views.rb +3 -2
  180. data/lib/active_admin/orm/active_record/comments.rb +41 -29
  181. data/lib/active_admin/orm/active_record.rb +2 -1
  182. data/lib/active_admin/orm/mongoid.rb +1 -0
  183. data/lib/active_admin/page.rb +2 -1
  184. data/lib/active_admin/page_controller.rb +1 -0
  185. data/lib/active_admin/page_dsl.rb +2 -1
  186. data/lib/active_admin/page_presenter.rb +3 -1
  187. data/lib/active_admin/pundit_adapter.rb +71 -16
  188. data/lib/active_admin/resource/action_items.rb +12 -6
  189. data/lib/active_admin/resource/attributes.rb +9 -5
  190. data/lib/active_admin/resource/belongs_to.rb +9 -3
  191. data/lib/active_admin/resource/controllers.rb +2 -1
  192. data/lib/active_admin/resource/includes.rb +1 -0
  193. data/lib/active_admin/resource/menu.rb +6 -5
  194. data/lib/active_admin/resource/model.rb +16 -0
  195. data/lib/active_admin/resource/naming.rb +6 -5
  196. data/lib/active_admin/resource/ordering.rb +1 -0
  197. data/lib/active_admin/resource/page_presenters.rb +1 -0
  198. data/lib/active_admin/resource/pagination.rb +1 -0
  199. data/lib/active_admin/resource/routes.rb +26 -14
  200. data/lib/active_admin/resource/scope_to.rb +8 -7
  201. data/lib/active_admin/resource/scopes.rb +4 -3
  202. data/lib/active_admin/resource/sidebars.rb +3 -2
  203. data/lib/active_admin/resource.rb +37 -22
  204. data/lib/active_admin/resource_collection.rb +3 -2
  205. data/lib/active_admin/resource_controller/action_builder.rb +11 -0
  206. data/lib/active_admin/resource_controller/data_access.rb +35 -5
  207. data/lib/active_admin/resource_controller/decorators.rb +10 -31
  208. data/lib/active_admin/resource_controller/polymorphic_routes.rb +38 -0
  209. data/lib/active_admin/resource_controller/resource_class_methods.rb +3 -0
  210. data/lib/active_admin/resource_controller/scoping.rb +2 -1
  211. data/lib/active_admin/resource_controller/sidebars.rb +1 -0
  212. data/lib/active_admin/resource_controller/streaming.rb +9 -7
  213. data/lib/active_admin/resource_controller.rb +14 -10
  214. data/lib/active_admin/resource_dsl.rb +17 -27
  215. data/lib/active_admin/router.rb +91 -84
  216. data/lib/active_admin/scope.rb +20 -11
  217. data/lib/active_admin/settings_node.rb +20 -0
  218. data/lib/active_admin/sidebar_section.rb +4 -1
  219. data/lib/active_admin/version.rb +2 -1
  220. data/lib/active_admin/view_factory.rb +18 -17
  221. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +1 -0
  222. data/lib/active_admin/view_helpers/auto_link_helper.rb +2 -1
  223. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +6 -5
  224. data/lib/active_admin/view_helpers/display_helper.rb +25 -8
  225. data/lib/active_admin/view_helpers/download_format_links_helper.rb +3 -1
  226. data/lib/active_admin/view_helpers/fields_for.rb +3 -2
  227. data/lib/active_admin/view_helpers/flash_helper.rb +1 -0
  228. data/lib/active_admin/view_helpers/form_helper.rb +1 -0
  229. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +4 -0
  230. data/lib/active_admin/view_helpers/scope_name_helper.rb +1 -0
  231. data/lib/active_admin/view_helpers/sidebar_helper.rb +1 -0
  232. data/lib/active_admin/view_helpers/title_helper.rb +1 -0
  233. data/lib/active_admin/view_helpers/view_factory_helper.rb +1 -0
  234. data/lib/active_admin/view_helpers.rb +2 -1
  235. data/lib/active_admin/views/action_items.rb +1 -0
  236. data/lib/active_admin/views/components/active_admin_form.rb +14 -8
  237. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  238. data/lib/active_admin/views/components/attributes_table.rb +9 -8
  239. data/lib/active_admin/views/components/blank_slate.rb +2 -1
  240. data/lib/active_admin/views/components/columns.rb +1 -0
  241. data/lib/active_admin/views/components/dropdown_menu.rb +7 -9
  242. data/lib/active_admin/views/components/index_list.rb +4 -3
  243. data/lib/active_admin/views/components/menu.rb +33 -0
  244. data/lib/active_admin/views/components/menu_item.rb +59 -0
  245. data/lib/active_admin/views/components/paginated_collection.rb +22 -20
  246. data/lib/active_admin/views/components/panel.rb +2 -1
  247. data/lib/active_admin/views/components/scopes.rb +18 -8
  248. data/lib/active_admin/views/components/sidebar.rb +14 -0
  249. data/lib/active_admin/views/components/sidebar_section.rb +1 -0
  250. data/lib/active_admin/views/components/site_title.rb +7 -7
  251. data/lib/active_admin/views/components/status_tag.rb +14 -26
  252. data/lib/active_admin/views/components/table_for.rb +22 -29
  253. data/lib/active_admin/views/components/tabs.rb +18 -5
  254. data/lib/active_admin/views/components/unsupported_browser.rb +1 -0
  255. data/lib/active_admin/views/footer.rb +6 -8
  256. data/lib/active_admin/views/header.rb +4 -15
  257. data/lib/active_admin/views/index_as_block.rb +1 -0
  258. data/lib/active_admin/views/index_as_blog.rb +3 -2
  259. data/lib/active_admin/views/index_as_grid.rb +27 -26
  260. data/lib/active_admin/views/index_as_table.rb +34 -25
  261. data/lib/active_admin/views/pages/base.rb +47 -62
  262. data/lib/active_admin/views/pages/form.rb +1 -0
  263. data/lib/active_admin/views/pages/index.rb +16 -13
  264. data/lib/active_admin/views/pages/layout.rb +1 -0
  265. data/lib/active_admin/views/pages/page.rb +1 -0
  266. data/lib/active_admin/views/pages/show.rb +1 -0
  267. data/lib/active_admin/views/tabbed_navigation.rb +5 -59
  268. data/lib/active_admin/views/title_bar.rb +2 -1
  269. data/lib/active_admin/views.rb +2 -1
  270. data/lib/active_admin.rb +68 -63
  271. data/lib/activeadmin.rb +2 -1
  272. data/lib/generators/active_admin/assets/assets_generator.rb +3 -2
  273. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  274. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  275. data/lib/generators/active_admin/devise/devise_generator.rb +6 -5
  276. data/lib/generators/active_admin/install/install_generator.rb +19 -8
  277. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +62 -3
  278. data/lib/generators/active_admin/install/templates/dashboard.rb +3 -3
  279. data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +1 -15
  280. data/lib/generators/active_admin/page/page_generator.rb +2 -1
  281. data/lib/generators/active_admin/page/templates/page.rb +1 -0
  282. data/lib/generators/active_admin/resource/resource_generator.rb +5 -4
  283. data/lib/generators/active_admin/resource/templates/admin.rb.erb +40 -37
  284. data/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  285. data/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  286. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  287. data/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  288. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +27 -0
  289. data/lib/ransack_ext.rb +10 -9
  290. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  291. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  292. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  293. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +274 -283
  294. metadata +123 -595
  295. data/.github/ISSUE_TEMPLATE.md +0 -20
  296. data/.gitignore +0 -49
  297. data/.mdlrc +0 -1
  298. data/.rubocop.yml +0 -76
  299. data/.simplecov +0 -13
  300. data/.travis.yml +0 -51
  301. data/.yardopts +0 -7
  302. data/Gemfile +0 -58
  303. data/Rakefile +0 -54
  304. data/activeadmin.gemspec +0 -32
  305. data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
  306. data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
  307. data/app/assets/images/active_admin/orderable.png +0 -0
  308. data/app/assets/javascripts/active_admin/base.js.coffee +0 -13
  309. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  310. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  311. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -11
  312. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -14
  313. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -26
  314. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -7
  315. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -42
  316. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -46
  317. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -104
  318. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  319. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  320. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  321. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -46
  322. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -22
  323. data/codecov.yml +0 -25
  324. data/config/i18n-tasks.yml +0 -26
  325. data/config/mdl_style.rb +0 -9
  326. data/cucumber.yml +0 -3
  327. data/docs/0-installation.md +0 -118
  328. data/docs/1-general-configuration.md +0 -189
  329. data/docs/10-custom-pages.md +0 -136
  330. data/docs/11-decorators.md +0 -59
  331. data/docs/12-arbre-components.md +0 -174
  332. data/docs/13-authorization-adapter.md +0 -266
  333. data/docs/14-gotchas.md +0 -138
  334. data/docs/2-resource-customization.md +0 -461
  335. data/docs/3-index-pages/custom-index.md +0 -35
  336. data/docs/3-index-pages/index-as-block.md +0 -19
  337. data/docs/3-index-pages/index-as-blog.md +0 -69
  338. data/docs/3-index-pages/index-as-grid.md +0 -27
  339. data/docs/3-index-pages/index-as-table.md +0 -227
  340. data/docs/3-index-pages.md +0 -311
  341. data/docs/4-csv-format.md +0 -74
  342. data/docs/5-forms.md +0 -218
  343. data/docs/6-show-pages.md +0 -81
  344. data/docs/7-sidebars.md +0 -75
  345. data/docs/8-custom-actions.md +0 -166
  346. data/docs/9-batch-actions.md +0 -237
  347. data/docs/CNAME +0 -1
  348. data/docs/Gemfile +0 -2
  349. data/docs/README.md +0 -24
  350. data/docs/_config.yml +0 -2
  351. data/docs/_includes/footer.html +0 -8
  352. data/docs/_includes/google-analytics.html +0 -16
  353. data/docs/_includes/head.html +0 -7
  354. data/docs/_includes/toc.html +0 -98
  355. data/docs/_includes/top-menu.html +0 -9
  356. data/docs/_layouts/default.html +0 -21
  357. data/docs/documentation.md +0 -60
  358. data/docs/images/activeadmin.png +0 -0
  359. data/docs/images/code-header.png +0 -0
  360. data/docs/images/divider.png +0 -0
  361. data/docs/images/features.png +0 -0
  362. data/docs/index.html +0 -125
  363. data/docs/stylesheets/main.css +0 -1152
  364. data/features/action_item.feature +0 -73
  365. data/features/authorization.feature +0 -64
  366. data/features/authorization_cancan.feature +0 -52
  367. data/features/authorization_pundit.feature +0 -37
  368. data/features/belongs_to.feature +0 -124
  369. data/features/breadcrumb.feature +0 -75
  370. data/features/comments/commenting.feature +0 -178
  371. data/features/comments/viewing_index.feature +0 -19
  372. data/features/create_another.feature +0 -55
  373. data/features/dashboard.feature +0 -16
  374. data/features/decorators.feature +0 -43
  375. data/features/development_reloading.feature +0 -28
  376. data/features/edit_page.feature +0 -116
  377. data/features/favicon.feature +0 -20
  378. data/features/first_boot.feature +0 -16
  379. data/features/footer.feature +0 -28
  380. data/features/global_navigation.feature +0 -29
  381. data/features/i18n.feature +0 -55
  382. data/features/index/batch_actions.feature +0 -218
  383. data/features/index/filters.feature +0 -239
  384. data/features/index/format_as_csv.feature +0 -220
  385. data/features/index/formats.feature +0 -88
  386. data/features/index/index_as_block.feature +0 -15
  387. data/features/index/index_as_blog.feature +0 -69
  388. data/features/index/index_as_grid.feature +0 -45
  389. data/features/index/index_as_table.feature +0 -291
  390. data/features/index/index_blank_slate.feature +0 -83
  391. data/features/index/index_parameters.feature +0 -75
  392. data/features/index/index_scope_to.feature +0 -56
  393. data/features/index/index_scopes.feature +0 -285
  394. data/features/index/page_title.feature +0 -41
  395. data/features/index/pagination.feature +0 -63
  396. data/features/index/switch_index_view.feature +0 -73
  397. data/features/menu.feature +0 -72
  398. data/features/meta_tags.feature +0 -21
  399. data/features/new_page.feature +0 -107
  400. data/features/registering_assets.feature +0 -38
  401. data/features/registering_pages.feature +0 -237
  402. data/features/registering_resources.feature +0 -33
  403. data/features/renamed_resource.feature +0 -30
  404. data/features/root_to.feature +0 -17
  405. data/features/show/attributes_table_title.feature +0 -54
  406. data/features/show/columns.feature +0 -40
  407. data/features/show/default_content.feature +0 -44
  408. data/features/show/page_title.feature +0 -58
  409. data/features/show/tabs.feature +0 -33
  410. data/features/sidebar_sections.feature +0 -210
  411. data/features/site_title.feature +0 -47
  412. data/features/specifying_actions.feature +0 -118
  413. data/features/step_definitions/action_item_steps.rb +0 -7
  414. data/features/step_definitions/action_link_steps.rb +0 -19
  415. data/features/step_definitions/additional_web_steps.rb +0 -81
  416. data/features/step_definitions/asset_steps.rb +0 -15
  417. data/features/step_definitions/attribute_steps.rb +0 -18
  418. data/features/step_definitions/attributes_table_title_steps.rb +0 -11
  419. data/features/step_definitions/batch_action_steps.rb +0 -81
  420. data/features/step_definitions/blog_steps.rb +0 -3
  421. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  422. data/features/step_definitions/column_steps.rb +0 -8
  423. data/features/step_definitions/comment_steps.rb +0 -32
  424. data/features/step_definitions/configuration_steps.rb +0 -100
  425. data/features/step_definitions/dashboard_steps.rb +0 -15
  426. data/features/step_definitions/factory_steps.rb +0 -35
  427. data/features/step_definitions/filter_steps.rb +0 -48
  428. data/features/step_definitions/flash_steps.rb +0 -11
  429. data/features/step_definitions/footer_steps.rb +0 -11
  430. data/features/step_definitions/format_steps.rb +0 -56
  431. data/features/step_definitions/i18n_steps.rb +0 -11
  432. data/features/step_definitions/index_scope_steps.rb +0 -29
  433. data/features/step_definitions/index_views_steps.rb +0 -3
  434. data/features/step_definitions/layout_steps.rb +0 -3
  435. data/features/step_definitions/member_link_steps.rb +0 -7
  436. data/features/step_definitions/menu_steps.rb +0 -11
  437. data/features/step_definitions/meta_tag_steps.rb +0 -3
  438. data/features/step_definitions/pagination_steps.rb +0 -15
  439. data/features/step_definitions/sidebar_steps.rb +0 -11
  440. data/features/step_definitions/site_title_steps.rb +0 -17
  441. data/features/step_definitions/tab_steps.rb +0 -8
  442. data/features/step_definitions/table_steps.rb +0 -116
  443. data/features/step_definitions/user_steps.rb +0 -52
  444. data/features/step_definitions/web_steps.rb +0 -86
  445. data/features/sti_resource.feature +0 -65
  446. data/features/strong_parameters.feature +0 -69
  447. data/features/support/env.rb +0 -122
  448. data/features/support/paths.rb +0 -73
  449. data/features/support/regular_env.rb +0 -7
  450. data/features/support/reload_env.rb +0 -7
  451. data/features/support/selectors.rb +0 -45
  452. data/features/users/logging_in.feature +0 -36
  453. data/features/users/logging_out.feature +0 -13
  454. data/features/users/resetting_password.feature +0 -34
  455. data/gemfiles/rails_42.gemfile +0 -10
  456. data/gemfiles/rails_50.gemfile +0 -10
  457. data/gemfiles/rails_51.gemfile +0 -10
  458. data/lib/active_admin/event.rb +0 -24
  459. data/lib/active_admin/helpers/settings.rb +0 -114
  460. data/lib/active_admin/reloader.rb +0 -25
  461. data/lib/bug_report_templates/active_admin_master.rb +0 -113
  462. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  463. data/spec/bug_report_templates_spec.rb +0 -26
  464. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  465. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  466. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  467. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  468. data/spec/javascripts/fixtures/flashes.html +0 -2
  469. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  470. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  471. data/spec/javascripts/support/jasmine.yml +0 -74
  472. data/spec/javascripts/support/jasmine_runner.rb +0 -19
  473. data/spec/rails_helper.rb +0 -59
  474. data/spec/requests/default_namespace_spec.rb +0 -81
  475. data/spec/requests/memory_spec.rb +0 -25
  476. data/spec/requests/stylesheets_spec.rb +0 -18
  477. data/spec/spec_helper.rb +0 -1
  478. data/spec/support/active_admin_integration_spec_helper.rb +0 -73
  479. data/spec/support/active_admin_request_helpers.rb +0 -39
  480. data/spec/support/rails_template.rb +0 -150
  481. data/spec/support/rails_template_with_data.rb +0 -327
  482. data/spec/support/templates/admin/stores.rb +0 -7
  483. data/spec/support/templates/en.yml +0 -8
  484. data/spec/support/templates/manifest.js +0 -3
  485. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  486. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  487. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  488. data/spec/support/templates/policies/application_policy.rb +0 -44
  489. data/spec/support/templates/policies/category_policy.rb +0 -7
  490. data/spec/support/templates/policies/post_policy.rb +0 -15
  491. data/spec/support/templates/policies/store_policy.rb +0 -11
  492. data/spec/support/templates/policies/user_policy.rb +0 -11
  493. data/spec/support/templates/post_decorator.rb +0 -10
  494. data/spec/unit/abstract_view_factory_spec.rb +0 -78
  495. data/spec/unit/action_builder_spec.rb +0 -125
  496. data/spec/unit/active_admin_spec.rb +0 -11
  497. data/spec/unit/application_spec.rb +0 -184
  498. data/spec/unit/asset_registration_spec.rb +0 -81
  499. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  500. data/spec/unit/authorization/controller_authorization_spec.rb +0 -43
  501. data/spec/unit/authorization/index_overriding_spec.rb +0 -23
  502. data/spec/unit/auto_link_spec.rb +0 -93
  503. data/spec/unit/batch_actions/resource_spec.rb +0 -84
  504. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  505. data/spec/unit/belongs_to_spec.rb +0 -76
  506. data/spec/unit/cancan_adapter_spec.rb +0 -43
  507. data/spec/unit/comments_spec.rb +0 -176
  508. data/spec/unit/component_spec.rb +0 -18
  509. data/spec/unit/config_shared_examples.rb +0 -59
  510. data/spec/unit/controller_filters_spec.rb +0 -41
  511. data/spec/unit/csv_builder_spec.rb +0 -304
  512. data/spec/unit/dependency_spec.rb +0 -135
  513. data/spec/unit/devise_spec.rb +0 -110
  514. data/spec/unit/dsl_spec.rb +0 -120
  515. data/spec/unit/filters/active_filter_spec.rb +0 -135
  516. data/spec/unit/filters/active_spec.rb +0 -24
  517. data/spec/unit/filters/filter_form_builder_spec.rb +0 -502
  518. data/spec/unit/filters/resource_spec.rb +0 -128
  519. data/spec/unit/form_builder_spec.rb +0 -990
  520. data/spec/unit/generators/install_spec.rb +0 -31
  521. data/spec/unit/helpers/collection_spec.rb +0 -68
  522. data/spec/unit/helpers/scope_chain_spec.rb +0 -35
  523. data/spec/unit/helpers/settings_spec.rb +0 -30
  524. data/spec/unit/i18n_spec.rb +0 -29
  525. data/spec/unit/localizers/resource_localizer_spec.rb +0 -36
  526. data/spec/unit/menu_collection_spec.rb +0 -62
  527. data/spec/unit/menu_item_spec.rb +0 -141
  528. data/spec/unit/menu_spec.rb +0 -71
  529. data/spec/unit/namespace/authorization_spec.rb +0 -27
  530. data/spec/unit/namespace/register_page_spec.rb +0 -99
  531. data/spec/unit/namespace/register_resource_spec.rb +0 -162
  532. data/spec/unit/namespace_spec.rb +0 -124
  533. data/spec/unit/order_clause_spec.rb +0 -81
  534. data/spec/unit/page_controller_spec.rb +0 -5
  535. data/spec/unit/page_spec.rb +0 -128
  536. data/spec/unit/pretty_format_spec.rb +0 -82
  537. data/spec/unit/pundit_adapter_spec.rb +0 -98
  538. data/spec/unit/resource/action_items_spec.rb +0 -69
  539. data/spec/unit/resource/attributes_spec.rb +0 -49
  540. data/spec/unit/resource/includes_spec.rb +0 -21
  541. data/spec/unit/resource/menu_spec.rb +0 -18
  542. data/spec/unit/resource/naming_spec.rb +0 -122
  543. data/spec/unit/resource/ordering_spec.rb +0 -35
  544. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  545. data/spec/unit/resource/pagination_spec.rb +0 -38
  546. data/spec/unit/resource/routes_spec.rb +0 -125
  547. data/spec/unit/resource/scopes_spec.rb +0 -50
  548. data/spec/unit/resource/sidebars_spec.rb +0 -43
  549. data/spec/unit/resource_collection_spec.rb +0 -175
  550. data/spec/unit/resource_controller/data_access_spec.rb +0 -230
  551. data/spec/unit/resource_controller/decorators_spec.rb +0 -94
  552. data/spec/unit/resource_controller/sidebars_spec.rb +0 -37
  553. data/spec/unit/resource_controller_spec.rb +0 -273
  554. data/spec/unit/resource_registration_spec.rb +0 -61
  555. data/spec/unit/resource_spec.rb +0 -320
  556. data/spec/unit/routing_spec.rb +0 -211
  557. data/spec/unit/scope_spec.rb +0 -209
  558. data/spec/unit/settings_spec.rb +0 -117
  559. data/spec/unit/view_factory_spec.rb +0 -19
  560. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -252
  561. data/spec/unit/view_helpers/display_helper_spec.rb +0 -195
  562. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  563. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  564. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -24
  565. data/spec/unit/view_helpers/form_helper_spec.rb +0 -42
  566. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -138
  567. data/spec/unit/views/components/attributes_table_spec.rb +0 -271
  568. data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
  569. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  570. data/spec/unit/views/components/columns_spec.rb +0 -187
  571. data/spec/unit/views/components/index_list_spec.rb +0 -49
  572. data/spec/unit/views/components/index_table_for_spec.rb +0 -127
  573. data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
  574. data/spec/unit/views/components/panel_spec.rb +0 -58
  575. data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
  576. data/spec/unit/views/components/site_title_spec.rb +0 -76
  577. data/spec/unit/views/components/status_tag_spec.rb +0 -265
  578. data/spec/unit/views/components/table_for_spec.rb +0 -436
  579. data/spec/unit/views/components/tabs_spec.rb +0 -67
  580. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
  581. data/spec/unit/views/index_as_blog_spec.rb +0 -76
  582. data/spec/unit/views/pages/form_spec.rb +0 -54
  583. data/spec/unit/views/pages/index_spec.rb +0 -60
  584. data/spec/unit/views/pages/layout_spec.rb +0 -59
  585. data/spec/unit/views/pages/show_spec.rb +0 -32
  586. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  587. data/tasks/docs.rake +0 -64
  588. data/tasks/lint.rake +0 -21
  589. data/tasks/local.rake +0 -25
  590. data/tasks/parallel_tests.rake +0 -66
  591. data/tasks/test.rake +0 -29
  592. /data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +0 -0
@@ -1,227 +0,0 @@
1
- ---
2
- redirect_from: /docs/3-index-pages/index-as-table.html
3
- ---
4
-
5
- # Index as a Table
6
-
7
- By default, the index page is a table with each of the models content columns and links to
8
- show, edit and delete the object. There are many ways to customize what gets
9
- displayed.
10
-
11
- ## Defining Columns
12
-
13
- To display an attribute or a method on a resource, simply pass a symbol into the
14
- column method:
15
-
16
- ```ruby
17
- index do
18
- selectable_column
19
- column :title
20
- end
21
- ```
22
-
23
- For association columns we make an educated guess on what to display by
24
- calling the following methods in the following order:
25
-
26
- ```ruby
27
- :display_name, :full_name, :name, :username, :login, :title, :email, :to_s
28
- ```
29
-
30
- This can be customized in `config/initializers/active_admin.rb`.
31
-
32
- If the default title does not work for you, pass it as the first argument:
33
-
34
- ```ruby
35
- index do
36
- selectable_column
37
- column "My Custom Title", :title
38
- end
39
- ```
40
-
41
- Sometimes that just isn't enough and you need to write some view-specific code.
42
- For example, say we wanted a "Title" column that links to the posts admin screen.
43
-
44
- `column` accepts a block that will be rendered for each of the objects in the collection.
45
- The block is called once for each resource, which is passed as an argument to the block.
46
-
47
- ```ruby
48
- index do
49
- selectable_column
50
- column "Title" do |post|
51
- link_to post.title, admin_post_path(post)
52
- end
53
- end
54
- ```
55
-
56
- ## Defining Actions
57
-
58
- To setup links to View, Edit and Delete a resource, use the `actions` method:
59
-
60
- ```ruby
61
- index do
62
- selectable_column
63
- column :title
64
- actions
65
- end
66
- ```
67
-
68
- You can also append custom links to the default links:
69
-
70
- ```ruby
71
- index do
72
- selectable_column
73
- column :title
74
- actions do |post|
75
- item "Preview", admin_preview_post_path(post), class: "member_link"
76
- end
77
- end
78
- ```
79
-
80
- Or forego the default links entirely:
81
-
82
- ```ruby
83
- index do
84
- column :title
85
- actions defaults: false do |post|
86
- item "View", admin_post_path(post)
87
- end
88
- end
89
- ```
90
-
91
- Or append custom action with custom html via arbre:
92
-
93
- ```ruby
94
- index do
95
- column :title
96
- actions do |post|
97
- a "View", href: admin_post_path(post)
98
- end
99
- end
100
- ```
101
-
102
- In case you prefer to list actions links in a dropdown menu:
103
-
104
- ```ruby
105
- index do
106
- selectable_column
107
- column :title
108
- actions dropdown: true do |post|
109
- item "Preview", admin_preview_post_path(post)
110
- end
111
- end
112
- ```
113
-
114
- In addition, you can insert the position of the row in the greater collection by using the index_column special command:
115
-
116
- ```ruby
117
- index do
118
- selectable_column
119
- index_column
120
- column :title
121
- end
122
- ```
123
-
124
- index_column take an optional offset parameter to allow a developer to set the starting number for the index (default is 1).
125
-
126
- ## Sorting
127
-
128
- When a column is generated from an Active Record attribute, the table is
129
- sortable by default. If you are creating a custom column, you may need to give
130
- Active Admin a hint for how to sort the table.
131
-
132
- If a column is defined using a block, you must pass the key to turn on sorting. The key
133
- is the attribute which gets used to sort objects using Active Record.
134
-
135
- By default, this is the column on the resource's table that the attribute corresponds to.
136
- Otherwise, any attribute that the resource collection responds to can be used.
137
-
138
- ```ruby
139
- index do
140
- column :title, sortable: :title do |post|
141
- link_to post.title, admin_post_path(post)
142
- end
143
- end
144
- ```
145
-
146
- You can turn off sorting on any column by passing false:
147
-
148
- ```ruby
149
- index do
150
- column :title, sortable: false
151
- end
152
- ```
153
-
154
- It's also possible to sort by PostgreSQL's hstore column key. You should set `sortable`
155
- option to a `column->'key'` value:
156
-
157
- ```ruby
158
- index do
159
- column :keywords, sortable: "meta->'keywords'"
160
- end
161
- ```
162
-
163
- ## Custom sorting
164
-
165
- It is also possible to use database specific expressions and options for sorting by column
166
-
167
- ```ruby
168
- order_by(:title) do |order_clause|
169
- if order_clause.order == 'desc'
170
- [order_clause.to_sql, 'NULLS LAST'].join(' ')
171
- else
172
- [order_clause.to_sql, 'NULLS FIRST'].join(' ')
173
- end
174
- end
175
-
176
- index do
177
- column :title
178
- end
179
- ```
180
-
181
- ## Associated Sorting
182
-
183
- You're normally able to sort columns alphabetically, but by default you
184
- can't sort by associated objects. Though with a few simple changes, you can.
185
-
186
- Assuming you're on the Books index page, and Book has_one Publisher:
187
-
188
- ```ruby
189
- controller do
190
- def scoped_collection
191
- super.includes :publisher # prevents N+1 queries to your database
192
- end
193
- end
194
- ```
195
-
196
- Then it's simple to sort by any Publisher attribute from within the index table:
197
-
198
- ```ruby
199
- index do
200
- column :publisher, sortable: 'publishers.name'
201
- end
202
- ```
203
-
204
- ## Showing and Hiding Columns
205
-
206
- The entire index block is rendered within the context of the view, so you can
207
- easily do things that show or hide columns based on the current context.
208
-
209
- For example, if you were using CanCan:
210
-
211
- ```ruby
212
- index do
213
- column :title, sortable: false
214
- column :secret_data if can? :manage, Post
215
- end
216
- ```
217
-
218
- ## Custom row class
219
-
220
- In order to add special class to table rows pass the proc object as a `:row_class` option
221
- of the `index` method.
222
-
223
- ```ruby
224
- index row_class: ->elem { 'active' if elem.active? } do
225
- # columns
226
- end
227
- ```
@@ -1,311 +0,0 @@
1
- ---
2
- redirect_from: /docs/3-index-pages.html
3
- ---
4
-
5
- # Customizing the Index Page
6
-
7
- Filtering and listing resources is one of the most important tasks for
8
- administering a web application. Active Admin provides many different tools for
9
- you to build a compelling interface into your data for the admin staff.
10
-
11
- Built in, Active Admin has the following index renderers:
12
-
13
- * *Table*: A table drawn with each row being a resource ([View Table Docs](3-index-pages/index-as-table.md))
14
- * *Grid*: A set of rows and columns each cell being a resource ([View Grid Docs](3-index-pages/index-as-grid.md))
15
- * *Blocks*: A set of rows (not tabular) each row being a resource ([View Blocks Docs](3-index-pages/index-as-block.md))
16
- * *Blog*: A title and body content, similar to a blog index ([View Blog Docs](3-index-pages/index-as-blog.md))
17
-
18
- All index pages also support scopes, filters, pagination, action items, and
19
- sidebar sections.
20
-
21
- ## Multiple Index Pages
22
-
23
- Sometime you may want more than one index page for a resource to represent
24
- different views to the user. If multiple index pages exist, Active Admin will
25
- automatically build links at the top of the default index page. Including
26
- multiple views is simple and requires creating multiple index components in
27
- your resource.
28
-
29
- ```ruby
30
- index do
31
- id_column
32
- column :image_title
33
- actions
34
- end
35
-
36
- index as: :grid do |product|
37
- link_to image_tag(product.image_path), admin_product_path(product)
38
- end
39
- ```
40
-
41
- The first index component will be the default index page unless you indicate
42
- otherwise by setting `:default` to true.
43
-
44
- ```ruby
45
- index do
46
- column :image_title
47
- actions
48
- end
49
-
50
- index as: :grid, default: true do |product|
51
- link_to image_tag(product.image_path), admin_product_path(product)
52
- end
53
- ```
54
-
55
- ## Custom Index
56
-
57
- Active Admin does not limit the index page to be a table, block, blog or grid.
58
- If you've created your own [custom index](3-index-pages/custom-index.md) page it
59
- can be included by setting `:as` to the class of the index component you created.
60
-
61
- ```ruby
62
- index as: ActiveAdmin::Views::IndexAsMyIdea do
63
- column :image_title
64
- actions
65
- end
66
- ```
67
-
68
- ## Index Filters
69
-
70
- By default the index screen includes a "Filters" sidebar on the right hand side
71
- with a filter for each attribute of the registered model. You can customize the
72
- filters that are displayed as well as the type of widgets they use.
73
-
74
- To display a filter for an attribute, use the `filter` method
75
-
76
- ```ruby
77
- ActiveAdmin.register Post do
78
- filter :title
79
- end
80
- ```
81
-
82
- Out of the box, Active Admin supports the following filter types:
83
-
84
- * *:string* - A drop down for selecting "Contains", "Equals", "Starts with",
85
- "Ends with" and an input for a value.
86
- * *:date_range* - A start and end date field with calendar inputs
87
- * *:numeric* - A drop down for selecting "Equal To", "Greater Than" or "Less
88
- Than" and an input for a value.
89
- * *:select* - A drop down which filters based on a selected item in a collection
90
- or all.
91
- * *:check_boxes* - A list of check boxes users can turn on and off to filter
92
-
93
- By default, Active Admin will pick the most relevant filter based on the
94
- attribute type. You can force the type by passing the `:as` option.
95
-
96
- ```ruby
97
- filter :author, as: :check_boxes
98
- ```
99
-
100
- The `:check_boxes` and `:select` types accept options for the collection. By default
101
- it attempts to create a collection based on an association. But you can pass in
102
- the collection as a proc to be called at render time.
103
-
104
- ```ruby
105
- filter :author, as: :check_boxes, collection: proc { Author.all }
106
- ```
107
-
108
- To override options for string or numeric filter pass `filters` option.
109
-
110
- ```ruby
111
- filter :title, filters: [:starts_with, :ends_with]
112
- ```
113
-
114
- Also, if you don't need the select with the options 'contains', 'equals',
115
- 'starts_with' or 'ends_with' just add the option to the filter name with an
116
- underscore.
117
-
118
- For example:
119
-
120
- ```ruby
121
- filter :name_equals
122
- # or
123
- filter :name_contains
124
- ```
125
-
126
- You can change the filter label by passing a label option:
127
-
128
- ```ruby
129
- filter :author, label: 'Something else'
130
- ```
131
-
132
- By default, Active Admin will try to use ActiveModel I18n to determine the label.
133
-
134
- You can also filter on more than one attribute of a model using the [Ransack
135
- search predicate
136
- syntax](https://github.com/activerecord-hackery/ransack/wiki/Basic-Searching).
137
- If using a custom search method, you will also need to specify the field type
138
- using `:as` and the label.
139
-
140
- ```ruby
141
- filter :first_name_or_last_name_cont, as: :string, label: "Name"
142
- ```
143
-
144
- Filters can also be disabled for a resource, a namespace or the entire
145
- application.
146
-
147
- To disable for a specific resource:
148
-
149
- ```ruby
150
- ActiveAdmin.register Post do
151
- config.filters = false
152
- end
153
- ```
154
-
155
- To disable for a namespace, in the initializer:
156
-
157
- ```ruby
158
- ActiveAdmin.setup do |config|
159
- config.namespace :my_namespace do |my_namespace|
160
- my_namespace.filters = false
161
- end
162
- end
163
- ```
164
-
165
- Or to disable for the entire application:
166
-
167
- ```ruby
168
- ActiveAdmin.setup do |config|
169
- config.filters = false
170
- end
171
- ```
172
-
173
- You can also add a filter and still preserve the default filters:
174
-
175
- ```ruby
176
- preserve_default_filters!
177
- filter :author
178
- ```
179
-
180
- Or you can also remove a filter and still preserve the default filters:
181
-
182
- ```ruby
183
- preserve_default_filters!
184
- remove_filter :id
185
- ```
186
-
187
- ## Index Scopes
188
-
189
- You can define custom scopes for your index page. This will add a tab bar above
190
- the index table to quickly filter your collection on pre-defined scopes. There
191
- are a number of ways to define your scopes:
192
-
193
- ```ruby
194
- scope :all, default: true
195
-
196
- # assumes the model has a scope called ':active'
197
- scope :active
198
-
199
- # renames model scope ':leaves' to ':subcategories'
200
- scope "Subcategories", :leaves
201
-
202
- # Dynamic scope name
203
- scope ->{ Date.today.strftime '%A' }, :published_today
204
-
205
- # custom scope not defined on the model
206
- scope("Inactive") { |scope| scope.where(active: false) }
207
-
208
- # conditionally show a custom controller scope
209
- scope "Published", if: -> { current_admin_user.can? :manage, Posts } do |posts|
210
- posts.published
211
- end
212
- ```
213
-
214
- Scopes can be labelled with a translation, e.g.
215
- `activerecord.scopes.invoice.expired`.
216
-
217
- ## Index default sort order
218
-
219
- You can define the default sort order for index pages:
220
-
221
- ```ruby
222
- ActiveAdmin.register Post do
223
- config.sort_order = 'name_asc'
224
- end
225
- ```
226
-
227
- ## Index pagination
228
-
229
- You can set the number of records per page as default:
230
-
231
- ```ruby
232
- ActiveAdmin.setup do |config|
233
- config.default_per_page = 30
234
- end
235
- ```
236
-
237
- You can set the number of records per page per resources:
238
-
239
- ```ruby
240
- ActiveAdmin.register Post do
241
- config.per_page = 10
242
- end
243
- ```
244
-
245
- Or allow users to choose themselves using dropdown with values
246
-
247
- ```ruby
248
- ActiveAdmin.register Post do
249
- config.per_page = [10, 50, 100]
250
- end
251
- ```
252
-
253
- You can change it per request / action too:
254
-
255
- ```ruby
256
- controller do
257
- before_action only: :index do
258
- @per_page = 100
259
- end
260
- end
261
- ```
262
-
263
- You can also disable pagination:
264
-
265
- ```ruby
266
- ActiveAdmin.register Post do
267
- config.paginate = false
268
- end
269
- ```
270
-
271
- If you have a very large database, you might want to disable `SELECT COUNT(*)`
272
- queries caused by the pagination info at the bottom of the page:
273
-
274
- ```ruby
275
- ActiveAdmin.register Post do
276
- index pagination_total: false do
277
- # ...
278
- end
279
- end
280
- ```
281
-
282
- ## Customizing Download Links
283
-
284
- You can easily remove or customize the download links you want displayed:
285
-
286
- ```ruby
287
- # Per resource:
288
- ActiveAdmin.register Post do
289
-
290
- index download_links: false
291
- index download_links: [:pdf]
292
- index download_links: proc{ current_user.can_view_download_links? }
293
-
294
- end
295
-
296
- # For the entire application:
297
- ActiveAdmin.setup do |config|
298
-
299
- config.download_links = false
300
- config.download_links = [:csv, :xml, :json, :pdf]
301
- config.download_links = proc { current_user.can_view_download_links? }
302
-
303
- end
304
- ```
305
-
306
- Note: you have to actually implement PDF rendering for your action, ActiveAdmin
307
- does not provide this feature. This setting just allows you to specify formats
308
- that you want to show up under the index collection.
309
-
310
- You'll need to use a PDF rendering library like PDFKit or WickedPDF to get the
311
- PDF generation you want.
data/docs/4-csv-format.md DELETED
@@ -1,74 +0,0 @@
1
- ---
2
- redirect_from: /docs/4-csv-format.html
3
- ---
4
-
5
- # Customizing the CSV format
6
-
7
- Active Admin provides CSV file downloads on the index screen for each Resource.
8
- By default it will render a CSV file with all the content columns of your
9
- registered model.
10
-
11
- Customizing the CSV format is as simple as customizing the index page.
12
-
13
- ```ruby
14
- ActiveAdmin.register Post do
15
- csv do
16
- column :title
17
- column(:author) { |post| post.author.full_name }
18
- column('bODY', humanize_name: false) # preserve case
19
- end
20
- end
21
- ```
22
-
23
- You can also set custom CSV settings for an individual resource:
24
-
25
- ```ruby
26
- ActiveAdmin.register Post do
27
- csv force_quotes: true, col_sep: ';', column_names: false do
28
- column :title
29
- column(:author) { |post| post.author.full_name }
30
- end
31
- end
32
- ```
33
-
34
- Or system-wide:
35
-
36
- ```ruby
37
- # config/initializers/active_admin.rb
38
-
39
- # Set the CSV builder separator
40
- config.csv_options = { col_sep: ';' }
41
-
42
- # Force the use of quotes
43
- config.csv_options = { force_quotes: true }
44
- ```
45
-
46
- You can customize the filename by overriding `csv_filename` in the controller block.
47
-
48
- ```ruby
49
- ActiveAdmin.register User do
50
- controller do
51
- def csv_filename
52
- 'User Details.csv'
53
- end
54
- end
55
- end
56
- ```
57
-
58
- ## Streaming
59
-
60
- By default Active Admin streams the CSV response to your browser as it's generated.
61
- This is good because it prevents request timeouts, for example the infamous H12
62
- error on Heroku.
63
-
64
- However if an exception occurs while generating the CSV, the request will eventually
65
- time out, with the last line containing the exception message. CSV streaming is
66
- disabled in development to help debug these exceptions. That lets you use tools like
67
- better_errors and web-console to debug the issue. If you want to customize the
68
- environments where CSV streaming is disabled, you can change this setting:
69
-
70
- ```ruby
71
- # config/initializers/active_admin.rb
72
-
73
- config.disable_streaming_in = ['development', 'staging']
74
- ```