rails_admin 3.0.0.beta2 → 3.0.0.rc

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rails_admin might be problematic. Click here for more details.

Files changed (250) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -2
  3. data/Rakefile +11 -0
  4. data/app/assets/javascripts/rails_admin.js +4 -4
  5. data/app/assets/stylesheets/rails_admin.scss +31 -0
  6. data/app/controllers/rails_admin/application_controller.rb +1 -1
  7. data/app/controllers/rails_admin/main_controller.rb +10 -18
  8. data/app/helpers/rails_admin/application_helper.rb +12 -13
  9. data/app/helpers/rails_admin/form_builder.rb +3 -3
  10. data/app/helpers/rails_admin/main_helper.rb +1 -1
  11. data/app/views/kaminari/ra-twitter-bootstrap/_gap.html.erb +2 -2
  12. data/app/views/kaminari/ra-twitter-bootstrap/_next_page.html.erb +4 -4
  13. data/app/views/kaminari/ra-twitter-bootstrap/_page.html.erb +4 -4
  14. data/app/views/kaminari/ra-twitter-bootstrap/_paginator.html.erb +12 -10
  15. data/app/views/kaminari/ra-twitter-bootstrap/_prev_page.html.erb +4 -4
  16. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_next_page.html.erb +4 -4
  17. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_paginator.html.erb +6 -4
  18. data/app/views/kaminari/ra-twitter-bootstrap/without_count/_prev_page.html.erb +4 -4
  19. data/app/views/layouts/rails_admin/_navigation.html.erb +12 -16
  20. data/app/views/layouts/rails_admin/_secondary_navigation.html.erb +8 -8
  21. data/app/views/layouts/rails_admin/_sidebar_navigation.html.erb +1 -5
  22. data/app/views/layouts/rails_admin/application.html.erb +4 -7
  23. data/app/views/layouts/rails_admin/{pjax.html.erb → content.html.erb} +7 -5
  24. data/app/views/layouts/rails_admin/modal.js.erb +1 -1
  25. data/app/views/rails_admin/main/_dashboard_history.html.erb +1 -1
  26. data/app/views/rails_admin/main/_delete_notice.html.erb +2 -2
  27. data/app/views/rails_admin/main/_form_boolean.html.erb +6 -8
  28. data/app/views/rails_admin/main/_form_colorpicker.html.erb +5 -1
  29. data/app/views/rails_admin/main/_form_datetime.html.erb +8 -7
  30. data/app/views/rails_admin/main/_form_enumeration.html.erb +5 -1
  31. data/app/views/rails_admin/main/_form_file_upload.html.erb +1 -1
  32. data/app/views/rails_admin/main/_form_filtering_multiselect.html.erb +14 -14
  33. data/app/views/rails_admin/main/_form_filtering_select.html.erb +16 -21
  34. data/app/views/rails_admin/main/_form_multiple_file_upload.html.erb +1 -1
  35. data/app/views/rails_admin/main/_form_nested_many.html.erb +4 -4
  36. data/app/views/rails_admin/main/_form_nested_one.html.erb +4 -4
  37. data/app/views/rails_admin/main/_form_polymorphic_association.html.erb +11 -6
  38. data/app/views/rails_admin/main/_submit_buttons.html.erb +8 -8
  39. data/app/views/rails_admin/main/bulk_delete.html.erb +1 -1
  40. data/app/views/rails_admin/main/dashboard.html.erb +4 -4
  41. data/app/views/rails_admin/main/delete.html.erb +1 -1
  42. data/app/views/rails_admin/main/edit.html.erb +1 -1
  43. data/app/views/rails_admin/main/export.html.erb +35 -32
  44. data/app/views/rails_admin/main/history.html.erb +16 -14
  45. data/app/views/rails_admin/main/index.html.erb +38 -35
  46. data/app/views/rails_admin/main/new.html.erb +1 -1
  47. data/config/locales/rails_admin.en.yml +0 -1
  48. data/lib/generators/rails_admin/install_generator.rb +0 -1
  49. data/lib/generators/rails_admin/templates/webpack.config.js +0 -3
  50. data/lib/rails_admin/adapters/active_record/object_extension.rb +1 -1
  51. data/lib/rails_admin/adapters/active_record/property.rb +1 -1
  52. data/lib/rails_admin/adapters/active_record.rb +7 -3
  53. data/lib/rails_admin/adapters/mongoid/property.rb +3 -3
  54. data/lib/rails_admin/adapters/mongoid.rb +2 -2
  55. data/lib/rails_admin/config/actions/base.rb +1 -6
  56. data/lib/rails_admin/config/actions/dashboard.rb +13 -9
  57. data/lib/rails_admin/config/actions/delete.rb +4 -0
  58. data/lib/rails_admin/config/actions/edit.rb +4 -0
  59. data/lib/rails_admin/config/actions/new.rb +5 -0
  60. data/lib/rails_admin/config/actions/show_in_app.rb +0 -4
  61. data/lib/rails_admin/config/fields/association.rb +6 -1
  62. data/lib/rails_admin/config/fields/base.rb +1 -1
  63. data/lib/rails_admin/config/fields/types/action_text.rb +1 -1
  64. data/lib/rails_admin/config/fields/types/date.rb +7 -0
  65. data/lib/rails_admin/config/fields/types/datetime.rb +9 -4
  66. data/lib/rails_admin/config/fields/types/has_many_association.rb +4 -0
  67. data/lib/rails_admin/config/fields/types/has_one_association.rb +4 -0
  68. data/lib/rails_admin/config/fields/types/time.rb +9 -0
  69. data/lib/rails_admin/config/has_fields.rb +4 -0
  70. data/lib/rails_admin/config/model.rb +8 -0
  71. data/lib/rails_admin/config/sections/list.rb +4 -4
  72. data/lib/rails_admin/config.rb +4 -1
  73. data/lib/rails_admin/engine.rb +2 -5
  74. data/lib/rails_admin/support/datetime.rb +50 -53
  75. data/lib/rails_admin/support/esmodule_preprocessor.rb +2 -1
  76. data/lib/rails_admin/version.rb +1 -1
  77. data/package.json +7 -5
  78. data/src/rails_admin/base.js +3 -6
  79. data/src/rails_admin/filter-box.js +36 -37
  80. data/src/rails_admin/filtering-select.js +3 -6
  81. data/src/rails_admin/i18n.js +0 -3
  82. data/src/rails_admin/nested-form-hooks.js +16 -8
  83. data/src/rails_admin/remote-form.js +18 -15
  84. data/src/rails_admin/styles/base/theming.scss +80 -155
  85. data/src/rails_admin/styles/base/variables.scss +2 -0
  86. data/src/rails_admin/styles/base.scss +8 -45
  87. data/src/rails_admin/styles/filtering-multiselect.scss +2 -2
  88. data/src/rails_admin/styles/filtering-select.scss +1 -1
  89. data/src/rails_admin/styles/widgets.scss +1 -10
  90. data/src/rails_admin/ui.js +4 -54
  91. data/src/rails_admin/widgets.js +38 -48
  92. data/vendor/assets/javascripts/rails_admin/bootstrap.js +5046 -0
  93. data/vendor/assets/javascripts/rails_admin/flatpickr-with-locales.js +10683 -0
  94. data/vendor/assets/javascripts/rails_admin/popper.js +1974 -0
  95. data/vendor/assets/stylesheets/rails_admin/bootstrap/_accordion.scss +118 -0
  96. data/vendor/assets/stylesheets/rails_admin/bootstrap/_alert.scss +57 -0
  97. data/vendor/assets/stylesheets/rails_admin/bootstrap/_badge.scss +29 -0
  98. data/vendor/assets/stylesheets/rails_admin/bootstrap/_breadcrumb.scss +28 -0
  99. data/vendor/assets/stylesheets/rails_admin/bootstrap/_button-group.scss +139 -0
  100. data/vendor/assets/stylesheets/rails_admin/bootstrap/_buttons.scss +64 -110
  101. data/vendor/assets/stylesheets/rails_admin/bootstrap/_card.scss +216 -0
  102. data/vendor/assets/stylesheets/rails_admin/bootstrap/_carousel.scss +162 -176
  103. data/vendor/assets/stylesheets/rails_admin/bootstrap/_close.scss +31 -26
  104. data/vendor/assets/stylesheets/rails_admin/bootstrap/_containers.scss +41 -0
  105. data/vendor/assets/stylesheets/rails_admin/bootstrap/_dropdown.scss +240 -0
  106. data/vendor/assets/stylesheets/rails_admin/bootstrap/_forms.scss +9 -538
  107. data/vendor/assets/stylesheets/rails_admin/bootstrap/_functions.scss +302 -0
  108. data/vendor/assets/stylesheets/rails_admin/bootstrap/_grid.scss +18 -69
  109. data/vendor/assets/stylesheets/rails_admin/bootstrap/_helpers.scss +9 -0
  110. data/vendor/assets/stylesheets/rails_admin/bootstrap/_images.scss +42 -0
  111. data/vendor/assets/stylesheets/rails_admin/bootstrap/_list-group.scss +127 -84
  112. data/vendor/assets/stylesheets/rails_admin/bootstrap/_mixins.scss +26 -22
  113. data/vendor/assets/stylesheets/rails_admin/bootstrap/_modal.scss +209 -0
  114. data/vendor/assets/stylesheets/rails_admin/bootstrap/_nav.scss +139 -0
  115. data/vendor/assets/stylesheets/rails_admin/bootstrap/_navbar.scss +218 -542
  116. data/vendor/assets/stylesheets/rails_admin/bootstrap/_offcanvas.scss +83 -0
  117. data/vendor/assets/stylesheets/rails_admin/bootstrap/_pagination.scss +46 -70
  118. data/vendor/assets/stylesheets/rails_admin/bootstrap/_placeholders.scss +51 -0
  119. data/vendor/assets/stylesheets/rails_admin/bootstrap/_popover.scss +158 -0
  120. data/vendor/assets/stylesheets/rails_admin/bootstrap/_progress.scss +48 -0
  121. data/vendor/assets/stylesheets/rails_admin/bootstrap/_reboot.scss +625 -0
  122. data/vendor/assets/stylesheets/rails_admin/bootstrap/_root.scss +54 -0
  123. data/vendor/assets/stylesheets/rails_admin/bootstrap/_spinners.scss +69 -0
  124. data/vendor/assets/stylesheets/rails_admin/bootstrap/_tables.scss +100 -178
  125. data/vendor/assets/stylesheets/rails_admin/bootstrap/_toasts.scss +51 -0
  126. data/vendor/assets/stylesheets/rails_admin/bootstrap/_tooltip.scss +97 -77
  127. data/vendor/assets/stylesheets/rails_admin/bootstrap/_transitions.scss +27 -0
  128. data/vendor/assets/stylesheets/rails_admin/bootstrap/_type.scss +54 -254
  129. data/vendor/assets/stylesheets/rails_admin/bootstrap/_utilities.scss +628 -55
  130. data/vendor/assets/stylesheets/rails_admin/bootstrap/_variables.scss +1572 -781
  131. data/vendor/assets/stylesheets/rails_admin/bootstrap/bootstrap.scss +38 -35
  132. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_floating-labels.scss +63 -0
  133. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-check.scss +152 -0
  134. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-control.scss +219 -0
  135. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-range.scss +91 -0
  136. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-select.scss +72 -0
  137. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_form-text.scss +11 -0
  138. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_input-group.scss +121 -0
  139. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_labels.scss +36 -0
  140. data/vendor/assets/stylesheets/rails_admin/bootstrap/forms/_validation.scss +12 -0
  141. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_clearfix.scss +3 -0
  142. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_colored-links.scss +12 -0
  143. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_position.scss +30 -0
  144. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_ratio.scss +26 -0
  145. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stacks.scss +15 -0
  146. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_stretched-link.scss +15 -0
  147. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_text-truncation.scss +7 -0
  148. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_visually-hidden.scss +8 -0
  149. data/vendor/assets/stylesheets/rails_admin/bootstrap/helpers/_vr.scss +8 -0
  150. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_alert.scss +11 -0
  151. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_backdrop.scss +14 -0
  152. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_border-radius.scss +72 -12
  153. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_box-shadow.scss +18 -0
  154. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_breakpoints.scss +127 -0
  155. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_buttons.scss +113 -30
  156. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_caret.scss +64 -0
  157. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_clearfix.scss +5 -18
  158. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_color-scheme.scss +7 -0
  159. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_container.scss +9 -0
  160. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_deprecate.scss +10 -0
  161. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_forms.scss +130 -70
  162. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_gradients.scss +27 -38
  163. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_grid.scss +127 -98
  164. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_image.scss +6 -24
  165. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_list-group.scss +13 -20
  166. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_lists.scss +7 -0
  167. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_pagination.scss +24 -16
  168. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-text.scss +17 -0
  169. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_resize.scss +1 -1
  170. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_table-variants.scss +21 -0
  171. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/{_text-overflow.scss → _text-truncate.scss} +2 -2
  172. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_transition.scss +26 -0
  173. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_utilities.scss +89 -0
  174. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_visually-hidden.scss +29 -0
  175. data/vendor/assets/stylesheets/rails_admin/bootstrap/utilities/_api.scss +47 -0
  176. data/vendor/assets/stylesheets/rails_admin/bootstrap/vendor/_rfs.scss +354 -0
  177. data/vendor/assets/stylesheets/rails_admin/flatpickr.css +791 -0
  178. metadata +80 -91
  179. data/app/assets/stylesheets/rails_admin.scss.erb +0 -76
  180. data/lib/generators/rails_admin/templates/environment.js +0 -6
  181. data/src/rails_admin/styles/themes/cerulean/mixins.scss +0 -0
  182. data/src/rails_admin/styles/themes/cerulean/theming.scss +0 -135
  183. data/src/rails_admin/styles/themes/cerulean/variables.scss +0 -830
  184. data/src/rails_admin/styles/themes/default/mixins.scss +0 -8
  185. data/src/rails_admin/styles/themes/default/theming.scss +0 -11
  186. data/src/rails_admin/styles/themes/default/variables.scss +0 -12
  187. data/src/rails_admin/vendor/jquery.pjax.js +0 -899
  188. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-affix.js +0 -164
  189. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-alert.js +0 -95
  190. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-button.js +0 -125
  191. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-carousel.js +0 -246
  192. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-collapse.js +0 -212
  193. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-dropdown.js +0 -165
  194. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-modal.js +0 -358
  195. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-popover.js +0 -123
  196. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-scrollspy.js +0 -172
  197. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-tab.js +0 -155
  198. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-tooltip.js +0 -677
  199. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-transition.js +0 -59
  200. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap-typeahead.js +0 -1782
  201. data/vendor/assets/javascripts/rails_admin/bootstrap/bootstrap.js +0 -13
  202. data/vendor/assets/javascripts/rails_admin/bootstrap-datetimepicker.js +0 -2611
  203. data/vendor/assets/javascripts/rails_admin/jquery.pjax.js +0 -898
  204. data/vendor/assets/javascripts/rails_admin/moment-with-locales.js +0 -18085
  205. data/vendor/assets/stylesheets/rails_admin/_bootstrap-datetimepicker.scss +0 -343
  206. data/vendor/assets/stylesheets/rails_admin/bootstrap/_alerts.scss +0 -68
  207. data/vendor/assets/stylesheets/rails_admin/bootstrap/_badges.scss +0 -57
  208. data/vendor/assets/stylesheets/rails_admin/bootstrap/_breadcrumbs.scss +0 -26
  209. data/vendor/assets/stylesheets/rails_admin/bootstrap/_button-groups.scss +0 -240
  210. data/vendor/assets/stylesheets/rails_admin/bootstrap/_code.scss +0 -68
  211. data/vendor/assets/stylesheets/rails_admin/bootstrap/_component-animations.scss +0 -35
  212. data/vendor/assets/stylesheets/rails_admin/bootstrap/_dropdowns.scss +0 -215
  213. data/vendor/assets/stylesheets/rails_admin/bootstrap/_glyphicons.scss +0 -237
  214. data/vendor/assets/stylesheets/rails_admin/bootstrap/_input-groups.scss +0 -166
  215. data/vendor/assets/stylesheets/rails_admin/bootstrap/_jumbotron.scss +0 -48
  216. data/vendor/assets/stylesheets/rails_admin/bootstrap/_labels.scss +0 -66
  217. data/vendor/assets/stylesheets/rails_admin/bootstrap/_media.scss +0 -56
  218. data/vendor/assets/stylesheets/rails_admin/bootstrap/_modals.scss +0 -150
  219. data/vendor/assets/stylesheets/rails_admin/bootstrap/_navs.scss +0 -242
  220. data/vendor/assets/stylesheets/rails_admin/bootstrap/_normalize.scss +0 -425
  221. data/vendor/assets/stylesheets/rails_admin/bootstrap/_pager.scss +0 -55
  222. data/vendor/assets/stylesheets/rails_admin/bootstrap/_panels.scss +0 -243
  223. data/vendor/assets/stylesheets/rails_admin/bootstrap/_popovers.scss +0 -133
  224. data/vendor/assets/stylesheets/rails_admin/bootstrap/_print.scss +0 -101
  225. data/vendor/assets/stylesheets/rails_admin/bootstrap/_progress-bars.scss +0 -105
  226. data/vendor/assets/stylesheets/rails_admin/bootstrap/_responsive-embed.scss +0 -34
  227. data/vendor/assets/stylesheets/rails_admin/bootstrap/_responsive-utilities.scss +0 -174
  228. data/vendor/assets/stylesheets/rails_admin/bootstrap/_scaffolding.scss +0 -150
  229. data/vendor/assets/stylesheets/rails_admin/bootstrap/_theme.scss +0 -258
  230. data/vendor/assets/stylesheets/rails_admin/bootstrap/_thumbnails.scss +0 -38
  231. data/vendor/assets/stylesheets/rails_admin/bootstrap/_wells.scss +0 -29
  232. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_alerts.scss +0 -14
  233. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_background-variant.scss +0 -11
  234. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_center-block.scss +0 -7
  235. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_grid-framework.scss +0 -81
  236. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_hide-text.scss +0 -21
  237. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_labels.scss +0 -12
  238. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-divider.scss +0 -10
  239. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_nav-vertical-align.scss +0 -9
  240. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_opacity.scss +0 -8
  241. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_panels.scss +0 -24
  242. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_progress-bar.scss +0 -10
  243. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_reset-filter.scss +0 -8
  244. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_responsive-visibility.scss +0 -21
  245. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_size.scss +0 -10
  246. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_tab-focus.scss +0 -9
  247. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_table-row.scss +0 -28
  248. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_text-emphasis.scss +0 -11
  249. data/vendor/assets/stylesheets/rails_admin/bootstrap/mixins/_vendor-prefixes.scss +0 -219
  250. data/vendor/assets/stylesheets/rails_admin/bootstrap-datetimepicker-build.scss +0 -16
@@ -1,6 +1,6 @@
1
1
  <%
2
2
  query = params[:query]
3
- params = request.params.except(:authenticity_token, :action, :controller, :utf8, :bulk_export, :_pjax)
3
+ params = request.params.except(:authenticity_token, :action, :controller, :utf8, :bulk_export)
4
4
  params.delete(:query) if params[:query].blank?
5
5
  params.delete(:sort_reverse) unless params[:sort_reverse] == 'true'
6
6
  sort_reverse = params[:sort_reverse]
@@ -18,16 +18,13 @@
18
18
  %>
19
19
 
20
20
  <% content_for :contextual_tabs do %>
21
- <% if checkboxes %>
22
- <%= bulk_menu %>
23
- <% end %>
24
21
  <% if filterable_fields.present? %>
25
- <li class="dropdown" style="float:right">
26
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">
22
+ <li class="nav-item dropdown">
23
+ <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#">
27
24
  <%= t('admin.misc.add_filter') %>
28
25
  <b class="caret"></b>
29
26
  </a>
30
- <ul class="dropdown-menu" id="filters" style="left:auto; right:0;">
27
+ <ul class="dropdown-menu dropdown-menu-end" id="filters">
31
28
  <% filterable_fields.each do |field| %>
32
29
  <%
33
30
  field_options = case field.type
@@ -40,6 +37,7 @@
40
37
  <li>
41
38
  <a
42
39
  href="#"
40
+ class="dropdown-item"
43
41
  data-field-label="<%= field.label %>"
44
42
  data-field-name="<%= field.name %>"
45
43
  data-field-operator="<%= field.default_filter_operator %>"
@@ -47,7 +45,7 @@
47
45
  data-field-required="<%= field.required.to_s %>"
48
46
  data-field-type="<%= field.type %>"
49
47
  data-field-value=""
50
- data-field-datetimepicker-format="<%= field.try(:momentjs_format) %>"
48
+ data-field-datetimepicker-options="<%= field.try(:datepicker_options).try(:to_json) %>"
51
49
  >
52
50
  <%= field.label %>
53
51
  </a>
@@ -56,6 +54,9 @@
56
54
  </ul>
57
55
  </li>
58
56
  <% end %>
57
+ <% if checkboxes %>
58
+ <%= bulk_menu %>
59
+ <% end %>
59
60
  <% end %>
60
61
 
61
62
  <style>
@@ -66,27 +67,29 @@
66
67
  </style>
67
68
 
68
69
  <div id="list">
69
- <%= form_tag(index_path(params.except(*%w[page f query])), method: :get, class: "pjax-form form-inline") do %>
70
- <div class="well">
71
- <span data-options="<%= ordered_filter_options.to_json %>" id="filters_box"></span>
70
+ <%= form_tag(index_path(params.except(*%w[page f query])), method: :get) do %>
71
+ <div class="card mb-3 p-3 bg-light">
72
+ <div class="row" data-options="<%= ordered_filter_options.to_json %>" id="filters_box"></div>
72
73
  <hr class="filters_box" style="display:<%= ordered_filters.empty? ? 'none' : 'block' %>"/>
73
- <div class="input-group">
74
- <input class="form-control input-small" name="query" placeholder="<%= t("admin.misc.filter") %>" type="search" value="<%= query %>"></input>
75
- <span class="input-group-btn">
76
- <button class="btn btn-primary" data-disable-with="<%= '<i class="fas fa-sync"></i>' + t('admin.misc.refresh') %>" type="submit">
77
- <i class="fas fa-sync"></i>
78
- <%= t('admin.misc.refresh') %>
79
- </button>
80
- <button class="btn btn-info" id="remove_filter" title="<%= t('admin.misc.reset_filters') %>">
81
- <i class="fas fa-times"></i>
82
- </button>
83
- </span>
74
+ <div class="row">
75
+ <div class="col-sm-6">
76
+ <div class="input-group">
77
+ <input class="form-control" name="query" placeholder="<%= t("admin.misc.filter") %>" type="search" value="<%= query %>" />
78
+ <button class="btn btn-primary" data-disable-with="<%= '<i class="fas fa-sync"></i>' + t('admin.misc.refresh') %>" type="submit">
79
+ <i class="fas fa-sync"></i>
80
+ <%= t('admin.misc.refresh') %>
81
+ </button>
82
+ <button class="btn btn-info" id="remove_filter" title="<%= t('admin.misc.reset_filters') %>">
83
+ <i class="fas fa-times"></i>
84
+ </button>
85
+ </div>
86
+ </div>
87
+ <div class="col-sm-6 text-end">
88
+ <% if export_action %>
89
+ <%= link_to wording_for(:link, export_action), export_path(params.except('page')), class: 'btn btn-info' %>
90
+ <% end %>
91
+ </div>
84
92
  </div>
85
- <% if export_action %>
86
- <span style="float:right">
87
- <%= link_to wording_for(:link, export_action), export_path(params.except('page')), class: 'btn btn-info' %>
88
- </span>
89
- <% end %>
90
93
  </div>
91
94
  <% end %>
92
95
  <% unless @model_config.list.scopes.empty? %>
@@ -94,14 +97,14 @@
94
97
  <% @model_config.list.scopes.each_with_index do |scope, index| %>
95
98
  <% scope = '_all' if scope.nil? %>
96
99
  <li class="<%= 'active' if scope.to_s == params[:scope] || (params[:scope].blank? && index == 0) %>">
97
- <a class="pjax" href="<%= index_path(params.merge(scope: scope, page: nil)) %>">
100
+ <a href="<%= index_path(params.merge(scope: scope, page: nil)) %>">
98
101
  <%= I18n.t("admin.scopes.#{@abstract_model.to_param}.#{scope}", default: I18n.t("admin.scopes.#{scope}", default: scope.to_s.titleize)) %>
99
102
  </a>
100
103
  </li>
101
104
  <% end %>
102
105
  </ul>
103
106
  <% end %>
104
- <%= form_tag bulk_action_path(model_name: @abstract_model.to_param), method: :post, id: "bulk_form", class: ["form"] do %>
107
+ <%= form_tag bulk_action_path(model_name: @abstract_model.to_param), method: :post, id: "bulk_form", class: ["form", "mb-3"] do %>
105
108
  <%= hidden_field_tag :bulk_action %>
106
109
  <% if description.present? %>
107
110
  <p>
@@ -116,7 +119,7 @@
116
119
  <tr>
117
120
  <% if checkboxes %>
118
121
  <th class="shrink sticky">
119
- <input class="toggle" type="checkbox"></input>
122
+ <input class="toggle" type="checkbox" />
120
123
  </th>
121
124
  <% end %>
122
125
  <% properties.each do |property| %>
@@ -125,7 +128,7 @@
125
128
  <% sort_location = index_path params.except('sort_reverse').except('page').merge(sort: property.name).merge(selected && sort_reverse != "true" ? {sort_reverse: "true"} : {}) %>
126
129
  <% sort_direction = (sort_reverse == 'true' ? "headerSortUp" : "headerSortDown" if selected) %>
127
130
  <% end %>
128
- <th class="<%= [property.sortable && "header pjax", property.sortable && sort_direction, property.sticky? && 'sticky', property.css_class, property.type_css_class].compact.join(' ') %>" data-href="<%= property.sortable && sort_location %>" rel="tooltip" title="<%= property.hint %>">
131
+ <th class="<%= [property.sortable && "header", property.sortable && sort_direction, property.sticky? && 'sticky', property.css_class, property.type_css_class].select(&:present?).join(' ') %>" data-href="<%= property.sortable && sort_location %>" rel="tooltip" title="<%= property.hint %>">
129
132
  <%= property.label %>
130
133
  </th>
131
134
  <% end %>
@@ -142,7 +145,7 @@
142
145
  <% end %>
143
146
  <% properties.map{ |property| property.bind(:object, object) }.each do |property| %>
144
147
  <% value = property.pretty_value %>
145
- <td class="<%= [property.sticky? && 'sticky', property.css_class, property.type_css_class].compact.join(' ') %>" title="<%= strip_tags(value.to_s) %>">
148
+ <td class="<%= [property.sticky? && 'sticky', property.css_class, property.type_css_class].select(&:present?).join(' ') %>" title="<%= strip_tags(value.to_s) %>">
146
149
  <%= value %>
147
150
  </td>
148
151
  <% end %>
@@ -166,19 +169,19 @@
166
169
  <% if @model_config.list.limited_pagination %>
167
170
  <div class="row">
168
171
  <div class="col-md-6">
169
- <%= paginate(@objects, theme: 'ra-twitter-bootstrap/without_count', total_pages: Float::INFINITY, remote: true) %>
172
+ <%= paginate(@objects, theme: 'ra-twitter-bootstrap/without_count', total_pages: Float::INFINITY) %>
170
173
  </div>
171
174
  </div>
172
175
  <% elsif @objects.respond_to?(:total_count) %>
173
176
  <% total_count = @objects.total_count.to_i %>
174
177
  <div class="row">
175
178
  <div class="col-md-6">
176
- <%= paginate(@objects, theme: 'ra-twitter-bootstrap', remote: true) %>
179
+ <%= paginate(@objects, theme: 'ra-twitter-bootstrap') %>
177
180
  </div>
178
181
  </div>
179
182
  <div class="row">
180
183
  <div class="col-md-6">
181
- <%= link_to(t("admin.misc.show_all"), index_path(params.merge(all: true)), class: "show-all btn btn-default clearfix pjax") unless total_count > 100 || total_count <= @objects.to_a.size %>
184
+ <%= link_to(t("admin.misc.show_all"), index_path(params.merge(all: true)), class: "show-all btn btn-light clearfix") unless total_count > 100 || total_count <= @objects.to_a.size %>
182
185
  </div>
183
186
  </div>
184
187
  <div class="clearfix total-count">
@@ -1,3 +1,3 @@
1
- <%= rails_admin_form_for @object, url: new_path(model_name: @abstract_model.to_param), as: @abstract_model.param_key, html: { multipart: true, class: "form-horizontal denser", data: { title: @page_name } } do |form| %>
1
+ <%= rails_admin_form_for @object, url: new_path(model_name: @abstract_model.to_param), as: @abstract_model.param_key, html: { multipart: true, class: "main", data: { title: @page_name } } do |form| %>
2
2
  <%= form.generate action: :create %>
3
3
  <% end %>
@@ -21,7 +21,6 @@ en:
21
21
  too_many_objects: "Too many objects, use search box above"
22
22
  no_objects: "No objects found"
23
23
  clear: Clear
24
- loading: "Loading..."
25
24
  toggle_navigation: Toggle navigation
26
25
  home:
27
26
  name: "Home"
@@ -53,7 +53,6 @@ module RailsAdmin
53
53
  @scss_relative_dir = '../stylesheets/'
54
54
  template 'rails_admin.js.erb', 'app/javascript/packs/rails_admin.js'
55
55
  template 'rails_admin.scss', 'app/javascript/stylesheets/rails_admin.scss'
56
- template 'environment.js', 'config/webpack/environment.js'
57
56
  end
58
57
 
59
58
  def configure_for_webpack
@@ -24,9 +24,6 @@ module.exports = {
24
24
  new webpack.optimize.LimitChunkCountPlugin({
25
25
  maxChunks: 1
26
26
  }),
27
- new webpack.ProvidePlugin({
28
- jQuery: "jquery"
29
- }),
30
27
  new MiniCssExtractPlugin(),
31
28
  ]
32
29
  }
@@ -13,7 +13,7 @@ module RailsAdmin
13
13
  end
14
14
 
15
15
  def #{association.name}_id=(item_id)
16
- self.#{association.name} = #{association.klass}.find_by_id(item_id)
16
+ self.#{association.name} = (#{association.klass}.find(item_id) rescue nil)
17
17
  end
18
18
  RUBY
19
19
  end
@@ -42,7 +42,7 @@ module RailsAdmin
42
42
  end
43
43
 
44
44
  def read_only?
45
- false
45
+ model.readonly_attributes.include? property.name.to_s
46
46
  end
47
47
 
48
48
  private
@@ -12,8 +12,8 @@ module RailsAdmin
12
12
  model.new(params).extend(ObjectExtension)
13
13
  end
14
14
 
15
- def get(id)
16
- return unless object = model.where(primary_key => id).first
15
+ def get(id, scope = scoped)
16
+ return unless object = scope.where(primary_key => id).first
17
17
 
18
18
  object.extend(ObjectExtension)
19
19
  end
@@ -80,7 +80,11 @@ module RailsAdmin
80
80
  when 'postgresql'
81
81
  ::ActiveRecord::Base.connection.select_one("SELECT ''::text AS str;").values.first.encoding
82
82
  when 'mysql2'
83
- ::ActiveRecord::Base.connection.raw_connection.encoding
83
+ if RUBY_ENGINE == 'jruby'
84
+ ::ActiveRecord::Base.connection.select_one("SELECT '' AS str;").values.first.encoding
85
+ else
86
+ ::ActiveRecord::Base.connection.raw_connection.encoding
87
+ end
84
88
  when 'oracle_enhanced'
85
89
  ::ActiveRecord::Base.connection.select_one('SELECT dummy FROM DUAL').values.first.encoding
86
90
  else
@@ -11,11 +11,11 @@ module RailsAdmin
11
11
  end
12
12
 
13
13
  def name
14
- property.name.to_sym
14
+ (property.options[:as] || property.name).to_sym
15
15
  end
16
16
 
17
17
  def pretty_name
18
- property.name.to_s.tr('_', ' ').capitalize
18
+ (property.options[:as] || property.name).to_s.tr('_', ' ').capitalize
19
19
  end
20
20
 
21
21
  def type
@@ -64,7 +64,7 @@ module RailsAdmin
64
64
  end
65
65
 
66
66
  def read_only?
67
- false
67
+ model.readonly_attributes.include? property.name.to_s
68
68
  end
69
69
 
70
70
  private
@@ -18,8 +18,8 @@ module RailsAdmin
18
18
  model.new(params).extend(ObjectExtension)
19
19
  end
20
20
 
21
- def get(id)
22
- object = model.find(id)
21
+ def get(id, scope = scoped)
22
+ object = scope.find(id)
23
23
  return nil unless object
24
24
 
25
25
  object.extend(ObjectExtension)
@@ -49,7 +49,7 @@ module RailsAdmin
49
49
  (only.nil? || [only].flatten.collect(&:to_s).include?(bindings[:abstract_model].to_s)) &&
50
50
  ![except].flatten.collect(&:to_s).include?(bindings[:abstract_model].to_s) &&
51
51
  !bindings[:abstract_model].config.excluded?
52
- )
52
+ ) && (!respond_to?(:writable?) || writable?)
53
53
  end
54
54
 
55
55
  register_instance_option :authorized? do
@@ -73,11 +73,6 @@ module RailsAdmin
73
73
  false
74
74
  end
75
75
 
76
- # Render via pjax?
77
- register_instance_option :pjax? do
78
- link_target.blank?
79
- end
80
-
81
76
  # Target window [_self, _blank]
82
77
  register_instance_option :link_target do
83
78
  nil
@@ -18,21 +18,21 @@ module RailsAdmin
18
18
 
19
19
  register_instance_option :controller do
20
20
  proc do
21
- @history = @auditing_adapter&.latest(@action.auditing_versions_limit) || []
21
+ @history = @auditing_adapter&.latest(@action.auditing_versions_limit) if @action.history?
22
22
  if @action.statistics?
23
- @abstract_models = RailsAdmin::Config.visible_models(controller: self).collect(&:abstract_model)
23
+ model_configs = RailsAdmin::Config.visible_models(controller: self)
24
24
 
25
+ @abstract_models = model_configs.map(&:abstract_model)
25
26
  @most_recent_created = {}
26
27
  @count = {}
27
28
  @max = 0
28
- @abstract_models.each do |t|
29
- scope = @authorization_adapter&.query(:index, t)
30
- current_count = t.count({}, scope)
29
+ model_configs.each do |config|
30
+ scope = @authorization_adapter&.query(:index, config.abstract_model)
31
+ current_count = config.abstract_model.count({}, scope)
31
32
  @max = current_count > @max ? current_count : @max
32
- @count[t.model.name] = current_count
33
- next unless t.properties.detect { |c| c.name == :created_at }
34
-
35
- @most_recent_created[t.model.name] = t.model.last.try(:created_at)
33
+ name = config.abstract_model.model.name
34
+ @count[name] = current_count
35
+ @most_recent_created[name] = config.last_created_at
36
36
  end
37
37
  end
38
38
  render @action.template_name, status: @status_code || :ok
@@ -50,6 +50,10 @@ module RailsAdmin
50
50
  register_instance_option :statistics? do
51
51
  true
52
52
  end
53
+
54
+ register_instance_option :history? do
55
+ true
56
+ end
53
57
  end
54
58
  end
55
59
  end
@@ -46,6 +46,10 @@ module RailsAdmin
46
46
  register_instance_option :link_icon do
47
47
  'fas fa-times'
48
48
  end
49
+
50
+ register_instance_option :writable? do
51
+ !(bindings[:object] && bindings[:object].readonly?)
52
+ end
49
53
  end
50
54
  end
51
55
  end
@@ -44,6 +44,10 @@ module RailsAdmin
44
44
  register_instance_option :link_icon do
45
45
  'fas fa-pencil-alt'
46
46
  end
47
+
48
+ register_instance_option :writable? do
49
+ !(bindings[:object] && bindings[:object].readonly?)
50
+ end
47
51
  end
48
52
  end
49
53
  end
@@ -17,6 +17,7 @@ module RailsAdmin
17
17
  if request.get? # NEW
18
18
 
19
19
  @object = @abstract_model.new
20
+ @action = @action.with(@action.bindings.merge(object: @object))
20
21
  @authorization_adapter&.attributes_for(:new, @abstract_model)&.each do |name, value|
21
22
  @object.send("#{name}=", value)
22
23
  end
@@ -55,6 +56,10 @@ module RailsAdmin
55
56
  register_instance_option :link_icon do
56
57
  'fas fa-plus'
57
58
  end
59
+
60
+ register_instance_option :writable? do
61
+ !(bindings[:object] && bindings[:object].readonly?)
62
+ end
58
63
  end
59
64
  end
60
65
  end
@@ -25,10 +25,6 @@ module RailsAdmin
25
25
  register_instance_option :link_icon do
26
26
  'fas fa-eye'
27
27
  end
28
-
29
- register_instance_option :pjax? do
30
- false
31
- end
32
28
  end
33
29
  end
34
30
  end
@@ -21,7 +21,7 @@ module RailsAdmin
21
21
  am = amc.abstract_model
22
22
  wording = associated.send(amc.object_label_method)
23
23
  can_see = !am.embedded? && (show_action = v.action(:show, am, associated))
24
- can_see ? v.link_to(wording, v.url_for(action: show_action.action_name, model_name: am.to_param, id: associated.id), class: 'pjax') : ERB::Util.html_escape(wording)
24
+ can_see ? v.link_to(wording, v.url_for(action: show_action.action_name, model_name: am.to_param, id: associated.id)) : ERB::Util.html_escape(wording)
25
25
  end.to_sentence.html_safe.presence || '-'
26
26
  end
27
27
 
@@ -89,6 +89,11 @@ module RailsAdmin
89
89
  association.primary_key
90
90
  end
91
91
 
92
+ # Returns params which are to be set in modals
93
+ def associated_prepopulate_params
94
+ {}
95
+ end
96
+
92
97
  # Reader whether this is a polymorphic association
93
98
  def polymorphic?
94
99
  association.polymorphic?
@@ -252,7 +252,7 @@ module RailsAdmin
252
252
  end
253
253
 
254
254
  def editable?
255
- !(@properties && @properties.read_only?)
255
+ !((@properties && @properties.read_only?) || (bindings[:object] && bindings[:object].readonly?))
256
256
  end
257
257
 
258
258
  # Is this an association
@@ -9,7 +9,7 @@ module RailsAdmin
9
9
  RailsAdmin::Config::Fields::Types.register(self)
10
10
 
11
11
  register_instance_option :version do
12
- '1.1.1'
12
+ '1.3.1'
13
13
  end
14
14
 
15
15
  register_instance_option :css_location do
@@ -15,6 +15,13 @@ module RailsAdmin
15
15
  :long
16
16
  end
17
17
 
18
+ register_instance_option :datepicker_options do
19
+ {
20
+ allowInput: true,
21
+ altFormat: flatpickr_format,
22
+ }
23
+ end
24
+
18
25
  register_instance_option :i18n_scope do
19
26
  %i[date formats]
20
27
  end
@@ -30,14 +30,15 @@ module RailsAdmin
30
30
  '%B %d, %Y %H:%M'
31
31
  end
32
32
 
33
- register_instance_option :momentjs_format do
34
- RailsAdmin::Support::Datetime.to_momentjs(strftime_format)
33
+ register_instance_option :flatpickr_format do
34
+ RailsAdmin::Support::Datetime.to_flatpickr_format(strftime_format)
35
35
  end
36
36
 
37
37
  register_instance_option :datepicker_options do
38
38
  {
39
- showTodayButton: true,
40
- format: momentjs_format,
39
+ allowInput: true,
40
+ enableTime: true,
41
+ altFormat: flatpickr_format,
41
42
  }
42
43
  end
43
44
 
@@ -68,6 +69,10 @@ module RailsAdmin
68
69
  :form_datetime
69
70
  end
70
71
 
72
+ register_deprecated_instance_option :momentjs_format do
73
+ ActiveSupport::Deprecation.warn('The momentjs_format configuration option is deprecated, please use flatpickr_format with corresponding values here: https://flatpickr.js.org/formatting/')
74
+ end
75
+
71
76
  def form_value
72
77
  value&.in_time_zone&.strftime('%FT%T') || form_default_value
73
78
  end
@@ -25,6 +25,10 @@ module RailsAdmin
25
25
  def errors
26
26
  bindings[:object].errors[name]
27
27
  end
28
+
29
+ def associated_prepopulate_params
30
+ {associated_model_config.abstract_model.param_key => {association.foreign_key => bindings[:object].try(:id)}}
31
+ end
28
32
  end
29
33
  end
30
34
  end
@@ -28,6 +28,10 @@ module RailsAdmin
28
28
  def multiple?
29
29
  false
30
30
  end
31
+
32
+ def associated_prepopulate_params
33
+ {associated_model_config.abstract_model.param_key => {association.foreign_key => bindings[:object].try(:id)}}
34
+ end
31
35
  end
32
36
  end
33
37
  end
@@ -11,6 +11,15 @@ module RailsAdmin
11
11
  abstract_model.model.type_for_attribute(name.to_s).serialize(super)&.change(year: 2000, month: 1, day: 1)
12
12
  end
13
13
 
14
+ register_instance_option :datepicker_options do
15
+ {
16
+ allowInput: true,
17
+ altFormat: flatpickr_format,
18
+ enableTime: true,
19
+ noCalendar: true,
20
+ }
21
+ end
22
+
14
23
  register_instance_option :strftime_format do
15
24
  '%H:%M'
16
25
  end
@@ -116,6 +116,10 @@ module RailsAdmin
116
116
  all_fields.collect { |f| f.with(bindings) }.select(&:visible?).sort_by { |f| [f.order, i += 1] } # stable sort, damn
117
117
  end
118
118
 
119
+ def possible_fields
120
+ _fields(true)
121
+ end
122
+
119
123
  protected
120
124
 
121
125
  # Raw fields.
@@ -98,6 +98,14 @@ module RailsAdmin
98
98
  nil
99
99
  end
100
100
 
101
+ register_instance_option :scope do
102
+ abstract_model.scoped
103
+ end
104
+
105
+ register_instance_option :last_created_at do
106
+ abstract_model.model.last.try(:created_at) if abstract_model.properties.detect { |c| c.name == :created_at }
107
+ end
108
+
101
109
  # Act as a proxy for the base section configuration that actually
102
110
  # store the configurations.
103
111
  def method_missing(method_name, *args, &block)
@@ -32,10 +32,6 @@ module RailsAdmin
32
32
  parent.abstract_model.primary_key
33
33
  end
34
34
 
35
- register_instance_option :sort_reverse? do
36
- true # By default show latest first
37
- end
38
-
39
35
  register_instance_option :scopes do
40
36
  []
41
37
  end
@@ -51,6 +47,10 @@ module RailsAdmin
51
47
  def fields_for_table
52
48
  visible_fields.partition(&:sticky?).flatten
53
49
  end
50
+
51
+ register_deprecated_instance_option :sort_reverse do
52
+ ActiveSupport::Deprecation.warn('The sort_reverse configuration option is deprecated and has no effect.')
53
+ end
54
54
  end
55
55
  end
56
56
  end
@@ -269,9 +269,12 @@ module RailsAdmin
269
269
 
270
270
  def parent_controller=(name)
271
271
  @parent_controller = name
272
- if defined?(RailsAdmin::ApplicationController)
272
+
273
+ if defined?(RailsAdmin::ApplicationController) || defined?(RailsAdmin::MainController)
273
274
  RailsAdmin.send(:remove_const, :ApplicationController)
275
+ RailsAdmin.send(:remove_const, :MainController)
274
276
  load RailsAdmin::Engine.root.join('app/controllers/rails_admin/application_controller.rb')
277
+ load RailsAdmin::Engine.root.join('app/controllers/rails_admin/main_controller.rb')
275
278
  end
276
279
  end
277
280
 
@@ -1,8 +1,8 @@
1
1
  require 'kaminari'
2
2
  require 'nested_form'
3
- require 'rack-pjax'
4
3
  require 'rails'
5
4
  require 'rails_admin'
5
+ require 'turbo-rails'
6
6
 
7
7
  module RailsAdmin
8
8
  class Engine < Rails::Engine
@@ -22,10 +22,6 @@ module RailsAdmin
22
22
  end
23
23
  end
24
24
 
25
- initializer 'RailsAdmin setup middlewares' do |app|
26
- app.config.middleware.use Rack::Pjax
27
- end
28
-
29
25
  initializer 'RailsAdmin reload config in development' do |app|
30
26
  config.initializer_path = app.root.join('config/initializers/rails_admin.rb')
31
27
 
@@ -54,6 +50,7 @@ module RailsAdmin
54
50
  config.after_initialize do |app|
55
51
  has_session_store = app.config.middleware.to_a.any? do |m|
56
52
  m.klass.try(:<=, ActionDispatch::Session::AbstractStore) ||
53
+ m.klass.try(:<=, ActionDispatch::Session::AbstractSecureStore) ||
57
54
  m.klass.name =~ /^ActionDispatch::Session::/
58
55
  end
59
56
  loaded = app.config.middleware.to_a.map(&:name)