activeadmin 2.7.0 → 2.10.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 (214) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +166 -9
  3. data/CONTRIBUTING.md +7 -23
  4. data/README.md +3 -3
  5. data/app/assets/javascripts/active_admin/base.js +26 -21
  6. data/app/assets/stylesheets/active_admin/_base.scss +43 -37
  7. data/app/assets/stylesheets/active_admin/_forms.scss +3 -3
  8. data/app/assets/stylesheets/active_admin/{print.scss → _print.scss} +0 -0
  9. data/app/assets/stylesheets/active_admin/components/_comments.scss +2 -2
  10. data/app/javascript/active_admin/initializers/per-page.js +1 -1
  11. data/app/javascript/active_admin/lib/checkbox-toggler.js +3 -3
  12. data/app/javascript/active_admin/lib/dropdown-menu.js +1 -1
  13. data/app/javascript/active_admin/lib/modal-dialog.js +7 -7
  14. data/app/javascript/active_admin/lib/per-page.js +1 -1
  15. data/app/javascript/active_admin/lib/table-checkbox-toggler.js +1 -1
  16. data/app/views/active_admin/devise/mailer/reset_password_instructions.html.erb +1 -1
  17. data/app/views/active_admin/devise/mailer/unlock_instructions.html.erb +2 -2
  18. data/app/views/active_admin/devise/shared/_links.erb +1 -1
  19. data/app/views/active_admin/page/index.html.arb +1 -0
  20. data/app/views/active_admin/resource/edit.html.arb +1 -0
  21. data/app/views/active_admin/resource/index.html.arb +1 -0
  22. data/app/views/active_admin/resource/new.html.arb +1 -0
  23. data/app/views/active_admin/resource/show.html.arb +1 -0
  24. data/app/views/layouts/active_admin.html.arb +1 -0
  25. data/app/views/layouts/active_admin_logged_out.html.erb +2 -2
  26. data/config/locales/ar.yml +6 -6
  27. data/config/locales/es-MX.yml +2 -1
  28. data/config/locales/es.yml +2 -2
  29. data/config/locales/it.yml +18 -0
  30. data/config/locales/ja.yml +3 -3
  31. data/config/locales/ko.yml +1 -1
  32. data/config/locales/nl.yml +1 -1
  33. data/config/locales/ro.yml +3 -2
  34. data/docs/0-installation.md +1 -1
  35. data/docs/11-decorators.md +16 -5
  36. data/docs/5-forms.md +6 -1
  37. data/docs/6-show-pages.md +12 -0
  38. data/docs/8-custom-actions.md +1 -1
  39. data/docs/Gemfile +3 -2
  40. data/docs/Gemfile.lock +127 -93
  41. data/lib/active_admin/abstract_view_factory.rb +1 -0
  42. data/lib/active_admin/application.rb +17 -17
  43. data/lib/active_admin/application_settings.rb +4 -3
  44. data/lib/active_admin/asset_registration.rb +1 -0
  45. data/lib/active_admin/authorization_adapter.rb +4 -3
  46. data/lib/active_admin/base_controller/authorization.rb +14 -12
  47. data/lib/active_admin/base_controller/menu.rb +1 -0
  48. data/lib/active_admin/base_controller.rb +5 -5
  49. data/lib/active_admin/batch_actions/controller.rb +4 -3
  50. data/lib/active_admin/batch_actions/resource_extension.rb +10 -8
  51. data/lib/active_admin/batch_actions/views/batch_action_form.rb +4 -3
  52. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +7 -6
  53. data/lib/active_admin/batch_actions/views/selection_cells.rb +4 -3
  54. data/lib/active_admin/batch_actions.rb +1 -0
  55. data/lib/active_admin/callbacks.rb +1 -0
  56. data/lib/active_admin/cancan_adapter.rb +2 -1
  57. data/lib/active_admin/collection_decorator.rb +32 -0
  58. data/lib/active_admin/component.rb +1 -0
  59. data/lib/active_admin/controller_action.rb +1 -0
  60. data/lib/active_admin/csv_builder.rb +5 -4
  61. data/lib/active_admin/dependency.rb +13 -12
  62. data/lib/active_admin/deprecation.rb +1 -0
  63. data/lib/active_admin/devise.rb +6 -5
  64. data/lib/active_admin/dsl.rb +2 -1
  65. data/lib/active_admin/dynamic_setting.rb +1 -0
  66. data/lib/active_admin/dynamic_settings_node.rb +3 -2
  67. data/lib/active_admin/engine.rb +11 -8
  68. data/lib/active_admin/error.rb +1 -2
  69. data/lib/active_admin/filters/active.rb +2 -1
  70. data/lib/active_admin/filters/active_filter.rb +6 -6
  71. data/lib/active_admin/filters/active_sidebar.rb +4 -30
  72. data/lib/active_admin/filters/dsl.rb +1 -0
  73. data/lib/active_admin/filters/forms.rb +7 -6
  74. data/lib/active_admin/filters/formtastic_addons.rb +2 -6
  75. data/lib/active_admin/filters/resource_extension.rb +2 -1
  76. data/lib/active_admin/filters.rb +8 -7
  77. data/lib/active_admin/form_builder.rb +25 -20
  78. data/lib/active_admin/generators/boilerplate.rb +2 -1
  79. data/lib/active_admin/helpers/collection.rb +2 -0
  80. data/lib/active_admin/helpers/i18n.rb +1 -0
  81. data/lib/active_admin/helpers/optional_display.rb +3 -2
  82. data/lib/active_admin/helpers/routes/url_helpers.rb +1 -0
  83. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  84. data/lib/active_admin/inputs/datepicker_input.rb +2 -1
  85. data/lib/active_admin/inputs/filters/base/search_method_select.rb +5 -4
  86. data/lib/active_admin/inputs/filters/base.rb +2 -1
  87. data/lib/active_admin/inputs/filters/boolean_input.rb +2 -1
  88. data/lib/active_admin/inputs/filters/check_boxes_input.rb +2 -1
  89. data/lib/active_admin/inputs/filters/date_picker_input.rb +1 -0
  90. data/lib/active_admin/inputs/filters/date_range_input.rb +1 -0
  91. data/lib/active_admin/inputs/filters/numeric_input.rb +1 -0
  92. data/lib/active_admin/inputs/filters/select_input.rb +3 -2
  93. data/lib/active_admin/inputs/filters/string_input.rb +1 -0
  94. data/lib/active_admin/inputs/filters/text_input.rb +1 -0
  95. data/lib/active_admin/inputs.rb +1 -0
  96. data/lib/active_admin/localizers/resource_localizer.rb +4 -3
  97. data/lib/active_admin/localizers.rb +2 -1
  98. data/lib/active_admin/menu.rb +2 -1
  99. data/lib/active_admin/menu_collection.rb +1 -0
  100. data/lib/active_admin/menu_item.rb +8 -7
  101. data/lib/active_admin/namespace.rb +14 -13
  102. data/lib/active_admin/namespace_settings.rb +6 -5
  103. data/lib/active_admin/order_clause.rb +2 -1
  104. data/lib/active_admin/orm/active_record/comments/comment.rb +4 -3
  105. data/lib/active_admin/orm/active_record/comments/namespace_helper.rb +1 -0
  106. data/lib/active_admin/orm/active_record/comments/resource_helper.rb +1 -0
  107. data/lib/active_admin/orm/active_record/comments/show_page_helper.rb +1 -0
  108. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +20 -19
  109. data/lib/active_admin/orm/active_record/comments/views.rb +3 -2
  110. data/lib/active_admin/orm/active_record/comments.rb +20 -19
  111. data/lib/active_admin/orm/active_record.rb +2 -1
  112. data/lib/active_admin/orm/mongoid.rb +1 -0
  113. data/lib/active_admin/page.rb +2 -1
  114. data/lib/active_admin/page_controller.rb +1 -0
  115. data/lib/active_admin/page_dsl.rb +1 -0
  116. data/lib/active_admin/page_presenter.rb +1 -0
  117. data/lib/active_admin/pundit_adapter.rb +6 -5
  118. data/lib/active_admin/resource/action_items.rb +6 -5
  119. data/lib/active_admin/resource/attributes.rb +2 -1
  120. data/lib/active_admin/resource/belongs_to.rb +3 -2
  121. data/lib/active_admin/resource/controllers.rb +2 -1
  122. data/lib/active_admin/resource/includes.rb +1 -0
  123. data/lib/active_admin/resource/menu.rb +5 -4
  124. data/lib/active_admin/resource/model.rb +1 -0
  125. data/lib/active_admin/resource/naming.rb +5 -4
  126. data/lib/active_admin/resource/ordering.rb +1 -0
  127. data/lib/active_admin/resource/page_presenters.rb +1 -0
  128. data/lib/active_admin/resource/pagination.rb +1 -0
  129. data/lib/active_admin/resource/routes.rb +6 -7
  130. data/lib/active_admin/resource/scope_to.rb +8 -7
  131. data/lib/active_admin/resource/scopes.rb +1 -0
  132. data/lib/active_admin/resource/sidebars.rb +2 -1
  133. data/lib/active_admin/resource.rb +18 -17
  134. data/lib/active_admin/resource_collection.rb +1 -0
  135. data/lib/active_admin/resource_controller/action_builder.rb +1 -0
  136. data/lib/active_admin/resource_controller/data_access.rb +4 -3
  137. data/lib/active_admin/resource_controller/decorators.rb +7 -28
  138. data/lib/active_admin/resource_controller/polymorphic_routes.rb +1 -0
  139. data/lib/active_admin/resource_controller/resource_class_methods.rb +1 -0
  140. data/lib/active_admin/resource_controller/scoping.rb +1 -0
  141. data/lib/active_admin/resource_controller/sidebars.rb +1 -0
  142. data/lib/active_admin/resource_controller/streaming.rb +8 -6
  143. data/lib/active_admin/resource_controller.rb +13 -11
  144. data/lib/active_admin/resource_dsl.rb +11 -25
  145. data/lib/active_admin/router.rb +1 -0
  146. data/lib/active_admin/scope.rb +7 -6
  147. data/lib/active_admin/settings_node.rb +1 -0
  148. data/lib/active_admin/sidebar_section.rb +1 -0
  149. data/lib/active_admin/version.rb +2 -1
  150. data/lib/active_admin/view_factory.rb +18 -17
  151. data/lib/active_admin/view_helpers/active_admin_application_helper.rb +1 -0
  152. data/lib/active_admin/view_helpers/auto_link_helper.rb +1 -0
  153. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +4 -3
  154. data/lib/active_admin/view_helpers/display_helper.rb +15 -7
  155. data/lib/active_admin/view_helpers/download_format_links_helper.rb +2 -1
  156. data/lib/active_admin/view_helpers/fields_for.rb +3 -2
  157. data/lib/active_admin/view_helpers/flash_helper.rb +1 -0
  158. data/lib/active_admin/view_helpers/form_helper.rb +1 -0
  159. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +1 -0
  160. data/lib/active_admin/view_helpers/scope_name_helper.rb +1 -0
  161. data/lib/active_admin/view_helpers/sidebar_helper.rb +1 -0
  162. data/lib/active_admin/view_helpers/title_helper.rb +1 -0
  163. data/lib/active_admin/view_helpers/view_factory_helper.rb +1 -0
  164. data/lib/active_admin/view_helpers.rb +2 -1
  165. data/lib/active_admin/views/action_items.rb +1 -0
  166. data/lib/active_admin/views/components/active_admin_form.rb +7 -6
  167. data/lib/active_admin/views/components/active_filters_sidebar_content.rb +59 -0
  168. data/lib/active_admin/views/components/attributes_table.rb +6 -5
  169. data/lib/active_admin/views/components/blank_slate.rb +2 -1
  170. data/lib/active_admin/views/components/columns.rb +1 -0
  171. data/lib/active_admin/views/components/dropdown_menu.rb +7 -9
  172. data/lib/active_admin/views/components/index_list.rb +4 -3
  173. data/lib/active_admin/views/components/menu.rb +2 -1
  174. data/lib/active_admin/views/components/menu_item.rb +5 -4
  175. data/lib/active_admin/views/components/paginated_collection.rb +19 -18
  176. data/lib/active_admin/views/components/panel.rb +2 -1
  177. data/lib/active_admin/views/components/scopes.rb +6 -5
  178. data/lib/active_admin/views/components/sidebar.rb +1 -0
  179. data/lib/active_admin/views/components/sidebar_section.rb +1 -0
  180. data/lib/active_admin/views/components/site_title.rb +2 -1
  181. data/lib/active_admin/views/components/status_tag.rb +12 -11
  182. data/lib/active_admin/views/components/table_for.rb +17 -16
  183. data/lib/active_admin/views/components/tabs.rb +4 -3
  184. data/lib/active_admin/views/components/unsupported_browser.rb +1 -0
  185. data/lib/active_admin/views/footer.rb +3 -1
  186. data/lib/active_admin/views/header.rb +3 -2
  187. data/lib/active_admin/views/index_as_block.rb +1 -0
  188. data/lib/active_admin/views/index_as_blog.rb +2 -1
  189. data/lib/active_admin/views/index_as_grid.rb +2 -1
  190. data/lib/active_admin/views/index_as_table.rb +17 -16
  191. data/lib/active_admin/views/pages/base.rb +11 -8
  192. data/lib/active_admin/views/pages/form.rb +1 -0
  193. data/lib/active_admin/views/pages/index.rb +15 -13
  194. data/lib/active_admin/views/pages/layout.rb +1 -0
  195. data/lib/active_admin/views/pages/page.rb +1 -0
  196. data/lib/active_admin/views/pages/show.rb +1 -0
  197. data/lib/active_admin/views/tabbed_navigation.rb +3 -2
  198. data/lib/active_admin/views/title_bar.rb +2 -1
  199. data/lib/active_admin/views.rb +2 -1
  200. data/lib/active_admin.rb +61 -61
  201. data/lib/activeadmin.rb +2 -1
  202. data/lib/generators/active_admin/assets/assets_generator.rb +3 -2
  203. data/lib/generators/active_admin/assets/templates/active_admin.scss +2 -2
  204. data/lib/generators/active_admin/devise/devise_generator.rb +6 -5
  205. data/lib/generators/active_admin/install/install_generator.rb +8 -7
  206. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +2 -2
  207. data/lib/generators/active_admin/install/templates/dashboard.rb +1 -0
  208. data/lib/generators/active_admin/page/page_generator.rb +2 -1
  209. data/lib/generators/active_admin/page/templates/page.rb +1 -0
  210. data/lib/generators/active_admin/resource/resource_generator.rb +4 -3
  211. data/lib/generators/active_admin/webpacker/templates/active_admin.scss +2 -2
  212. data/lib/generators/active_admin/webpacker/webpacker_generator.rb +8 -7
  213. data/lib/ransack_ext.rb +9 -8
  214. metadata +24 -50
@@ -6,7 +6,7 @@ class CheckboxToggler {
6
6
  this._bind();
7
7
  }
8
8
 
9
- option(key, value) {
9
+ option(_key, _value) {
10
10
  }
11
11
 
12
12
  _init() {
@@ -30,7 +30,7 @@ class CheckboxToggler {
30
30
  this.toggle_all_checkbox.change(() => this._didChangeToggleAllCheckbox());
31
31
  }
32
32
 
33
- _didChangeCheckbox(checkbox){
33
+ _didChangeCheckbox(_checkbox){
34
34
  const numChecked = this.checkboxes.filter(':checked').length;
35
35
 
36
36
  const allChecked = numChecked === this.checkboxes.length;
@@ -44,6 +44,6 @@ class CheckboxToggler {
44
44
  this.checkboxes.prop({ checked: setting });
45
45
  return setting;
46
46
  }
47
- };
47
+ }
48
48
 
49
49
  export default CheckboxToggler;
@@ -111,6 +111,6 @@ class DropdownMenu {
111
111
  this.$nipple.css('left', menu_center - nipple_center);
112
112
  }
113
113
  }
114
- };
114
+ }
115
115
 
116
116
  export default DropdownMenu;
@@ -1,14 +1,14 @@
1
1
  function ModalDialog(message, inputs, callback){
2
2
  let html = `<form id="dialog_confirm" title="${message}"><ul>`;
3
3
  for (let name in inputs) {
4
- var elem, opts, wrapper;
4
+ var opts, wrapper;
5
5
  let type = inputs[name];
6
6
  if (/^(datepicker|checkbox|text|number)$/.test(type)) {
7
7
  wrapper = 'input';
8
8
  } else if (type === 'textarea') {
9
9
  wrapper = 'textarea';
10
10
  } else if ($.isArray(type)) {
11
- [wrapper, elem, opts, type] = ['select', 'option', type, ''];
11
+ [wrapper, opts, type] = ['select', type, ''];
12
12
  } else {
13
13
  throw new Error(`Unsupported input type: {${name}: ${type}}`);
14
14
  }
@@ -21,20 +21,20 @@ function ModalDialog(message, inputs, callback){
21
21
  const result = [];
22
22
 
23
23
  opts.forEach(v => {
24
- const $elem = $(`<${elem}/>`);
24
+ const $elem = $('<option></option>');
25
25
  if ($.isArray(v)) {
26
26
  $elem.text(v[0]).val(v[1]);
27
27
  } else {
28
28
  $elem.text(v);
29
29
  }
30
- result.push($elem.wrap('<div>').parent().html());
30
+ result.push($elem.wrap('<div></div>').parent().html());
31
31
  });
32
32
 
33
33
  return result;
34
34
  })()).join('') : '') +
35
35
  `</${wrapper}>` +
36
36
  "</li>";
37
- [wrapper, elem, opts, type, klass] = []; // unset any temporary variables
37
+ [wrapper, opts, type, klass] = []; // unset any temporary variables
38
38
  }
39
39
 
40
40
  html += "</ul></form>";
@@ -44,7 +44,7 @@ function ModalDialog(message, inputs, callback){
44
44
 
45
45
  form.dialog({
46
46
  modal: true,
47
- open(event, ui) {
47
+ open(_event, _ui) {
48
48
  $('body').trigger('modal_dialog:after_open', [form]);
49
49
  },
50
50
  dialogClass: 'active_admin_dialog',
@@ -58,6 +58,6 @@ function ModalDialog(message, inputs, callback){
58
58
  }
59
59
  }
60
60
  });
61
- };
61
+ }
62
62
 
63
63
  export default ModalDialog;
@@ -33,6 +33,6 @@ class PerPage {
33
33
  }
34
34
  })
35
35
  }
36
- };
36
+ }
37
37
 
38
38
  export default PerPage;
@@ -33,6 +33,6 @@ class TableCheckboxToggler extends CheckboxToggler {
33
33
  .find(':checkbox')
34
34
  .click();
35
35
  }
36
- };
36
+ }
37
37
 
38
38
  export default TableCheckboxToggler;
@@ -2,7 +2,7 @@
2
2
 
3
3
  <p>Someone has requested a link to change your password, and you can do this through the link below.</p>
4
4
 
5
- <p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @resource.reset_password_token) %></p>
5
+ <p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token) %></p>
6
6
 
7
7
  <p>If you didn't request this, please ignore this email.</p>
8
8
  <p>Your password won't change until you access the link above and create a new one.</p>
@@ -1,7 +1,7 @@
1
1
  <p>Hello <%= @resource.email %>!</p>
2
2
 
3
- <p>Your account has been locked due to an excessive amount of unsuccessful sign in attempts.</p>
3
+ <p>Your account has been locked due to an excessive number of unsuccessful sign in attempts.</p>
4
4
 
5
5
  <p>Click the link below to unlock your account:</p>
6
6
 
7
- <p><%= link_to 'Unlock my account', unlock_url(@resource, unlock_token: @resource.unlock_token) %></p>
7
+ <p><%= link_to 'Unlock my account', unlock_url(@resource, unlock_token: @token) %></p>
@@ -27,7 +27,7 @@
27
27
  <%- if devise_mapping.omniauthable? %>
28
28
  <%- resource_class.omniauth_providers.each do |provider| %>
29
29
  <%= link_to t('active_admin.devise.links.sign_in_with_omniauth_provider', provider: provider.to_s.titleize),
30
- omniauth_authorize_path(resource_name, provider) %>
30
+ omniauth_authorize_path(resource_name, provider), method: :post %>
31
31
  <br>
32
32
  <% end -%>
33
33
  <% end -%>
@@ -1 +1,2 @@
1
+ # frozen_string_literal: true
1
2
  insert_tag active_admin_application.view_factory["page"]
@@ -1 +1,2 @@
1
+ # frozen_string_literal: true
1
2
  insert_tag renderer_for(:edit)
@@ -1 +1,2 @@
1
+ # frozen_string_literal: true
1
2
  insert_tag renderer_for(:index)
@@ -1 +1,2 @@
1
+ # frozen_string_literal: true
1
2
  insert_tag renderer_for(:new)
@@ -1 +1,2 @@
1
+ # frozen_string_literal: true
1
2
  insert_tag renderer_for(:show)
@@ -1 +1,2 @@
1
+ # frozen_string_literal: true
1
2
  insert_tag view_factory.layout
@@ -7,9 +7,9 @@
7
7
 
8
8
  <% ActiveAdmin.application.stylesheets.each do |style, options| %>
9
9
  <% if ActiveAdmin.application.use_webpacker %>
10
- <%= stylesheet_pack_tag style, options %>
10
+ <%= stylesheet_pack_tag style, **options %>
11
11
  <% else %>
12
- <%= stylesheet_link_tag style, options %>
12
+ <%= stylesheet_link_tag style, **options %>
13
13
  <% end %>
14
14
  <% end %>
15
15
  <% ActiveAdmin.application.javascripts.each do |path| %>
@@ -8,7 +8,7 @@ ar:
8
8
  edit: "تعديل"
9
9
  delete: "حذف"
10
10
  delete_confirmation: "هل تريد تأكيد الحذف؟"
11
- new_model: "جديد %{model}"
11
+ new_model: "%{model} جديد"
12
12
  edit_model: "تعديل %{model}"
13
13
  delete_model: "حذف %{model}"
14
14
  details: "تفاصيل %{model}"
@@ -97,12 +97,12 @@ ar:
97
97
  password:
98
98
  title: "كلمة المرور"
99
99
  sign_up:
100
- title: "تسجيل الدخول"
101
- submit: "تسجيل الدخول"
100
+ title: "تسجيل"
101
+ submit: "تسجيل"
102
102
  login:
103
- title: "دخول"
103
+ title: "تسجيل الدخول"
104
104
  remember_me: "تذكرني"
105
- submit: "تسحيل"
105
+ submit: "تسجيل الدخول"
106
106
  reset_password:
107
107
  title: "هل نسيت كلمة المرور؟"
108
108
  submit: "استرجاع كلمة المرور"
@@ -117,7 +117,7 @@ ar:
117
117
  submit: "إعادة ارسال تعليمات التأكيد"
118
118
  links:
119
119
  sign_up: "التسجيل"
120
- sign_in: "دخول"
120
+ sign_in: "تسجيل الدخول"
121
121
  forgot_your_password: "هل نسيت كلمة المرور؟"
122
122
  sign_in_with_omniauth_provider: "تسجيل الدخول بـ %{provider}"
123
123
  resend_unlock_instructions: "إعادة إرسال تعليمات تنشيط الحساب"
@@ -86,7 +86,8 @@ es-MX:
86
86
  title: "Cambie su contraseña"
87
87
  submit: "Cambiar mi contraseña"
88
88
  links:
89
- sign_in: "Registrarse"
89
+ sign_in: "Iniciar Sesión"
90
+ sign_up: "Registrarse"
90
91
  forgot_your_password: "¿Olvidó su contraseña?"
91
92
  sign_in_with_omniauth_provider: "Conéctate con %{provider}"
92
93
  index_list:
@@ -143,8 +143,8 @@ es:
143
143
  title: "Reenviar instrucciones de confirmación"
144
144
  submit: "Reenviar instrucciones de confirmación"
145
145
  links:
146
- sign_up: "Ingresar"
147
- sign_in: "Registrarse"
146
+ sign_up: "Registrarse"
147
+ sign_in: "Iniciar Sesión"
148
148
  forgot_your_password: "¿Olvidó su contraseña?"
149
149
  sign_in_with_omniauth_provider: "Conéctate con %{provider}"
150
150
  resend_unlock_instructions: "Reenviar instrucciones de desbloqueo"
@@ -1,4 +1,20 @@
1
1
  it:
2
+ activerecord:
3
+ models:
4
+ comment:
5
+ one: "Commento"
6
+ other: "Commenti"
7
+ active_admin/comment:
8
+ one: "Commento"
9
+ other: "Commenti"
10
+ attributes:
11
+ active_admin/comment:
12
+ author_type: "Tipo di Autore"
13
+ body: "Corpo"
14
+ created_at: "Creato il"
15
+ namespace: "Namespace"
16
+ resource_type: "Tipo di risorsa"
17
+ updated_at: "Aggiornato il"
2
18
  active_admin:
3
19
  dashboard: Dashboard
4
20
  dashboard_welcome:
@@ -37,6 +53,8 @@ it:
37
53
  lteq_datetime: "Minore o uguale a"
38
54
  from: "Da"
39
55
  to: "A"
56
+ scopes:
57
+ all: "Tutti"
40
58
  search_status:
41
59
  headline: "Situazione filtri:"
42
60
  current_scope: "Contesto selezionato:"
@@ -8,7 +8,7 @@ ja:
8
8
  edit: "編集"
9
9
  delete: "削除"
10
10
  delete_confirmation: "本当に削除しますか?"
11
- create_another: "%{model} を追加する"
11
+ create_another: "%{model} を続けて作成する"
12
12
  new_model: "%{model} を作成する"
13
13
  edit_model: "%{model} を編集する"
14
14
  delete_model: "%{model} を削除する"
@@ -18,7 +18,7 @@ ja:
18
18
  previous: "前"
19
19
  next: "次"
20
20
  download: "ダウンロード:"
21
- has_many_new: "新規に %{model} を追加する"
21
+ has_many_new: "%{model} を追加する"
22
22
  has_many_delete: "削除する"
23
23
  has_many_remove: "削除する"
24
24
  filters:
@@ -26,7 +26,7 @@ ja:
26
26
  filter: "絞り込む"
27
27
  clear: "条件を削除する"
28
28
  predicates:
29
- contains: "含まれています"
29
+ contains: "を含む"
30
30
  equals: "等しい"
31
31
  starts_with: "で始まる"
32
32
  ends_with: "で終わる"
@@ -69,7 +69,7 @@ ko:
69
69
  one: "성공적으로 1개 %{model}을/를 삭제하였습니다"
70
70
  other: "성공적으로 %{count}개의 %{plural_model}을/를 삭제하였습니다"
71
71
  selection_toggle_explanation: "(선택 항목 바꾸기)"
72
- action_label: "%{title} 선택됨"
72
+ action_label: "선택한 항목 %{title}"
73
73
  labels:
74
74
  destroy: "삭제"
75
75
  comments:
@@ -114,7 +114,7 @@ nl:
114
114
  submit: "inloggen"
115
115
  reset_password:
116
116
  title: "Wachtwoord vergeten?"
117
- submit: "Reset mijn wachtwoord vergeten"
117
+ submit: "Reset mijn wachtwoord"
118
118
  change_password:
119
119
  title: "Wijzig uw wachtwoord"
120
120
  submit: "Mijn wachtwoord wijzigen"
@@ -47,8 +47,9 @@ ro:
47
47
  multiple: "Sunt afisate <b>%{from}&nbsp;-&nbsp;%{to}</b> din <b>%{total}</b> inregistrari"
48
48
  multiple_without_total: "Sunt afisate <b>%{from}&nbsp;-&nbsp;%{to}</b>"
49
49
  entry:
50
- one: "inregistrare"
51
- other: "inregistrari"
50
+ one: "înregistrăre"
51
+ few: "înregistrări"
52
+ other: "înregistrări"
52
53
  any: "Oricare"
53
54
  blank_slate:
54
55
  content: "Momentan nu exista %{resource_name}."
@@ -29,7 +29,7 @@ After installing the gem, you need to run the generator. Here are your options:
29
29
  rails g active_admin:install --skip-users
30
30
  ```
31
31
 
32
- * If you want to use an existing user class, provide it as an argument:
32
+ * If you want to customize the name of the generated user class, or if you want to use an existing user class, provide the class name as an argument:
33
33
 
34
34
  ```sh
35
35
  rails g active_admin:install User
@@ -8,11 +8,6 @@ Active Admin allows you to use the decorator pattern to provide view-specific
8
8
  versions of a resource. [Draper](https://github.com/drapergem/draper) is
9
9
  recommended but not required.
10
10
 
11
- To use decorator support without Draper, your decorator must support a variety
12
- of collection methods to support pagination, filtering, etc. See
13
- [this github issue discussion](https://github.com/activeadmin/activeadmin/issues/3600)
14
- and [this gem](https://github.com/kiote/activeadmin-poro-decorator) for more details.
15
-
16
11
  ## Example usage
17
12
 
18
13
  ```ruby
@@ -42,6 +37,22 @@ ActiveAdmin.register Post do
42
37
  end
43
38
  ```
44
39
 
40
+ You can pass any decorator class as an argument to `decorate_with`
41
+ as long as it accepts the record to be decorated as a parameter in
42
+ the initializer, and responds to all the necessary methods.
43
+
44
+ ```ruby
45
+ # app/decorators/post_decorator.rb
46
+ class PostDecorator
47
+ attr_reader :post
48
+ delegate_missing_to :post
49
+
50
+ def initialize(post)
51
+ @post = post
52
+ end
53
+ end
54
+ ```
55
+
45
56
  ## Forms
46
57
 
47
58
  By default, ActiveAdmin does *not* decorate the resource used to render forms.
data/docs/5-forms.md CHANGED
@@ -110,8 +110,9 @@ ActiveAdmin.register Post do
110
110
  end
111
111
  end
112
112
  f.inputs do
113
- f.has_many :comment,
113
+ f.has_many :comments,
114
114
  new_record: 'Leave Comment',
115
+ remove_record: 'Remove Comment',
115
116
  allow_destroy: -> (c) { c.author?(current_admin_user) } do |b|
116
117
  b.input :body
117
118
  end
@@ -139,6 +140,10 @@ The `:new_record` option controls the visibility of the new record button (shown
139
140
  by default). If you pass a string, it will be used as the text for the new
140
141
  record button.
141
142
 
143
+ The `:remove_record` option controls the text of the remove button (shown after
144
+ the new record button is pressed). If you pass a string, it will be used as the
145
+ text for the remove button.
146
+
142
147
  The `:sortable` option adds a hidden field and will enable drag & drop sorting
143
148
  of the children. It expects the name of the column that will store the index of
144
149
  each child.
data/docs/6-show-pages.md CHANGED
@@ -79,3 +79,15 @@ ActiveAdmin.register Book do
79
79
  end
80
80
  end
81
81
  ```
82
+
83
+ If you want to keep the default show data, but add something extra to it:
84
+
85
+ ```ruby
86
+ show do
87
+ div do
88
+ h3 'Some custom charts about this object'
89
+ render partial: 'charts'
90
+ end
91
+ default_main_content
92
+ end
93
+ ```
@@ -62,7 +62,7 @@ HTTP verbs. In that case, this is the suggested approach:
62
62
  ```ruby
63
63
  member_action :foo, method: [:get, :post] do
64
64
  if request.post?
65
- resource.update_attributes! foo: params[:foo] || {}
65
+ resource.update! foo: params[:foo] || {}
66
66
  head :ok
67
67
  else
68
68
  render :foo
data/docs/Gemfile CHANGED
@@ -1,3 +1,4 @@
1
- source 'https://rubygems.org'
1
+ # frozen_string_literal: true
2
+ source "https://rubygems.org"
2
3
 
3
- gem 'github-pages'
4
+ gem "github-pages"