activeadmin 1.4.3 → 2.3.1

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 (225) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +170 -11
  3. data/CONTRIBUTING.md +14 -15
  4. data/README.md +41 -8
  5. data/app/assets/javascripts/active_admin/base.es6 +23 -0
  6. data/app/assets/javascripts/active_admin/ext/jquery-ui.es6 +7 -0
  7. data/app/assets/javascripts/active_admin/ext/jquery.es6 +9 -0
  8. data/app/assets/javascripts/active_admin/initializers/datepicker.es6 +16 -0
  9. data/app/assets/javascripts/active_admin/initializers/filters.es6 +45 -0
  10. data/app/assets/javascripts/active_admin/initializers/tabs.es6 +6 -0
  11. data/app/assets/javascripts/active_admin/lib/active_admin.es6 +41 -0
  12. data/app/assets/javascripts/active_admin/lib/batch_actions.es6 +59 -0
  13. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.es6 +49 -0
  14. data/app/assets/javascripts/active_admin/lib/dropdown-menu.es6 +123 -0
  15. data/app/assets/javascripts/active_admin/lib/has_many.es6 +95 -0
  16. data/app/assets/javascripts/active_admin/lib/modal_dialog.es6 +61 -0
  17. data/app/assets/javascripts/active_admin/lib/per_page.es6 +47 -0
  18. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 +36 -0
  19. data/app/assets/stylesheets/active_admin/_forms.scss +2 -14
  20. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -5
  21. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  22. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  23. data/app/views/active_admin/devise/confirmations/new.html.erb +1 -1
  24. data/app/views/active_admin/devise/passwords/edit.html.erb +1 -1
  25. data/app/views/active_admin/devise/passwords/new.html.erb +1 -1
  26. data/app/views/active_admin/devise/registrations/new.html.erb +1 -2
  27. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  28. data/app/views/active_admin/devise/unlocks/new.html.erb +1 -1
  29. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  30. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  31. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  32. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  33. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  34. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  35. data/app/views/layouts/active_admin_logged_out.html.erb +1 -1
  36. data/config/locales/ar.yml +3 -2
  37. data/config/locales/bg.yml +1 -1
  38. data/config/locales/bs.yml +1 -0
  39. data/config/locales/ca.yml +1 -1
  40. data/config/locales/cs.yml +1 -0
  41. data/config/locales/da.yml +1 -0
  42. data/config/locales/de-CH.yml +1 -0
  43. data/config/locales/de.yml +1 -0
  44. data/config/locales/el.yml +1 -0
  45. data/config/locales/en-CA.yml +1 -0
  46. data/config/locales/en-GB.yml +1 -0
  47. data/config/locales/en.yml +1 -0
  48. data/config/locales/eo.yml +1 -0
  49. data/config/locales/es-MX.yml +1 -0
  50. data/config/locales/es.yml +1 -0
  51. data/config/locales/fa.yml +1 -0
  52. data/config/locales/fi.yml +1 -0
  53. data/config/locales/fr.yml +2 -1
  54. data/config/locales/he.yml +1 -1
  55. data/config/locales/hr.yml +1 -0
  56. data/config/locales/hu.yml +5 -0
  57. data/config/locales/id.yml +1 -0
  58. data/config/locales/it.yml +1 -0
  59. data/config/locales/ja.yml +1 -0
  60. data/config/locales/ko.yml +1 -0
  61. data/config/locales/lt.yml +3 -2
  62. data/config/locales/lv.yml +1 -0
  63. data/config/locales/mk.yml +134 -0
  64. data/config/locales/nb.yml +1 -0
  65. data/config/locales/nl.yml +1 -0
  66. data/config/locales/pl.yml +1 -0
  67. data/config/locales/pt-BR.yml +1 -0
  68. data/config/locales/pt-PT.yml +1 -0
  69. data/config/locales/ro.yml +1 -0
  70. data/config/locales/ru.yml +1 -0
  71. data/config/locales/sk.yml +1 -0
  72. data/config/locales/sv-SE.yml +1 -0
  73. data/config/locales/tr.yml +1 -0
  74. data/config/locales/uk.yml +3 -0
  75. data/config/locales/vi.yml +1 -0
  76. data/config/locales/zh-CN.yml +1 -0
  77. data/config/locales/zh-TW.yml +1 -0
  78. data/docs/0-installation.md +2 -2
  79. data/docs/12-arbre-components.md +13 -0
  80. data/docs/13-authorization-adapter.md +6 -6
  81. data/docs/2-resource-customization.md +1 -1
  82. data/docs/3-index-pages/index-as-table.md +7 -0
  83. data/docs/CNAME +1 -1
  84. data/docs/Gemfile +0 -1
  85. data/docs/Gemfile.lock +3 -4
  86. data/docs/_config.yml +2 -0
  87. data/docs/_includes/top-menu.html +2 -2
  88. data/docs/index.html +109 -8
  89. data/docs/stylesheets/main.css +29 -0
  90. data/lib/active_admin.rb +10 -4
  91. data/lib/active_admin/application.rb +11 -18
  92. data/lib/active_admin/application_settings.rb +3 -0
  93. data/lib/active_admin/asset_registration.rb +0 -8
  94. data/lib/active_admin/base_controller.rb +6 -6
  95. data/lib/active_admin/base_controller/authorization.rb +3 -4
  96. data/lib/active_admin/batch_actions/controller.rb +1 -1
  97. data/lib/active_admin/batch_actions/resource_extension.rb +9 -5
  98. data/lib/active_admin/callbacks.rb +1 -1
  99. data/lib/active_admin/controller_action.rb +2 -1
  100. data/lib/active_admin/csv_builder.rb +4 -3
  101. data/lib/active_admin/dependency.rb +3 -75
  102. data/lib/active_admin/dsl.rb +1 -8
  103. data/lib/active_admin/error.rb +4 -2
  104. data/lib/active_admin/filters/active_filter.rb +5 -4
  105. data/lib/active_admin/filters/active_sidebar.rb +5 -1
  106. data/lib/active_admin/filters/forms.rb +2 -2
  107. data/lib/active_admin/filters/formtastic_addons.rb +1 -1
  108. data/lib/active_admin/filters/resource_extension.rb +3 -3
  109. data/lib/active_admin/form_builder.rb +3 -3
  110. data/lib/active_admin/generators/boilerplate.rb +12 -4
  111. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  112. data/lib/active_admin/inputs/datepicker_input.rb +1 -1
  113. data/lib/active_admin/inputs/filters/base/search_method_select.rb +2 -2
  114. data/lib/active_admin/menu_item.rb +1 -1
  115. data/lib/active_admin/namespace.rb +2 -2
  116. data/lib/active_admin/namespace_settings.rb +7 -4
  117. data/lib/active_admin/orm/active_record/comments.rb +4 -4
  118. data/lib/active_admin/orm/active_record/comments/comment.rb +2 -2
  119. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +10 -5
  120. data/lib/active_admin/page_dsl.rb +1 -1
  121. data/lib/active_admin/page_presenter.rb +2 -1
  122. data/lib/active_admin/pundit_adapter.rb +18 -5
  123. data/lib/active_admin/resource.rb +17 -3
  124. data/lib/active_admin/resource/action_items.rb +1 -1
  125. data/lib/active_admin/resource/attributes.rb +7 -4
  126. data/lib/active_admin/resource/belongs_to.rb +6 -1
  127. data/lib/active_admin/resource/menu.rb +3 -3
  128. data/lib/active_admin/resource/model.rb +15 -0
  129. data/lib/active_admin/resource/naming.rb +3 -3
  130. data/lib/active_admin/resource/routes.rb +20 -7
  131. data/lib/active_admin/resource/scopes.rb +3 -3
  132. data/lib/active_admin/resource/sidebars.rb +1 -1
  133. data/lib/active_admin/resource_collection.rb +2 -2
  134. data/lib/active_admin/resource_controller.rb +2 -0
  135. data/lib/active_admin/resource_controller/action_builder.rb +10 -0
  136. data/lib/active_admin/resource_controller/polymorphic_routes.rb +36 -0
  137. data/lib/active_admin/resource_controller/resource_class_methods.rb +2 -0
  138. data/lib/active_admin/resource_dsl.rb +6 -4
  139. data/lib/active_admin/router.rb +3 -2
  140. data/lib/active_admin/scope.rb +11 -7
  141. data/lib/active_admin/settings_node.rb +1 -1
  142. data/lib/active_admin/sidebar_section.rb +3 -1
  143. data/lib/active_admin/version.rb +1 -1
  144. data/lib/active_admin/view_helpers.rb +1 -1
  145. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +2 -2
  146. data/lib/active_admin/view_helpers/display_helper.rb +13 -4
  147. data/lib/active_admin/view_helpers/download_format_links_helper.rb +1 -0
  148. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +2 -0
  149. data/lib/active_admin/views.rb +1 -1
  150. data/lib/active_admin/views/components/active_admin_form.rb +7 -1
  151. data/lib/active_admin/views/components/attributes_table.rb +3 -3
  152. data/lib/active_admin/views/components/paginated_collection.rb +2 -2
  153. data/lib/active_admin/views/components/sidebar_section.rb +0 -3
  154. data/lib/active_admin/views/components/status_tag.rb +6 -19
  155. data/lib/active_admin/views/components/table_for.rb +2 -2
  156. data/lib/active_admin/views/components/tabs.rb +11 -2
  157. data/lib/active_admin/views/footer.rb +1 -1
  158. data/lib/active_admin/views/index_as_table.rb +12 -4
  159. data/lib/active_admin/views/pages/base.rb +3 -0
  160. data/lib/generators/active_admin/assets/assets_generator.rb +2 -2
  161. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  162. data/lib/generators/active_admin/install/install_generator.rb +6 -2
  163. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +24 -2
  164. data/lib/generators/active_admin/install/templates/dashboard.rb +2 -3
  165. data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +1 -15
  166. data/lib/generators/active_admin/page/page_generator.rb +1 -1
  167. data/lib/generators/active_admin/resource/resource_generator.rb +1 -1
  168. data/lib/generators/active_admin/resource/templates/admin.rb.erb +40 -37
  169. data/lib/ransack_ext.rb +3 -3
  170. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  171. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  172. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  173. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +274 -283
  174. metadata +117 -98
  175. data/.circleci/config.yml +0 -572
  176. data/.github/ISSUE_TEMPLATE.md +0 -20
  177. data/.gitignore +0 -16
  178. data/.mdlrc +0 -1
  179. data/.rspec +0 -1
  180. data/.rspec_parallel +0 -2
  181. data/.rubocop.yml +0 -99
  182. data/.simplecov +0 -9
  183. data/.yardopts +0 -7
  184. data/Gemfile +0 -30
  185. data/Gemfile.common +0 -26
  186. data/Gemfile.lock +0 -433
  187. data/Rakefile +0 -24
  188. data/activeadmin.gemspec +0 -32
  189. data/app/assets/javascripts/active_admin/base.js.coffee +0 -13
  190. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  191. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  192. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -11
  193. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -14
  194. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -26
  195. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -7
  196. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -42
  197. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -46
  198. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -104
  199. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  200. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  201. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  202. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -46
  203. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -22
  204. data/bin/install_chromedriver.sh +0 -17
  205. data/config/i18n-tasks.yml +0 -26
  206. data/config/mdl_style.rb +0 -11
  207. data/cucumber.yml +0 -7
  208. data/gemfiles/rails_42.gemfile +0 -10
  209. data/gemfiles/rails_42.gemfile.lock +0 -339
  210. data/gemfiles/rails_50.gemfile +0 -10
  211. data/gemfiles/rails_50.gemfile.lock +0 -353
  212. data/gemfiles/rails_51.gemfile +0 -10
  213. data/gemfiles/rails_51.gemfile.lock +0 -353
  214. data/lib/active_admin/event.rb +0 -24
  215. data/lib/active_admin/helpers/output_safety_helper.rb +0 -35
  216. data/lib/active_admin/reloader.rb +0 -25
  217. data/lib/bug_report_templates/active_admin_master.rb +0 -111
  218. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  219. data/tasks/application_generator.rb +0 -50
  220. data/tasks/docs.rake +0 -64
  221. data/tasks/gemfiles.rake +0 -8
  222. data/tasks/lint.rake +0 -110
  223. data/tasks/local.rake +0 -27
  224. data/tasks/release.rake +0 -6
  225. data/tasks/test.rake +0 -42
@@ -0,0 +1,61 @@
1
+ ActiveAdmin.modal_dialog = function(message, inputs, callback){
2
+ let html = `<form id="dialog_confirm" title="${message}"><ul>`;
3
+ for (let name in inputs) {
4
+ var elem, opts, wrapper;
5
+ let type = inputs[name];
6
+ if (/^(datepicker|checkbox|text|number)$/.test(type)) {
7
+ wrapper = 'input';
8
+ } else if (type === 'textarea') {
9
+ wrapper = 'textarea';
10
+ } else if ($.isArray(type)) {
11
+ [wrapper, elem, opts, type] = ['select', 'option', type, ''];
12
+ } else {
13
+ throw new Error(`Unsupported input type: {${name}: ${type}}`);
14
+ }
15
+
16
+ let klass = type === 'datepicker' ? type : '';
17
+ html += `<li>
18
+ <label>${name.charAt(0).toUpperCase() + name.slice(1)}</label>
19
+ <${wrapper} name="${name}" class="${klass}" type="${type}">` +
20
+ (opts ? ((() => {
21
+ const result = [];
22
+
23
+ opts.forEach(v => {
24
+ const $elem = $(`<${elem}/>`);
25
+ if ($.isArray(v)) {
26
+ $elem.text(v[0]).val(v[1]);
27
+ } else {
28
+ $elem.text(v);
29
+ }
30
+ result.push($elem.wrap('<div>').parent().html());
31
+ });
32
+
33
+ return result;
34
+ })()).join('') : '') +
35
+ `</${wrapper}>` +
36
+ "</li>";
37
+ [wrapper, elem, opts, type, klass] = []; // unset any temporary variables
38
+ }
39
+
40
+ html += "</ul></form>";
41
+
42
+ const form = $(html).appendTo('body');
43
+ $('body').trigger('modal_dialog:before_open', [form]);
44
+
45
+ form.dialog({
46
+ modal: true,
47
+ open(event, ui) {
48
+ $('body').trigger('modal_dialog:after_open', [form]);
49
+ },
50
+ dialogClass: 'active_admin_dialog',
51
+ buttons: {
52
+ OK() {
53
+ callback($(this).serializeObject());
54
+ $(this).dialog('close');
55
+ },
56
+ Cancel() {
57
+ $(this).dialog('close').remove();
58
+ }
59
+ }
60
+ });
61
+ };
@@ -0,0 +1,47 @@
1
+ (($, ActiveAdmin) => {
2
+
3
+ class PerPage {
4
+ constructor(element) {
5
+ this.element = element;
6
+ }
7
+
8
+ update() {
9
+ const params = ActiveAdmin
10
+ .queryStringToParams()
11
+ .filter(({name}) => name != 'per_page' || name != 'page')
12
+
13
+ params.push({ name: 'per_page', value: this.element.value });
14
+
15
+ if (ActiveAdmin.turbolinks) {
16
+ ActiveAdmin.turbolinksVisit(params);
17
+ } else {
18
+ window.location.search = ActiveAdmin.toQueryString(params);
19
+ }
20
+ }
21
+
22
+ static _jQueryInterface(config) {
23
+ return this.each(function () {
24
+ const $this = $(this)
25
+ let data = $this.data('perPage')
26
+
27
+ if (!data) {
28
+ data = new PerPage(this)
29
+ $this.data('perPage', data)
30
+ }
31
+
32
+ if (config === 'update') {
33
+ data[config]()
34
+ }
35
+ })
36
+ }
37
+ };
38
+
39
+ $(document).
40
+ on('change', '.pagination_per_page > select', function(event) {
41
+ PerPage._jQueryInterface.call($(this), 'update')
42
+ });
43
+
44
+ $.fn['perPage'] = PerPage._jQueryInterface
45
+ $.fn['perPage'].Constructor = PerPage
46
+
47
+ })(jQuery, window.activeadmin);
@@ -0,0 +1,36 @@
1
+ ActiveAdmin.TableCheckboxToggler = class TableCheckboxToggler extends ActiveAdmin.CheckboxToggler {
2
+ _bind() {
3
+ super._bind(...arguments);
4
+
5
+ this.$container
6
+ .find('tbody td')
7
+ .click(event => {
8
+ if (event.target.type !== 'checkbox') {
9
+ this._didClickCell(event.target);
10
+ }
11
+ });
12
+ }
13
+
14
+ _didChangeCheckbox(checkbox) {
15
+ super._didChangeCheckbox(...arguments);
16
+
17
+ $(checkbox)
18
+ .parents('tr')
19
+ .toggleClass('selected', checkbox.checked);
20
+ }
21
+
22
+ _didChangeToggleAllCheckbox() {
23
+ this.$container
24
+ .find('tbody tr')
25
+ .toggleClass('selected', super._didChangeToggleAllCheckbox(...arguments));
26
+ }
27
+
28
+ _didClickCell(cell) {
29
+ $(cell)
30
+ .parent('tr')
31
+ .find(':checkbox')
32
+ .click();
33
+ }
34
+ };
35
+
36
+ $.widget.bridge('tableCheckboxToggler', ActiveAdmin.TableCheckboxToggler);
@@ -85,18 +85,7 @@ form {
85
85
  padding: 0;
86
86
  margin-bottom: 0;
87
87
 
88
- legend {
89
- position:absolute;
90
- width:95%;
91
- padding-top:0.1em;
92
- left: 0px;
93
- font-size: 100%;
94
- font-weight: normal;
95
- span { position:absolute; }
96
- &.label label { position:absolute; }
97
- }
98
-
99
- &:not(.has_many_fields) ol {
88
+ &:not(.inputs) ol {
100
89
  float: left;
101
90
  width: 74%;
102
91
  margin: 0;
@@ -108,7 +97,7 @@ form {
108
97
  }
109
98
  }
110
99
 
111
- &.has_many_fields ol {
100
+ &.inputs ol {
112
101
  float: left;
113
102
  width: 100%;
114
103
  margin: 0;
@@ -335,4 +324,3 @@ form.filter_form {
335
324
  }
336
325
  a.clear_filters_btn { @include light-button; }
337
326
  }
338
-
@@ -6,11 +6,6 @@
6
6
  padding: 3px 5px 2px 5px;
7
7
  font-size: 0.8em;
8
8
 
9
- // TODO: deprecated, remove in a v2 release
10
- &.ok, &.published, &.complete, &.completed, &.green { background: #8daa92; }
11
- &.warn, &.warning, &.orange { background: #e29b20; }
12
- &.error, &.errored, &.red { background: #d45f53; }
13
-
14
9
  &.yes { background: #6090DB }
15
10
  &.no { background: grey }
16
11
 
@@ -62,4 +62,4 @@
62
62
  padding: 15px;
63
63
  padding-top: 30px;
64
64
  text-align: left;
65
- }
65
+ }
@@ -24,5 +24,5 @@ $secondary-gradient-stop: #dfe1e2 !default;
24
24
  }
25
25
 
26
26
  @mixin no-gradient {
27
- background-color: none;
27
+ background: none;
28
28
  }
@@ -1,7 +1,7 @@
1
1
  <div id="login">
2
2
  <h2><%= active_admin_application.site_title(self) %> <%= title t('active_admin.devise.resend_confirmation_instructions.title') %></h2>
3
3
 
4
- <%= devise_error_messages! %>
4
+ <%= render partial: "active_admin/devise/shared/error_messages", resource: resource %>
5
5
  <%= active_admin_form_for(resource, as: resource_name, url: confirmation_path(resource_name), html: { method: :post }) do |f|
6
6
  f.inputs do
7
7
  f.input :email
@@ -1,7 +1,7 @@
1
1
  <div id="login">
2
2
  <h2><%= active_admin_application.site_title(self) %> <%= title t('active_admin.devise.change_password.title') %></h2>
3
3
 
4
- <%= devise_error_messages! %>
4
+ <%= render partial: "active_admin/devise/shared/error_messages", resource: resource %>
5
5
  <%= active_admin_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :put }) do |f|
6
6
  f.inputs do
7
7
  f.input :password
@@ -1,7 +1,7 @@
1
1
  <div id="login">
2
2
  <h2><%= active_admin_application.site_title(self) %> <%= title t('active_admin.devise.reset_password.title') %></h2>
3
3
 
4
- <%= devise_error_messages! %>
4
+ <%= render partial: "active_admin/devise/shared/error_messages", resource: resource %>
5
5
  <%= active_admin_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :post }) do |f|
6
6
  f.inputs do
7
7
  f.input :email
@@ -2,7 +2,7 @@
2
2
  <h2><%= active_admin_application.site_title(self) %> <%= title t('active_admin.devise.sign_up.title') %></h2>
3
3
 
4
4
  <% scope = Devise::Mapping.find_scope!(resource_name) %>
5
- <%= devise_error_messages! %>
5
+ <%= render partial: "active_admin/devise/shared/error_messages", resource: resource %>
6
6
  <%= active_admin_form_for(resource, as: resource_name, url: send(:"#{scope}_registration_path"), html: { id: "registration_new" }) do |f|
7
7
  f.inputs do
8
8
  resource.class.authentication_keys.each_with_index { |key, index|
@@ -19,4 +19,3 @@
19
19
 
20
20
  <%= render partial: "active_admin/devise/shared/links" %>
21
21
  </div>
22
-
@@ -0,0 +1,15 @@
1
+ <% if resource.errors.any? %>
2
+ <div id="error_explanation">
3
+ <h2>
4
+ <%= I18n.t("errors.messages.not_saved",
5
+ count: resource.errors.count,
6
+ resource: resource.class.model_name.human.downcase)
7
+ %>
8
+ </h2>
9
+ <ul>
10
+ <% resource.errors.full_messages.each do |message| %>
11
+ <li><%= message %></li>
12
+ <% end %>
13
+ </ul>
14
+ </div>
15
+ <% end %>
@@ -1,7 +1,7 @@
1
1
  <div id="login">
2
2
  <h2><%= active_admin_application.site_title(self) %> <%= title t('active_admin.devise.unlock.title') %></h2>
3
3
 
4
- <%= devise_error_messages! %>
4
+ <%= render partial: "active_admin/devise/shared/error_messages", resource: resource %>
5
5
  <%= active_admin_form_for(resource, as: resource_name, url: unlock_path(resource_name), html: { method: :post }) do |f|
6
6
  f.inputs do
7
7
  f.input :email
@@ -0,0 +1,11 @@
1
+ <%# Link to the "First" page
2
+ - available local variables
3
+ url: url to the first page
4
+ current_page: a page object for the currently displayed page
5
+ total_pages: total number of pages
6
+ per_page: number of items to fetch per page
7
+ remote: data-remote
8
+ -%>
9
+ <span class="first">
10
+ <%= link_to_unless current_page.first?, t('views.pagination.first').html_safe, url, remote: remote %>
11
+ </span>
@@ -0,0 +1,8 @@
1
+ <%# Non-link tag that stands for skipped pages...
2
+ - available local variables
3
+ current_page: a page object for the currently displayed page
4
+ total_pages: total number of pages
5
+ per_page: number of items to fetch per page
6
+ remote: data-remote
7
+ -%>
8
+ <span class="page gap"><%= t('views.pagination.truncate').html_safe %></span>
@@ -0,0 +1,11 @@
1
+ <%# Link to the "Next" page
2
+ - available local variables
3
+ url: url to the next page
4
+ current_page: a page object for the currently displayed page
5
+ total_pages: total number of pages
6
+ per_page: number of items to fetch per page
7
+ remote: data-remote
8
+ -%>
9
+ <span class="next">
10
+ <%= link_to_unless current_page.last?, t('views.pagination.next').html_safe, url, rel: 'next', remote: remote %>
11
+ </span>
@@ -0,0 +1,12 @@
1
+ <%# Link showing page number
2
+ - available local variables
3
+ page: a page object for "this" page
4
+ url: url to this page
5
+ current_page: a page object for the currently displayed page
6
+ total_pages: total number of pages
7
+ per_page: number of items to fetch per page
8
+ remote: data-remote
9
+ -%>
10
+ <span class="page<%= ' current' if page.current? %>">
11
+ <%= link_to_unless page.current?, page, url, {remote: remote, rel: page.rel} %>
12
+ </span>
@@ -0,0 +1,24 @@
1
+ <%# The container tag
2
+ - available local variables
3
+ current_page: a page object for the currently displayed page
4
+ total_pages: total number of pages
5
+ per_page: number of items to fetch per page
6
+ remote: data-remote
7
+ paginator: the paginator that renders the pagination tags inside
8
+ -%>
9
+ <%= paginator.render do -%>
10
+ <nav class="pagination">
11
+ <%= first_page_tag unless current_page.first? %>
12
+ <%= prev_page_tag unless current_page.first? %>
13
+ <% each_page do |page| -%>
14
+ <% if page.display_tag? -%>
15
+ <%= page_tag page %>
16
+ <% elsif !page.was_truncated? -%>
17
+ <%= gap_tag %>
18
+ <% end -%>
19
+ <% end -%>
20
+ <% unless current_page.out_of_range? %>
21
+ <%= next_page_tag unless current_page.last? %>
22
+ <% end %>
23
+ </nav>
24
+ <% end -%>
@@ -0,0 +1,11 @@
1
+ <%# Link to the "Previous" page
2
+ - available local variables
3
+ url: url to the previous page
4
+ current_page: a page object for the currently displayed page
5
+ total_pages: total number of pages
6
+ per_page: number of items to fetch per page
7
+ remote: data-remote
8
+ -%>
9
+ <span class="prev">
10
+ <%= link_to_unless current_page.first?, t('views.pagination.previous').html_safe, url, rel: 'prev', remote: remote %>
11
+ </span>
@@ -1,5 +1,5 @@
1
1
  <!DOCTYPE html>
2
- <html>
2
+ <html lang="<%=I18n.locale%>">
3
3
  <head>
4
4
  <meta http-equiv="Content-type" content="text/html; charset=utf-8">
5
5
 
@@ -37,8 +37,9 @@ ar:
37
37
  current_filters: "المُرشحات الحاليّة:"
38
38
  no_current_filters: "بدون"
39
39
  status_tag:
40
- 'yes': "نعم"
41
- 'no': "لا"
40
+ "yes": "نعم"
41
+ "no": "لا"
42
+ "unset": "لا"
42
43
  main_content: "الرجاء تنفيذ %{model}#main_content لعرض المحتوى."
43
44
  logout: "تسجيل الخروج"
44
45
  powered_by: "تنفيذ %{active_admin} %{version}"
@@ -34,6 +34,7 @@ bg:
34
34
  status_tag:
35
35
  "yes": "Да"
36
36
  "no": "не"
37
+ "unset": "не"
37
38
  main_content: "Добавете %{model}#main_content за да видите съдържание."
38
39
  logout: "Изход"
39
40
  powered_by: "Задвижва се от %{active_admin} %{version}"
@@ -116,4 +117,3 @@ bg:
116
117
  block: "Списък"
117
118
  grid: "Грид"
118
119
  blog: "Блог"
119
-
@@ -34,6 +34,7 @@ bs:
34
34
  status_tag:
35
35
  "yes": "Da"
36
36
  "no": "Nema"
37
+ "unset": "Nema"
37
38
  main_content: "Molim Vas, implementirajte %{model}#main_content da biste prikazali sadržaj."
38
39
  logout: "Odjavi se"
39
40
  powered_by: "Powered by %{active_admin} %{version}"
@@ -1,4 +1,3 @@
1
- #encoding: utf-8
2
1
  ca:
3
2
  active_admin:
4
3
  dashboard: Tauler
@@ -35,6 +34,7 @@ ca:
35
34
  status_tag:
36
35
  "yes": "Sí"
37
36
  "no": "No"
37
+ "unset": "No"
38
38
  main_content: "Implementa %{model}#main_content per mostrar contingut."
39
39
  logout: "Desconnecta't"
40
40
  powered_by: "Powered by %{active_admin} %{version}"
@@ -34,6 +34,7 @@ cs:
34
34
  status_tag:
35
35
  "yes": "Ano"
36
36
  "no": "Ne"
37
+ "unset": "Ne"
37
38
  main_content: "Implementujte prosím %{model}#main_content pro zobrazení obsahu."
38
39
  logout: "Odhlásit"
39
40
  powered_by: "%{active_admin} %{version}"
@@ -40,6 +40,7 @@ da:
40
40
  status_tag:
41
41
  "yes": "Ja"
42
42
  "no": "Nej"
43
+ "unset": "Nej"
43
44
  main_content: "Implementer venligst %{model}#main_content for at vise noget indhold."
44
45
  logout: "Log ud"
45
46
  powered_by: "Powered by %{active_admin} %{version}"
@@ -34,6 +34,7 @@
34
34
  status_tag:
35
35
  "yes": "Ja"
36
36
  "no": "Nicht"
37
+ "unset": "Nicht"
37
38
  main_content: "Bitte implementieren Sie %{model}#main_content, um Inhalte anzuzeigen."
38
39
  logout: "Abmelden"
39
40
  powered_by: "Powered by %{active_admin} %{version}"