activeadmin 1.0.0.pre1 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (595) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +587 -939
  3. data/CODE_OF_CONDUCT.md +74 -0
  4. data/CONTRIBUTING.md +110 -59
  5. data/LICENSE +0 -5
  6. data/README.md +80 -61
  7. data/app/assets/javascripts/active_admin/base.js +517 -0
  8. data/app/assets/stylesheets/active_admin/_base.scss +31 -34
  9. data/app/assets/stylesheets/active_admin/_forms.scss +33 -35
  10. data/app/assets/stylesheets/active_admin/_header.scss +40 -8
  11. data/app/assets/stylesheets/active_admin/_mixins.scss +1 -1
  12. data/app/assets/stylesheets/active_admin/_normalize.scss +447 -0
  13. data/app/assets/stylesheets/active_admin/components/_batch_actions.scss +0 -5
  14. data/app/assets/stylesheets/active_admin/components/_buttons.scss +0 -5
  15. data/app/assets/stylesheets/active_admin/components/_comments.scss +2 -2
  16. data/app/assets/stylesheets/active_admin/components/_pagination.scss +11 -0
  17. data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
  18. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -4
  19. data/app/assets/stylesheets/active_admin/components/_tables.scss +5 -3
  20. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  21. data/app/assets/stylesheets/active_admin/mixins/_all.scss +8 -11
  22. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  23. data/app/assets/stylesheets/active_admin/mixins/_sections.scss +0 -1
  24. data/app/assets/stylesheets/active_admin/mixins/_typography.scss +1 -1
  25. data/app/assets/stylesheets/active_admin/mixins/_variables.scss +9 -1
  26. data/app/assets/stylesheets/active_admin/print.scss +3 -4
  27. data/app/assets/stylesheets/active_admin/structure/_main_structure.scss +1 -1
  28. data/app/assets/stylesheets/active_admin/structure/_title_bar.scss +0 -5
  29. data/app/javascript/active_admin/base.js +28 -0
  30. data/app/javascript/active_admin/ext/jquery-ui.js +7 -0
  31. data/app/javascript/active_admin/ext/jquery.js +9 -0
  32. data/app/javascript/active_admin/initializers/batch-actions.js +61 -0
  33. data/app/javascript/active_admin/initializers/checkbox-toggler.js +3 -0
  34. data/app/javascript/active_admin/initializers/datepicker.js +16 -0
  35. data/app/javascript/active_admin/initializers/dropdown-menu.js +9 -0
  36. data/app/javascript/active_admin/initializers/filters.js +10 -0
  37. data/app/javascript/active_admin/initializers/has-many.js +95 -0
  38. data/app/javascript/active_admin/initializers/per-page.js +13 -0
  39. data/app/javascript/active_admin/initializers/table-checkbox-toggler.js +3 -0
  40. data/app/javascript/active_admin/initializers/tabs.js +6 -0
  41. data/app/javascript/active_admin/lib/checkbox-toggler.js +49 -0
  42. data/app/javascript/active_admin/lib/dropdown-menu.js +116 -0
  43. data/app/javascript/active_admin/lib/filters.js +39 -0
  44. data/app/javascript/active_admin/lib/modal-dialog.js +63 -0
  45. data/app/javascript/active_admin/lib/per-page.js +38 -0
  46. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +38 -0
  47. data/app/javascript/active_admin/lib/utils.js +40 -0
  48. data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
  49. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  50. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  51. data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
  52. data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
  53. data/app/views/active_admin/devise/registrations/new.html.erb +3 -4
  54. data/app/views/active_admin/devise/sessions/new.html.erb +2 -2
  55. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  56. data/app/views/active_admin/devise/shared/_links.erb +12 -6
  57. data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
  58. data/app/views/kaminari/active_admin/_first_page.html.erb +11 -0
  59. data/app/views/kaminari/active_admin/_gap.html.erb +8 -0
  60. data/app/views/kaminari/active_admin/_last_page.html.erb +11 -0
  61. data/app/views/kaminari/active_admin/_next_page.html.erb +11 -0
  62. data/app/views/kaminari/active_admin/_page.html.erb +12 -0
  63. data/app/views/kaminari/active_admin/_paginator.html.erb +25 -0
  64. data/app/views/kaminari/active_admin/_prev_page.html.erb +11 -0
  65. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  66. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  67. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  68. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  69. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  70. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  71. data/app/views/layouts/active_admin_logged_out.html.erb +21 -7
  72. data/config/locales/ar.yml +62 -47
  73. data/config/locales/az.yml +138 -0
  74. data/config/locales/bg.yml +1 -3
  75. data/config/locales/bs.yml +1 -2
  76. data/config/locales/ca.yml +2 -4
  77. data/config/locales/cs.yml +1 -2
  78. data/config/locales/da.yml +45 -14
  79. data/config/locales/de-CH.yml +4 -3
  80. data/config/locales/de.yml +46 -3
  81. data/config/locales/el.yml +3 -4
  82. data/config/locales/en-CA.yml +139 -0
  83. data/config/locales/en-GB.yml +46 -5
  84. data/config/locales/en.yml +44 -9
  85. data/config/locales/eo.yml +145 -0
  86. data/config/locales/es-MX.yml +9 -6
  87. data/config/locales/es.yml +63 -14
  88. data/config/locales/fa.yml +1 -2
  89. data/config/locales/fi.yml +2 -3
  90. data/config/locales/fr.yml +36 -8
  91. data/config/locales/he.yml +53 -7
  92. data/config/locales/hr.yml +1 -2
  93. data/config/locales/hu.yml +6 -3
  94. data/config/locales/id.yml +135 -0
  95. data/config/locales/it.yml +49 -4
  96. data/config/locales/ja.yml +31 -7
  97. data/config/locales/ko.yml +66 -36
  98. data/config/locales/lt.yml +27 -6
  99. data/config/locales/lv.yml +3 -4
  100. data/config/locales/mk.yml +134 -0
  101. data/config/locales/nb.yml +22 -8
  102. data/config/locales/nl.yml +26 -3
  103. data/config/locales/pl.yml +75 -5
  104. data/config/locales/pt-BR.yml +24 -2
  105. data/config/locales/pt-PT.yml +1 -2
  106. data/config/locales/ro.yml +1 -2
  107. data/config/locales/ru.yml +21 -4
  108. data/config/locales/sk.yml +168 -0
  109. data/config/locales/sv-SE.yml +50 -8
  110. data/config/locales/tr.yml +92 -45
  111. data/config/locales/uk.yml +30 -16
  112. data/config/locales/vi.yml +53 -12
  113. data/config/locales/zh-CN.yml +44 -7
  114. data/config/locales/zh-TW.yml +42 -3
  115. data/docs/.gitignore +1 -0
  116. data/docs/0-installation.md +68 -18
  117. data/docs/1-general-configuration.md +88 -4
  118. data/docs/10-custom-pages.md +56 -2
  119. data/docs/11-decorators.md +20 -5
  120. data/docs/12-arbre-components.md +75 -11
  121. data/docs/13-authorization-adapter.md +73 -36
  122. data/docs/14-gotchas.md +64 -18
  123. data/docs/2-resource-customization.md +91 -23
  124. data/docs/3-index-pages/custom-index.md +5 -1
  125. data/docs/3-index-pages/index-as-block.md +3 -5
  126. data/docs/3-index-pages/index-as-blog.md +4 -6
  127. data/docs/3-index-pages/index-as-grid.md +3 -5
  128. data/docs/3-index-pages/index-as-table.md +46 -9
  129. data/docs/3-index-pages.md +73 -10
  130. data/docs/4-csv-format.md +35 -0
  131. data/docs/5-forms.md +96 -18
  132. data/docs/6-show-pages.md +13 -25
  133. data/docs/7-sidebars.md +13 -1
  134. data/docs/8-custom-actions.md +18 -1
  135. data/docs/9-batch-actions.md +9 -5
  136. data/docs/CNAME +1 -0
  137. data/docs/Gemfile +3 -0
  138. data/docs/Gemfile.lock +259 -0
  139. data/docs/_config.yml +4 -0
  140. data/docs/_includes/footer.html +8 -0
  141. data/docs/_includes/google-analytics.html +16 -0
  142. data/docs/_includes/head.html +7 -0
  143. data/docs/_includes/toc.html +98 -0
  144. data/docs/_includes/top-menu.html +17 -0
  145. data/docs/_layouts/default.html +21 -0
  146. data/docs/documentation.md +60 -0
  147. data/docs/images/activeadmin.png +0 -0
  148. data/docs/images/code-header.png +0 -0
  149. data/docs/images/divider.png +0 -0
  150. data/docs/images/features.png +0 -0
  151. data/docs/images/tidelift.svg +14 -0
  152. data/docs/index.html +226 -0
  153. data/docs/stylesheets/main.css +1205 -0
  154. data/lib/active_admin/abstract_view_factory.rb +13 -51
  155. data/lib/active_admin/application.rb +105 -138
  156. data/lib/active_admin/application_settings.rb +42 -0
  157. data/lib/active_admin/authorization_adapter.rb +4 -7
  158. data/lib/active_admin/base_controller/authorization.rb +16 -21
  159. data/lib/active_admin/base_controller/menu.rb +10 -10
  160. data/lib/active_admin/base_controller.rb +15 -11
  161. data/lib/active_admin/batch_actions/controller.rb +6 -7
  162. data/lib/active_admin/batch_actions/resource_extension.rb +15 -15
  163. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -4
  164. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +8 -7
  165. data/lib/active_admin/batch_actions/views/selection_cells.rb +7 -6
  166. data/lib/active_admin/batch_actions.rb +0 -1
  167. data/lib/active_admin/callbacks.rb +2 -2
  168. data/lib/active_admin/cancan_adapter.rb +1 -1
  169. data/lib/active_admin/collection_decorator.rb +31 -0
  170. data/lib/active_admin/controller_action.rb +2 -1
  171. data/lib/active_admin/csv_builder.rb +30 -20
  172. data/lib/active_admin/dependency.rb +36 -29
  173. data/lib/active_admin/deprecation.rb +0 -25
  174. data/lib/active_admin/devise.rb +9 -9
  175. data/lib/active_admin/dsl.rb +5 -18
  176. data/lib/active_admin/dynamic_setting.rb +38 -0
  177. data/lib/active_admin/dynamic_settings_node.rb +28 -0
  178. data/lib/active_admin/engine.rb +14 -7
  179. data/lib/active_admin/error.rb +6 -6
  180. data/lib/active_admin/filters/active.rb +29 -0
  181. data/lib/active_admin/filters/active_filter.rb +123 -0
  182. data/lib/active_admin/filters/active_sidebar.rb +54 -0
  183. data/lib/active_admin/filters/forms.rb +17 -10
  184. data/lib/active_admin/filters/formtastic_addons.rb +2 -7
  185. data/lib/active_admin/filters/resource_extension.rb +50 -14
  186. data/lib/active_admin/filters.rb +7 -5
  187. data/lib/active_admin/form_builder.rb +112 -67
  188. data/lib/active_admin/generators/boilerplate.rb +53 -0
  189. data/lib/active_admin/helpers/collection.rb +2 -0
  190. data/lib/active_admin/helpers/optional_display.rb +2 -2
  191. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -1
  192. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  193. data/lib/active_admin/inputs/datepicker_input.rb +13 -6
  194. data/lib/active_admin/inputs/filters/base/search_method_select.rb +9 -9
  195. data/lib/active_admin/inputs/filters/base.rb +3 -1
  196. data/lib/active_admin/inputs/filters/boolean_input.rb +1 -1
  197. data/lib/active_admin/inputs/filters/check_boxes_input.rb +1 -1
  198. data/lib/active_admin/inputs/filters/date_picker_input.rb +13 -0
  199. data/lib/active_admin/inputs/filters/date_range_input.rb +25 -9
  200. data/lib/active_admin/inputs/filters/select_input.rb +8 -4
  201. data/lib/active_admin/inputs/filters/text_input.rb +25 -0
  202. data/lib/active_admin/inputs.rb +2 -0
  203. data/lib/active_admin/localizers/resource_localizer.rb +35 -0
  204. data/lib/active_admin/localizers.rb +11 -0
  205. data/lib/active_admin/menu.rb +13 -15
  206. data/lib/active_admin/menu_collection.rb +0 -2
  207. data/lib/active_admin/menu_item.rb +10 -38
  208. data/lib/active_admin/namespace.rb +51 -32
  209. data/lib/active_admin/namespace_settings.rb +126 -0
  210. data/lib/active_admin/order_clause.rb +30 -8
  211. data/lib/active_admin/orm/active_record/comments/comment.rb +6 -20
  212. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +44 -21
  213. data/lib/active_admin/orm/active_record/comments/views.rb +2 -2
  214. data/lib/active_admin/orm/active_record/comments.rb +49 -29
  215. data/lib/active_admin/orm/active_record.rb +1 -1
  216. data/lib/active_admin/page.rb +24 -5
  217. data/lib/active_admin/page_controller.rb +2 -2
  218. data/lib/active_admin/page_dsl.rb +5 -1
  219. data/lib/active_admin/page_presenter.rb +2 -1
  220. data/lib/active_admin/pundit_adapter.rb +22 -9
  221. data/lib/active_admin/resource/action_items.rb +34 -12
  222. data/lib/active_admin/resource/attributes.rb +47 -0
  223. data/lib/active_admin/resource/belongs_to.rb +17 -4
  224. data/lib/active_admin/resource/controllers.rb +1 -1
  225. data/lib/active_admin/resource/menu.rb +9 -6
  226. data/lib/active_admin/resource/model.rb +15 -0
  227. data/lib/active_admin/resource/naming.rb +5 -5
  228. data/lib/active_admin/resource/ordering.rb +11 -0
  229. data/lib/active_admin/resource/page_presenters.rb +1 -1
  230. data/lib/active_admin/resource/pagination.rb +4 -0
  231. data/lib/active_admin/resource/routes.rb +56 -26
  232. data/lib/active_admin/resource/scope_to.rb +7 -7
  233. data/lib/active_admin/resource/scopes.rb +5 -3
  234. data/lib/active_admin/resource/sidebars.rb +2 -2
  235. data/lib/active_admin/resource.rb +80 -22
  236. data/lib/active_admin/resource_collection.rb +5 -3
  237. data/lib/active_admin/resource_controller/action_builder.rb +10 -0
  238. data/lib/active_admin/resource_controller/data_access.rb +56 -43
  239. data/lib/active_admin/resource_controller/decorators.rb +9 -31
  240. data/lib/active_admin/resource_controller/polymorphic_routes.rb +37 -0
  241. data/lib/active_admin/resource_controller/resource_class_methods.rb +2 -0
  242. data/lib/active_admin/resource_controller/scoping.rb +1 -1
  243. data/lib/active_admin/resource_controller/streaming.rb +12 -5
  244. data/lib/active_admin/resource_controller.rb +26 -10
  245. data/lib/active_admin/resource_dsl.rb +67 -21
  246. data/lib/active_admin/router.rb +90 -82
  247. data/lib/active_admin/scope.rb +21 -14
  248. data/lib/active_admin/settings_node.rb +19 -0
  249. data/lib/active_admin/sidebar_section.rb +6 -12
  250. data/lib/active_admin/version.rb +1 -1
  251. data/lib/active_admin/view_factory.rb +17 -18
  252. data/lib/active_admin/view_helpers/auto_link_helper.rb +2 -2
  253. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +5 -5
  254. data/lib/active_admin/view_helpers/display_helper.rb +51 -9
  255. data/lib/active_admin/view_helpers/download_format_links_helper.rb +14 -1
  256. data/lib/active_admin/view_helpers/fields_for.rb +4 -4
  257. data/lib/active_admin/view_helpers/form_helper.rb +2 -2
  258. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +11 -4
  259. data/lib/active_admin/view_helpers/scope_name_helper.rb +16 -0
  260. data/lib/active_admin/view_helpers.rb +2 -2
  261. data/lib/active_admin/views/action_items.rb +1 -1
  262. data/lib/active_admin/views/components/active_admin_form.rb +45 -13
  263. data/lib/active_admin/views/components/attributes_table.rb +11 -29
  264. data/lib/active_admin/views/components/blank_slate.rb +1 -1
  265. data/lib/active_admin/views/components/columns.rb +12 -7
  266. data/lib/active_admin/views/components/dropdown_menu.rb +11 -13
  267. data/lib/active_admin/views/components/index_list.rb +6 -5
  268. data/lib/active_admin/views/components/menu.rb +32 -0
  269. data/lib/active_admin/views/components/menu_item.rb +58 -0
  270. data/lib/active_admin/views/components/paginated_collection.rb +52 -33
  271. data/lib/active_admin/views/components/panel.rb +2 -4
  272. data/lib/active_admin/views/components/scopes.rb +20 -12
  273. data/lib/active_admin/views/components/sidebar.rb +13 -0
  274. data/lib/active_admin/views/components/sidebar_section.rb +6 -1
  275. data/lib/active_admin/views/components/site_title.rb +6 -7
  276. data/lib/active_admin/views/components/status_tag.rb +19 -23
  277. data/lib/active_admin/views/components/table_for.rb +31 -57
  278. data/lib/active_admin/views/components/tabs.rb +17 -5
  279. data/lib/active_admin/views/footer.rb +15 -4
  280. data/lib/active_admin/views/header.rb +3 -16
  281. data/lib/active_admin/views/index_as_blog.rb +3 -4
  282. data/lib/active_admin/views/index_as_grid.rb +28 -28
  283. data/lib/active_admin/views/index_as_table.rb +76 -28
  284. data/lib/active_admin/views/pages/base.rb +45 -58
  285. data/lib/active_admin/views/pages/form.rb +5 -2
  286. data/lib/active_admin/views/pages/index.rb +15 -13
  287. data/lib/active_admin/views/pages/layout.rb +1 -1
  288. data/lib/active_admin/views/pages/show.rb +9 -3
  289. data/lib/active_admin/views/tabbed_navigation.rb +4 -59
  290. data/lib/active_admin/views/title_bar.rb +6 -6
  291. data/lib/active_admin/views.rb +1 -1
  292. data/lib/active_admin.rb +69 -67
  293. data/lib/activeadmin.rb +1 -1
  294. data/lib/generators/active_admin/assets/assets_generator.rb +3 -3
  295. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  296. data/lib/generators/active_admin/assets/templates/{active_admin.css.scss → active_admin.scss} +3 -3
  297. data/lib/generators/active_admin/devise/devise_generator.rb +17 -26
  298. data/lib/generators/active_admin/install/install_generator.rb +18 -8
  299. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +107 -5
  300. data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +1 -3
  301. data/lib/generators/active_admin/install/templates/dashboard.rb +2 -3
  302. data/lib/generators/active_admin/install/templates/migrations/{create_active_admin_comments.rb → create_active_admin_comments.rb.erb} +2 -5
  303. data/lib/generators/active_admin/page/page_generator.rb +1 -1
  304. data/lib/generators/active_admin/page/templates/page.rb +1 -1
  305. data/lib/generators/active_admin/resource/resource_generator.rb +8 -2
  306. data/lib/generators/active_admin/resource/templates/admin.rb.erb +46 -0
  307. data/lib/generators/active_admin/webpacker/plugins/jquery.js +7 -0
  308. data/lib/generators/active_admin/webpacker/templates/active_admin.js +5 -0
  309. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +17 -0
  310. data/lib/generators/active_admin/webpacker/templates/print.scss +2 -0
  311. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +26 -0
  312. data/lib/ransack_ext.rb +11 -3
  313. data/vendor/assets/javascripts/jquery-ui/data.js +41 -0
  314. data/vendor/assets/javascripts/jquery-ui/disable-selection.js +48 -0
  315. data/vendor/assets/javascripts/jquery-ui/escape-selector.js +23 -0
  316. data/vendor/assets/javascripts/jquery-ui/focusable.js +86 -0
  317. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  318. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  319. data/vendor/assets/javascripts/jquery-ui/ie.js +17 -0
  320. data/vendor/assets/javascripts/jquery-ui/keycode.js +47 -0
  321. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  322. data/vendor/assets/javascripts/jquery-ui/plugin.js +46 -0
  323. data/vendor/assets/javascripts/jquery-ui/position.js +500 -0
  324. data/vendor/assets/javascripts/jquery-ui/safe-active-element.js +42 -0
  325. data/vendor/assets/javascripts/jquery-ui/safe-blur.js +23 -0
  326. data/vendor/assets/javascripts/jquery-ui/scroll-parent.js +47 -0
  327. data/vendor/assets/javascripts/jquery-ui/tabbable.js +38 -0
  328. data/vendor/assets/javascripts/jquery-ui/unique-id.js +51 -0
  329. data/vendor/assets/javascripts/jquery-ui/version.js +17 -0
  330. data/vendor/assets/javascripts/jquery-ui/widget.js +735 -0
  331. data/vendor/assets/javascripts/jquery-ui/widgets/button.js +391 -0
  332. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +291 -0
  333. data/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +300 -0
  334. data/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +2123 -0
  335. data/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +954 -0
  336. data/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +1259 -0
  337. data/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +230 -0
  338. data/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +1207 -0
  339. data/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +1561 -0
  340. data/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +931 -0
  341. metadata +182 -553
  342. data/.gitignore +0 -49
  343. data/.hound.yml +0 -11
  344. data/.travis.yml +0 -42
  345. data/.yardopts +0 -8
  346. data/Gemfile +0 -54
  347. data/Guardfile +0 -8
  348. data/Rakefile +0 -33
  349. data/activeadmin.gemspec +0 -28
  350. data/app/assets/images/active_admin/datepicker/datepicker-input-icon.png +0 -0
  351. data/app/assets/images/active_admin/nested_menu_arrow.gif +0 -0
  352. data/app/assets/images/active_admin/nested_menu_arrow_dark.gif +0 -0
  353. data/app/assets/images/active_admin/orderable.png +0 -0
  354. data/app/assets/javascripts/active_admin/application.js.coffee +0 -32
  355. data/app/assets/javascripts/active_admin/base.js.coffee +0 -14
  356. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  357. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  358. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -39
  359. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -36
  360. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -101
  361. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  362. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  363. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -37
  364. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -27
  365. data/app/assets/javascripts/active_admin/lib/popover.js.coffee +0 -68
  366. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -24
  367. data/app/assets/stylesheets/active_admin/components/_popovers.scss +0 -122
  368. data/app/assets/stylesheets/active_admin/mixins/_icons.scss +0 -20
  369. data/app/assets/stylesheets/active_admin/mixins/_reset.scss +0 -165
  370. data/cucumber.yml +0 -3
  371. data/features/action_item.feature +0 -73
  372. data/features/authorization.feature +0 -64
  373. data/features/authorization_cancan.feature +0 -52
  374. data/features/authorization_pundit.feature +0 -37
  375. data/features/belongs_to.feature +0 -66
  376. data/features/breadcrumb.feature +0 -75
  377. data/features/comments/commenting.feature +0 -171
  378. data/features/comments/viewing_index.feature +0 -19
  379. data/features/dashboard.feature +0 -16
  380. data/features/decorators.feature +0 -41
  381. data/features/development_reloading.feature +0 -30
  382. data/features/edit_page.feature +0 -117
  383. data/features/favicon.feature +0 -20
  384. data/features/first_boot.feature +0 -16
  385. data/features/global_navigation.feature +0 -29
  386. data/features/i18n.feature +0 -43
  387. data/features/index/batch_actions.feature +0 -164
  388. data/features/index/filters.feature +0 -161
  389. data/features/index/format_as_csv.feature +0 -203
  390. data/features/index/formats.feature +0 -66
  391. data/features/index/index_as_block.feature +0 -15
  392. data/features/index/index_as_blog.feature +0 -69
  393. data/features/index/index_as_grid.feature +0 -45
  394. data/features/index/index_as_table.feature +0 -291
  395. data/features/index/index_blank_slate.feature +0 -83
  396. data/features/index/index_parameters.feature +0 -75
  397. data/features/index/index_scope_to.feature +0 -56
  398. data/features/index/index_scopes.feature +0 -251
  399. data/features/index/page_title.feature +0 -41
  400. data/features/index/pagination.feature +0 -59
  401. data/features/index/switch_index_view.feature +0 -73
  402. data/features/menu.feature +0 -53
  403. data/features/new_page.feature +0 -109
  404. data/features/registering_assets.feature +0 -35
  405. data/features/registering_pages.feature +0 -148
  406. data/features/registering_resources.feature +0 -33
  407. data/features/renamed_resource.feature +0 -32
  408. data/features/root_to.feature +0 -17
  409. data/features/show/default_content.feature +0 -43
  410. data/features/show/page_title.feature +0 -58
  411. data/features/show/tabs.feature +0 -27
  412. data/features/sidebar_sections.feature +0 -210
  413. data/features/site_title.feature +0 -47
  414. data/features/specifying_actions.feature +0 -93
  415. data/features/step_definitions/action_item_steps.rb +0 -7
  416. data/features/step_definitions/action_link_steps.rb +0 -20
  417. data/features/step_definitions/additional_web_steps.rb +0 -81
  418. data/features/step_definitions/asset_steps.rb +0 -15
  419. data/features/step_definitions/attribute_steps.rb +0 -18
  420. data/features/step_definitions/batch_action_steps.rb +0 -72
  421. data/features/step_definitions/blog_steps.rb +0 -3
  422. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  423. data/features/step_definitions/comment_steps.rb +0 -12
  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 -34
  427. data/features/step_definitions/filter_steps.rb +0 -39
  428. data/features/step_definitions/flash_steps.rb +0 -11
  429. data/features/step_definitions/format_steps.rb +0 -52
  430. data/features/step_definitions/i18n_steps.rb +0 -3
  431. data/features/step_definitions/index_scope_steps.rb +0 -21
  432. data/features/step_definitions/index_views_steps.rb +0 -3
  433. data/features/step_definitions/layout_steps.rb +0 -3
  434. data/features/step_definitions/member_link_steps.rb +0 -7
  435. data/features/step_definitions/menu_steps.rb +0 -11
  436. data/features/step_definitions/pagination_steps.rb +0 -7
  437. data/features/step_definitions/sidebar_steps.rb +0 -13
  438. data/features/step_definitions/site_title_steps.rb +0 -17
  439. data/features/step_definitions/symbol_leak_steps.rb +0 -3
  440. data/features/step_definitions/tab_steps.rb +0 -8
  441. data/features/step_definitions/table_steps.rb +0 -119
  442. data/features/step_definitions/user_steps.rb +0 -45
  443. data/features/step_definitions/web_steps.rb +0 -85
  444. data/features/sti_resource.feature +0 -65
  445. data/features/strong_parameters.feature +0 -73
  446. data/features/support/env.rb +0 -145
  447. data/features/support/paths.rb +0 -71
  448. data/features/support/selectors.rb +0 -45
  449. data/features/symbol_leak.feature +0 -35
  450. data/features/users/logging_in.feature +0 -34
  451. data/features/users/logging_out.feature +0 -13
  452. data/features/users/resetting_password.feature +0 -34
  453. data/lib/active_admin/batch_actions/views/batch_action_popover.rb +0 -28
  454. data/lib/active_admin/event.rb +0 -33
  455. data/lib/active_admin/helpers/settings.rb +0 -115
  456. data/lib/active_admin/iconic/icons.rb +0 -142
  457. data/lib/active_admin/iconic.rb +0 -53
  458. data/lib/active_admin/view_helpers/icon_helper.rb +0 -12
  459. data/lib/active_admin/views/components/action_list_popover.rb +0 -29
  460. data/lib/active_admin/views/components/popover.rb +0 -27
  461. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  462. data/lib/generators/active_admin/resource/templates/admin.rb +0 -18
  463. data/script/local +0 -44
  464. data/script/travis_cache +0 -107
  465. data/script/use_rails +0 -53
  466. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  467. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  468. data/spec/javascripts/coffeescripts/jquery.aa.popover-spec.js.coffee +0 -82
  469. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  470. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  471. data/spec/javascripts/fixtures/flashes.html +0 -2
  472. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  473. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  474. data/spec/javascripts/support/jasmine.yml +0 -74
  475. data/spec/javascripts/support/jasmine_config.rb +0 -23
  476. data/spec/javascripts/support/jasmine_runner.rb +0 -32
  477. data/spec/rails_helper.rb +0 -154
  478. data/spec/requests/default_namespace_spec.rb +0 -61
  479. data/spec/requests/javascript_spec.rb +0 -20
  480. data/spec/requests/memory_spec.rb +0 -23
  481. data/spec/requests/stylesheets_spec.rb +0 -18
  482. data/spec/spec_helper.rb +0 -17
  483. data/spec/support/deferred_garbage_collection.rb +0 -19
  484. data/spec/support/detect_rails_version.rb +0 -34
  485. data/spec/support/integration_example_group.rb +0 -31
  486. data/spec/support/jslint.yml +0 -80
  487. data/spec/support/rails_template.rb +0 -138
  488. data/spec/support/rails_template_with_data.rb +0 -59
  489. data/spec/support/templates/admin/stores.rb +0 -9
  490. data/spec/support/templates/cucumber.rb +0 -24
  491. data/spec/support/templates/cucumber_with_reloading.rb +0 -5
  492. data/spec/support/templates/en.yml +0 -8
  493. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  494. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  495. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  496. data/spec/support/templates/policies/application_policy.rb +0 -45
  497. data/spec/support/templates/policies/category_policy.rb +0 -7
  498. data/spec/support/templates/policies/post_policy.rb +0 -15
  499. data/spec/support/templates/policies/store_policy.rb +0 -11
  500. data/spec/support/templates/policies/user_policy.rb +0 -11
  501. data/spec/support/templates/post_decorator.rb +0 -11
  502. data/spec/unit/abstract_view_factory_spec.rb +0 -79
  503. data/spec/unit/action_builder_spec.rb +0 -132
  504. data/spec/unit/active_admin_spec.rb +0 -11
  505. data/spec/unit/application_spec.rb +0 -140
  506. data/spec/unit/asset_registration_spec.rb +0 -52
  507. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  508. data/spec/unit/authorization/controller_authorization_spec.rb +0 -39
  509. data/spec/unit/authorization/index_overriding_spec.rb +0 -22
  510. data/spec/unit/auto_link_spec.rb +0 -69
  511. data/spec/unit/batch_actions/resource_spec.rb +0 -92
  512. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  513. data/spec/unit/belongs_to_spec.rb +0 -51
  514. data/spec/unit/cancan_adapter_spec.rb +0 -43
  515. data/spec/unit/comments_spec.rb +0 -166
  516. data/spec/unit/component_spec.rb +0 -18
  517. data/spec/unit/config_shared_examples.rb +0 -59
  518. data/spec/unit/controller_filters_spec.rb +0 -44
  519. data/spec/unit/csv_builder_spec.rb +0 -244
  520. data/spec/unit/dependency_spec.rb +0 -135
  521. data/spec/unit/devise_spec.rb +0 -96
  522. data/spec/unit/dsl_spec.rb +0 -122
  523. data/spec/unit/event_spec.rb +0 -47
  524. data/spec/unit/filters/filter_form_builder_spec.rb +0 -433
  525. data/spec/unit/filters/resource_spec.rb +0 -121
  526. data/spec/unit/form_builder_spec.rb +0 -752
  527. data/spec/unit/generators/install_spec.rb +0 -23
  528. data/spec/unit/helpers/collection_spec.rb +0 -65
  529. data/spec/unit/helpers/scope_chain_spec.rb +0 -36
  530. data/spec/unit/helpers/settings_spec.rb +0 -30
  531. data/spec/unit/i18n_spec.rb +0 -12
  532. data/spec/unit/menu_collection_spec.rb +0 -62
  533. data/spec/unit/menu_item_spec.rb +0 -143
  534. data/spec/unit/menu_spec.rb +0 -71
  535. data/spec/unit/namespace/authorization_spec.rb +0 -27
  536. data/spec/unit/namespace/register_page_spec.rb +0 -74
  537. data/spec/unit/namespace/register_resource_spec.rb +0 -161
  538. data/spec/unit/namespace_spec.rb +0 -103
  539. data/spec/unit/order_clause_spec.rb +0 -81
  540. data/spec/unit/page_controller_spec.rb +0 -5
  541. data/spec/unit/page_spec.rb +0 -78
  542. data/spec/unit/pretty_format_spec.rb +0 -63
  543. data/spec/unit/pundit_adapter_spec.rb +0 -98
  544. data/spec/unit/resource/action_items_spec.rb +0 -65
  545. data/spec/unit/resource/includes_spec.rb +0 -21
  546. data/spec/unit/resource/menu_spec.rb +0 -18
  547. data/spec/unit/resource/naming_spec.rb +0 -122
  548. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  549. data/spec/unit/resource/pagination_spec.rb +0 -38
  550. data/spec/unit/resource/routes_spec.rb +0 -73
  551. data/spec/unit/resource/scopes_spec.rb +0 -50
  552. data/spec/unit/resource/sidebars_spec.rb +0 -43
  553. data/spec/unit/resource_collection_spec.rb +0 -158
  554. data/spec/unit/resource_controller/data_access_spec.rb +0 -140
  555. data/spec/unit/resource_controller/decorators_spec.rb +0 -83
  556. data/spec/unit/resource_controller/sidebars_spec.rb +0 -45
  557. data/spec/unit/resource_controller_spec.rb +0 -269
  558. data/spec/unit/resource_registration_spec.rb +0 -56
  559. data/spec/unit/resource_spec.rb +0 -278
  560. data/spec/unit/routing_spec.rb +0 -180
  561. data/spec/unit/scope_spec.rb +0 -190
  562. data/spec/unit/settings_spec.rb +0 -118
  563. data/spec/unit/view_factory_spec.rb +0 -21
  564. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -217
  565. data/spec/unit/view_helpers/display_name_spec.rb +0 -69
  566. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  567. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  568. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -25
  569. data/spec/unit/view_helpers/form_helper_spec.rb +0 -43
  570. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -139
  571. data/spec/unit/views/components/action_list_popover_spec.rb +0 -40
  572. data/spec/unit/views/components/attributes_table_spec.rb +0 -272
  573. data/spec/unit/views/components/batch_action_popover_spec.rb +0 -47
  574. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  575. data/spec/unit/views/components/columns_spec.rb +0 -172
  576. data/spec/unit/views/components/index_list_spec.rb +0 -35
  577. data/spec/unit/views/components/index_table_for_spec.rb +0 -46
  578. data/spec/unit/views/components/paginated_collection_spec.rb +0 -236
  579. data/spec/unit/views/components/panel_spec.rb +0 -62
  580. data/spec/unit/views/components/popover_spec.rb +0 -33
  581. data/spec/unit/views/components/sidebar_section_spec.rb +0 -47
  582. data/spec/unit/views/components/site_title_spec.rb +0 -78
  583. data/spec/unit/views/components/status_tag_spec.rb +0 -235
  584. data/spec/unit/views/components/table_for_spec.rb +0 -384
  585. data/spec/unit/views/components/tabs_spec.rb +0 -39
  586. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -47
  587. data/spec/unit/views/pages/form_spec.rb +0 -42
  588. data/spec/unit/views/pages/index_spec.rb +0 -60
  589. data/spec/unit/views/pages/layout_spec.rb +0 -59
  590. data/spec/unit/views/pages/show_spec.rb +0 -33
  591. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  592. data/tasks/docs.rake +0 -37
  593. data/tasks/parallel_tests.rake +0 -66
  594. data/tasks/test.rake +0 -83
  595. data/tasks/yard.rake +0 -9
@@ -1,164 +0,0 @@
1
- Feature: Batch Actions
2
-
3
- Scenario: Use default (destroy) batch action
4
- Given 10 posts exist
5
- And an index configuration of:
6
- """
7
- ActiveAdmin.register Post
8
- """
9
- Then I should see the batch action button
10
- And I should see that the batch action button is disabled
11
- And I should see the batch action popover exists
12
- And I should see 10 posts in the table
13
-
14
- When I check the 1st record
15
- And I check the 2nd record
16
- And I follow "Batch Actions"
17
- Then I should see the batch action :destroy "Delete Selected"
18
-
19
- Given I submit the batch action form with "destroy"
20
- Then I should see a flash with "Successfully destroyed 2 posts"
21
- And I should see 8 posts in the table
22
-
23
- Scenario: Use default (destroy) batch action on a nested resource
24
- Given I am logged in
25
- And 5 posts written by "John Doe" exist
26
- And a configuration of:
27
- """
28
- ActiveAdmin.register User
29
- ActiveAdmin.register Post do
30
- belongs_to :user
31
- end
32
- """
33
- When I go to the last author's posts
34
- Then I should see the batch action button
35
- And I should see that the batch action button is disabled
36
- And I should see the batch action popover exists
37
- And I should see 5 posts in the table
38
-
39
- When I check the 2nd record
40
- And I check the 4th record
41
- And I follow "Batch Actions"
42
- Then I should see the batch action :destroy "Delete Selected"
43
-
44
- Given I submit the batch action form with "destroy"
45
- Then I should see a flash with "Successfully destroyed 2 posts"
46
- And I should see 3 posts in the table
47
-
48
- Scenario: Using a custom batch action
49
- Given 10 posts exist
50
- And an index configuration of:
51
- """
52
- ActiveAdmin.register Post do
53
- batch_action(:flag) do
54
- redirect_to collection_path, :notice => "Successfully flagged 10 posts"
55
- end
56
- end
57
- """
58
- When I check the 1st record
59
- Given I submit the batch action form with "flag"
60
- Then I should see a flash with "Successfully flagged 10 posts"
61
-
62
- Scenario: Disabling batch actions for a resource
63
- Given 10 posts exist
64
- And an index configuration of:
65
- """
66
- ActiveAdmin.register Post do
67
- config.batch_actions = false
68
- end
69
- """
70
- Then I should not see the batch action selector
71
- And I should not see checkboxes in the table
72
-
73
- Scenario: Disabling the default destroy batch action
74
- Given 10 posts exist
75
- And an index configuration of:
76
- """
77
- ActiveAdmin.register Post do
78
- batch_action :destroy, false
79
- batch_action(:flag) {}
80
- end
81
- """
82
- Then I should see the batch action :flag "Flag Selected"
83
- And I should not see the batch action :destroy "Delete Selected"
84
-
85
- Scenario: Optional display of batch actions
86
- Given 10 posts exist
87
- And an index configuration of:
88
- """
89
- ActiveAdmin.register Post do
90
- batch_action(:flag, :if => proc { true }) {}
91
- batch_action(:unflag, :if => proc { false }) {}
92
- end
93
- """
94
- Then I should see the batch action :flag "Flag Selected"
95
- And I should not see the batch action :unflag "Unflag Selected"
96
-
97
- Scenario: Sort order priority
98
- Given 10 posts exist
99
- And an index configuration of:
100
- """
101
- ActiveAdmin.register Post do
102
- batch_action(:test, :priority => 3) {}
103
- batch_action(:flag, :priority => 2) {}
104
- batch_action(:unflag, :priority => 1) {}
105
- end
106
- """
107
- Then the 4th batch action should be "Delete Selected"
108
- And the 3rd batch action should be "Test Selected"
109
- And the 2nd batch action should be "Flag Selected"
110
- And the 1st batch action should be "Unflag Selected"
111
-
112
- Scenario: Complex naming
113
- Given 10 posts exist
114
- And an index configuration of:
115
- """
116
- ActiveAdmin.register Post do
117
- batch_action("Very Complex and Time Consuming") {}
118
- batch_action(:passing_a_symbol) {}
119
- end
120
- """
121
- Then I should see the batch action :very_complex_and_time_consuming "Very Complex and Time Consuming Selected"
122
- And I should see the batch action :passing_a_symbol "Passing A Symbol Selected"
123
-
124
- Scenario: Use a Form with text
125
- Given 10 posts exist
126
- And an index configuration of:
127
- """
128
- ActiveAdmin.register Post do
129
- batch_action :destroy, false
130
- batch_action(:action_with_form, form: { name: :text }) {}
131
- end
132
- """
133
-
134
- When I check the 1st record
135
- And I follow "Batch Actions"
136
- Then I should be show a input with name "name" and type "text"
137
-
138
- Scenario: Use a Form with select
139
- Given 10 posts exist
140
- And an index configuration of:
141
- """
142
- ActiveAdmin.register Post do
143
- batch_action :destroy, false
144
- batch_action(:action_with_form, form: { type: ["a", "b"] }) {}
145
- end
146
- """
147
-
148
- When I check the 1st record
149
- And I follow "Batch Actions"
150
- Then I should be show a select with name "type" with the values "a, b"
151
-
152
- Scenario: Use a Form with select values from proc
153
- Given 10 posts exist
154
- And an index configuration of:
155
- """
156
- ActiveAdmin.register Post do
157
- batch_action :destroy, false
158
- batch_action(:action_with_form, form: ->{ {type: ["a", "b"]} }) {}
159
- end
160
- """
161
-
162
- When I check the 1st record
163
- And I follow "Batch Actions"
164
- Then I should be show a select with name "type" with the values "a, b"
@@ -1,161 +0,0 @@
1
- Feature: Index Filtering
2
-
3
- Scenario: Default Resources Filters
4
- Given 3 posts exist
5
- And an index configuration of:
6
- """
7
- ActiveAdmin.register Post
8
- """
9
- When I am on the index page for posts
10
- Then I should see "Displaying all 3 Posts"
11
- And I should see the following filters:
12
- | Author | select |
13
- | Category | select |
14
- | Title | string |
15
- | Body | string |
16
- | Published at | date range |
17
- | Created at | date range |
18
- | Updated at | date range |
19
-
20
- When I fill in "Title" with "Hello World 2"
21
- And I press "Filter"
22
- And I should see 1 posts in the table
23
- And I should see "Hello World 2" within ".index_table"
24
-
25
- Scenario: Filtering posts with no results
26
- Given 3 posts exist
27
- And an index configuration of:
28
- """
29
- ActiveAdmin.register Post
30
- """
31
- When I am on the index page for posts
32
- Then I should see "Displaying all 3 Posts"
33
-
34
- When I fill in "Title" with "THIS IS NOT AN EXISTING TITLE!!"
35
- And I press "Filter"
36
- Then I should not see ".index_table"
37
- And I should not see a sortable table header
38
- And I should not see pagination
39
- And I should see "No Posts found"
40
-
41
- Scenario: Filtering posts while not on the first page
42
- Given 9 posts exist
43
- And an index configuration of:
44
- """
45
- ActiveAdmin.register Post do
46
- config.per_page = 5
47
- end
48
- """
49
- When I follow "2"
50
- Then I should see "Displaying Posts 6 - 9 of 9 in total"
51
-
52
- When I fill in "Title" with "Hello World 2"
53
- And I press "Filter"
54
- And I should see 1 posts in the table
55
- And I should see "Hello World 2" within ".index_table"
56
-
57
- Scenario: Checkboxes - Filtering posts written by anyone
58
- Given 1 post exists
59
- And a post with the title "Hello World" written by "Jane Doe" exists
60
- And an index configuration of:
61
- """
62
- ActiveAdmin.register Post do
63
- filter :author, :as => :check_boxes
64
- end
65
- """
66
- When I press "Filter"
67
- Then I should see 2 posts in the table
68
- And I should see "Hello World" within ".index_table"
69
- And the "Jane Doe" checkbox should not be checked
70
-
71
- Scenario: Checkboxes - Filtering posts written by Jane Doe
72
- Given 1 post exists
73
- And a post with the title "Hello World" written by "Jane Doe" exists
74
- And an index configuration of:
75
- """
76
- ActiveAdmin.register Post do
77
- filter :author, :as => :check_boxes
78
- end
79
- """
80
- When I check "Jane Doe"
81
- And I press "Filter"
82
- Then I should see 1 posts in the table
83
- And I should see "Hello World" within ".index_table"
84
- And the "Jane Doe" checkbox should be checked
85
-
86
- Scenario: Disabling filters
87
- Given an index configuration of:
88
- """
89
- ActiveAdmin.register Post do
90
- config.filters = false
91
- end
92
- """
93
- Then I should not see a sidebar titled "Filters"
94
-
95
- Scenario: Select - Filtering categories with posts written by Jane Doe
96
- Given a category named "Mystery" exists
97
- And 1 post with the title "Hello World" written by "Jane Doe" in category "Non-Fiction" exists
98
- And an index configuration of:
99
- """
100
- ActiveAdmin.register Category
101
- """
102
- When I select "Jane Doe" from "Authors"
103
- And I press "Filter"
104
- Then I should see 1 categories in the table
105
- And I should see "Non-Fiction" within ".index_table"
106
- And I should not see "Mystery" within ".index_table"
107
-
108
- @javascript
109
- Scenario: Clearing filter preserves custom parameters
110
- Given a category named "Mystery" exists
111
- And 1 post with the title "Hello World" written by "Jane Doe" in category "Non-Fiction" exists
112
- And 1 post with the title "Lorem Ipsum" written by "Joe Smith" in category "Mystery" exists
113
- And an index configuration of:
114
- """
115
- ActiveAdmin.register Category
116
- ActiveAdmin.application.favicon = false
117
- """
118
- Then I should see "Displaying all 2 Categories"
119
- When I add parameter "scope" with value "all" to the URL
120
- And I add parameter "foo" with value "bar" to the URL
121
- And I select "Hello World" from "Posts"
122
- And I press "Filter"
123
- Then I should see "Non-Fiction"
124
- And I should not see "Mystery"
125
- When I click "Clear Filters"
126
- Then I should see "Non-Fiction"
127
- And I should see "Mystery"
128
- And I should have parameter "foo" with value "bar"
129
- And I should have parameter "scope" with value "all"
130
-
131
- Scenario: Checkboxes - Filtering categories via posts written by anyone
132
- Given a category named "Mystery" exists
133
- And a post with the title "Hello World" written by "Jane Doe" in category "Non-Fiction" exists
134
- And an index configuration of:
135
- """
136
- ActiveAdmin.register Category do
137
- filter :authors, :as => :check_boxes
138
- end
139
- """
140
- When I press "Filter"
141
- Then I should see 2 posts in the table
142
- And I should see "Mystery" within ".index_table"
143
- And I should see "Non-Fiction" within ".index_table"
144
- And the "Jane Doe" checkbox should not be checked
145
-
146
- Scenario: Checkboxes - Filtering categories via posts written by Jane Doe
147
- Given a category named "Mystery" exists
148
- And a post with the title "Hello World" written by "Jane Doe" in category "Non-Fiction" exists
149
- And an index configuration of:
150
- """
151
- ActiveAdmin.register Category do
152
- filter :authors, :as => :check_boxes
153
- end
154
- """
155
- When I check "Jane Doe"
156
- And I press "Filter"
157
- Then I should see 1 categories in the table
158
- And I should see "Non-Fiction" within ".index_table"
159
- And the "Jane Doe" checkbox should be checked
160
-
161
-
@@ -1,203 +0,0 @@
1
- Feature: Format as CSV
2
-
3
- Background:
4
- Given I am logged in
5
-
6
- Scenario: Default
7
- Given a configuration of:
8
- """
9
- ActiveAdmin.register Post
10
- """
11
- And a post with the title "Hello World" exists
12
- When I am on the index page for posts
13
- And I follow "CSV"
14
- And I should download a CSV file for "posts" containing:
15
- | Id | Title | Body | Published at | Position | Starred | Created at | Updated at |
16
- | \d+ | Hello World | | | | | (.*) | (.*) |
17
-
18
- Scenario: Default with alias
19
- Given a configuration of:
20
- """
21
- ActiveAdmin.register Post, :as => "MyArticle"
22
- """
23
- And 1 post exists
24
- When I am on the index page for my_articles
25
- And I follow "CSV"
26
- And I should download a CSV file for "my-articles" containing:
27
- | Id | Title | Body | Published at | Position | Starred | Created at | Updated at |
28
-
29
- Scenario: With CSV format customization
30
- Given a configuration of:
31
- """
32
- ActiveAdmin.register Post do
33
- csv do
34
- column :title
35
- column("Last update") { |post| post.updated_at }
36
- column("Copyright") { "Greg Bell" }
37
- end
38
- end
39
- """
40
- And a post with the title "Hello, World" exists
41
- When I am on the index page for posts
42
- And I follow "CSV"
43
- And I should download a CSV file for "posts" containing:
44
- | Title | Last update | Copyright |
45
- | Hello, World | (.*) | Greg Bell |
46
-
47
- Scenario: With CSV format customization
48
- Given a configuration of:
49
- """
50
- ActiveAdmin.register Post do
51
- csv :col_sep => ';' do
52
- column :title
53
- column :body
54
- end
55
- end
56
- """
57
- And a post with the title "Hello, World" exists
58
- When I am on the index page for posts
59
- And I follow "CSV"
60
- And I should download a CSV file with ";" separator for "posts" containing:
61
- | Title | Body |
62
- | Hello, World | (.*) |
63
-
64
- Scenario: With CSV option customization
65
- Given a configuration of:
66
- """
67
- ActiveAdmin.register Post do
68
- csv :force_quotes => true, :byte_order_mark => "" do
69
- column :title
70
- column :body
71
- end
72
- end
73
- """
74
- And a post with the title "012345" exists
75
- When I am on the index page for posts
76
- And I follow "CSV"
77
- And I should download a CSV file with "," separator for "posts" containing:
78
- | Title | Body |
79
- | 012345 | (.*) |
80
- And the CSV file should contain "012345" in quotes
81
-
82
- Scenario: With default CSV separator option
83
- Given a configuration of:
84
- """
85
- ActiveAdmin.application.csv_options = { :col_sep => ';' }
86
- ActiveAdmin.register Post do
87
- csv do
88
- column :title
89
- column :body
90
- end
91
- end
92
- """
93
- And a post with the title "Hello, World" exists
94
- When I am on the index page for posts
95
- And I follow "CSV"
96
- And I should download a CSV file with ";" separator for "posts" containing:
97
- | Title | Body |
98
- | Hello, World | (.*) |
99
-
100
- Scenario: With default CSV options
101
- Given a configuration of:
102
- """
103
- ActiveAdmin.application.csv_options = {:col_sep => ',', :force_quotes => true}
104
- ActiveAdmin.register Post do
105
- csv do
106
- column :title
107
- column :body
108
- end
109
- end
110
- """
111
- And a post with the title "012345" exists
112
- When I am on the index page for posts
113
- And I follow "CSV"
114
- And I should download a CSV file with "," separator for "posts" containing:
115
- | Title | Body |
116
- | 012345 | (.*) |
117
- And the CSV file should contain "012345" in quotes
118
-
119
- Scenario: Without CVS column names explicitely specified
120
- Given a configuration of:
121
- """
122
- ActiveAdmin.application.csv_options = {:col_sep => ',', :force_quotes => true}
123
- ActiveAdmin.register Post do
124
- csv :column_names => true do
125
- column :title
126
- column :body
127
- end
128
- end
129
- """
130
- And a post with the title "012345" exists
131
- When I am on the index page for posts
132
- And I follow "CSV"
133
- And I should download a CSV file with "," separator for "posts" containing:
134
- | Title | Body |
135
- | 012345 | (.*) |
136
-
137
- Scenario: Without CVS column names
138
- Given a configuration of:
139
- """
140
- ActiveAdmin.application.csv_options = {:col_sep => ',', :force_quotes => true}
141
- ActiveAdmin.register Post do
142
- csv :column_names => false do
143
- column :title
144
- column :body
145
- end
146
- end
147
- """
148
- And a post with the title "012345" exists
149
- When I am on the index page for posts
150
- And I follow "CSV"
151
- And I should download a CSV file with "," separator for "posts" containing:
152
- | 012345 | (.*) |
153
-
154
- Scenario: With encoding CSV options
155
- Given a configuration of:
156
- """
157
- ActiveAdmin.register Post do
158
- csv :encoding => 'SJIS' do
159
- column :title
160
- column :body
161
- end
162
- end
163
- """
164
- And a post with the title "あいうえお" exists
165
- When I am on the index page for posts
166
- And I follow "CSV"
167
- And the encoding of the CSV file should be "SJIS"
168
-
169
- Scenario: With default encoding CSV options
170
- Given a configuration of:
171
- """
172
- ActiveAdmin.application.csv_options = { :encoding => 'SJIS' }
173
- ActiveAdmin.register Post do
174
- csv do
175
- column :title
176
- column :body
177
- end
178
- end
179
- """
180
- And a post with the title "あいうえお" exists
181
- When I am on the index page for posts
182
- And I follow "CSV"
183
- And the encoding of the CSV file should be "SJIS"
184
-
185
- Scenario: With decorator
186
- Given a configuration of:
187
- """
188
- ActiveAdmin.register Post do
189
- decorate_with PostDecorator
190
-
191
- csv do
192
- column :id
193
- column :title
194
- column :decorator_method
195
- end
196
- end
197
- """
198
- And a post with the title "Hello World" exists
199
- When I am on the index page for posts
200
- And I follow "CSV"
201
- And I should download a CSV file for "posts" containing:
202
- | Id | Title | Decorator method |
203
- | \d+ | Hello World | A method only available on the decorator |
@@ -1,66 +0,0 @@
1
- Feature: Index Formats
2
-
3
- Scenario: View index with default formats
4
- Given an index configuration of:
5
- """
6
- ActiveAdmin.register Post
7
- """
8
- And 1 post exists
9
- When I am on the index page for posts
10
- Then I should see a link to download "CSV"
11
- And I should see a link to download "XML"
12
- And I should see a link to download "JSON"
13
-
14
- Scenario: View index with download_links set to false
15
- Given an index configuration of:
16
- """
17
- ActiveAdmin.register Post do
18
- index :download_links => false
19
- end
20
- """
21
- And 1 post exists
22
- When I am on the index page for posts
23
- Then I should not see a link to download "CSV"
24
- And I should not see a link to download "XML"
25
- And I should not see a link to download "JSON"
26
-
27
- Scenario: View index with pdf download link set
28
- Given an index configuration of:
29
- """
30
- ActiveAdmin.register Post do
31
- index :download_links => [:pdf]
32
- end
33
- """
34
- And 1 post exists
35
- When I am on the index page for posts
36
- Then I should not see a link to download "CSV"
37
- And I should not see a link to download "XML"
38
- And I should not see a link to download "JSON"
39
- And I should see a link to download "PDF"
40
-
41
- Scenario: View index with download_links block which returns false
42
- Given an index configuration of:
43
- """
44
- ActiveAdmin.register Post do
45
- index :download_links => proc { false }
46
- end
47
- """
48
- And 1 post exists
49
- When I am on the index page for posts
50
- Then I should not see a link to download "CSV"
51
- And I should not see a link to download "XML"
52
- And I should not see a link to download "JSON"
53
-
54
- Scenario: View index with download_links block which returns [:csv]
55
- Given an index configuration of:
56
- """
57
- ActiveAdmin.register Post do
58
- index :download_links => -> { [:csv] }
59
- end
60
- """
61
- And 1 post exists
62
- When I am on the index page for posts
63
- Then I should see a link to download "CSV"
64
- And I should not see a link to download "XML"
65
- And I should not see a link to download "JSON"
66
- And I should not see a link to download "PDF"
@@ -1,15 +0,0 @@
1
- Feature: Index as Block
2
-
3
- Viewing the resource as a block which is renderered by the user
4
-
5
- Scenario: Viewing the index as a block
6
- Given a post with the title "Hello World from Block" exists
7
- And an index configuration of:
8
- """
9
- ActiveAdmin.register Post do
10
- index :as => :block do |post|
11
- span(link_to(post.title, admin_post_path(post)))
12
- end
13
- end
14
- """
15
- Then I should see "Hello World from Block" within ".index_as_block"
@@ -1,69 +0,0 @@
1
- Feature: Index as Blog
2
-
3
- Viewing resources as a blog on the index page
4
-
5
- Scenario: Viewing the blog with a resource
6
- Given a post with the title "Hello World" exists
7
- And an index configuration of:
8
- """
9
- ActiveAdmin.register Post do
10
- index :as => :blog
11
- end
12
- """
13
- And I am logged in
14
- When I am on the index page for posts
15
- Then I should see a blog header "Hello World"
16
- And I should see a link to "Hello World"
17
-
18
- Scenario: Viewing the blog with a resource as a simple configuration
19
- Given a post with the title "Hello World" and body "My great post body" exists
20
- And an index configuration of:
21
- """
22
- ActiveAdmin.register Post do
23
- index :as => :blog do
24
- title :title
25
- body :body
26
- end
27
- end
28
- """
29
- Then I should see a blog header "Hello World"
30
- And I should see a link to "Hello World"
31
- And I should see "My great post body" within ".post"
32
-
33
- Scenario: Viewing the blog with a resource as a block configuration
34
- Given a post with the title "Hello World" and body "My great post body" exists
35
- And an index configuration of:
36
- """
37
- ActiveAdmin.register Post do
38
- index :as => :blog do
39
- title do |post|
40
- post.title + " From Block"
41
- end
42
- body do |post|
43
- post.body + " From Block"
44
- end
45
- end
46
- end
47
- """
48
- Then I should see a blog header "Hello World From Block"
49
- And I should see a link to "Hello World From Block"
50
- And I should see "My great post body From Block" within ".post"
51
-
52
- Scenario: Viewing a blog with a resource as a block configuration should render Abre components
53
- Given a post with the title "Hello World" and body "My great post body" exists
54
- And an index configuration of:
55
- """
56
- ActiveAdmin.register Post do
57
- index :as => :blog do
58
- title do |post|
59
- span(:class => :title_span) { post.title + " From Block " }
60
- end
61
- body do |post|
62
- span(:class => :body_span) { post.body + " From Block" }
63
- end
64
- end
65
- end
66
- """
67
- Then I should see "Hello World From Block" within "span.title_span"
68
- And I should see a link to "Hello World From Block"
69
- And I should see "My great post body From Block" within ".post span.body_span"