decidim-admin 0.26.0 → 0.27.0.rc1

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

Potentially problematic release.


This version of decidim-admin might be problematic. Click here for more details.

Files changed (203) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/admin/attachments_privacy_warning/show.erb +3 -0
  3. data/app/cells/decidim/admin/attachments_privacy_warning_cell.rb +19 -0
  4. data/app/commands/decidim/admin/block_user.rb +1 -1
  5. data/app/commands/decidim/admin/close_session_managed_user.rb +1 -1
  6. data/app/commands/decidim/admin/create_area.rb +1 -1
  7. data/app/commands/decidim/admin/create_area_type.rb +6 -3
  8. data/app/commands/decidim/admin/create_attachment.rb +14 -6
  9. data/app/commands/decidim/admin/create_attachment_collection.rb +13 -4
  10. data/app/commands/decidim/admin/create_category.rb +6 -4
  11. data/app/commands/decidim/admin/create_component.rb +1 -1
  12. data/app/commands/decidim/admin/create_import.rb +4 -5
  13. data/app/commands/decidim/admin/create_import_example.rb +1 -1
  14. data/app/commands/decidim/admin/create_newsletter.rb +1 -1
  15. data/app/commands/decidim/admin/create_participatory_space_private_user.rb +1 -1
  16. data/app/commands/decidim/admin/create_scope.rb +1 -1
  17. data/app/commands/decidim/admin/create_scope_type.rb +6 -3
  18. data/app/commands/decidim/admin/create_static_page.rb +1 -1
  19. data/app/commands/decidim/admin/create_static_page_topic.rb +1 -1
  20. data/app/commands/decidim/admin/deliver_newsletter.rb +6 -6
  21. data/app/commands/decidim/admin/destroy_area.rb +1 -1
  22. data/app/commands/decidim/admin/destroy_category.rb +6 -3
  23. data/app/commands/decidim/admin/destroy_component.rb +1 -1
  24. data/app/commands/decidim/admin/destroy_newsletter.rb +1 -1
  25. data/app/commands/decidim/admin/destroy_participatory_space_private_user.rb +1 -1
  26. data/app/commands/decidim/admin/destroy_scope.rb +1 -1
  27. data/app/commands/decidim/admin/destroy_share_token.rb +1 -1
  28. data/app/commands/decidim/admin/destroy_static_page.rb +1 -1
  29. data/app/commands/decidim/admin/destroy_static_page_topic.rb +1 -1
  30. data/app/commands/decidim/admin/hide_resource.rb +2 -2
  31. data/app/commands/decidim/admin/impersonate_user.rb +1 -1
  32. data/app/commands/decidim/admin/invite_admin.rb +1 -1
  33. data/app/commands/decidim/admin/officialize_user.rb +1 -1
  34. data/app/commands/decidim/admin/process_participatory_space_private_user_import_csv.rb +7 -3
  35. data/app/commands/decidim/admin/process_user_group_verification_csv.rb +8 -4
  36. data/app/commands/decidim/admin/promote_managed_user.rb +1 -1
  37. data/app/commands/decidim/admin/publish_component.rb +1 -1
  38. data/app/commands/decidim/admin/reject_user_group.rb +1 -1
  39. data/app/commands/decidim/admin/remove_admin.rb +1 -1
  40. data/app/commands/decidim/admin/reorder_content_blocks.rb +1 -1
  41. data/app/commands/decidim/admin/transfer_user.rb +1 -1
  42. data/app/commands/decidim/admin/unblock_user.rb +1 -1
  43. data/app/commands/decidim/admin/unhide_resource.rb +1 -1
  44. data/app/commands/decidim/admin/unofficialize_user.rb +1 -1
  45. data/app/commands/decidim/admin/unpublish_component.rb +1 -1
  46. data/app/commands/decidim/admin/unreport_resource.rb +1 -1
  47. data/app/commands/decidim/admin/unreport_user.rb +1 -1
  48. data/app/commands/decidim/admin/update_area.rb +1 -1
  49. data/app/commands/decidim/admin/update_area_type.rb +8 -3
  50. data/app/commands/decidim/admin/update_attachment.rb +4 -3
  51. data/app/commands/decidim/admin/update_attachment_collection.rb +8 -3
  52. data/app/commands/decidim/admin/update_category.rb +9 -5
  53. data/app/commands/decidim/admin/update_component.rb +8 -5
  54. data/app/commands/decidim/admin/update_component_permissions.rb +9 -6
  55. data/app/commands/decidim/admin/update_content_block.rb +1 -1
  56. data/app/commands/decidim/admin/update_external_domain_whitelist.rb +6 -3
  57. data/app/commands/decidim/admin/update_help_sections.rb +17 -3
  58. data/app/commands/decidim/admin/update_newsletter.rb +1 -1
  59. data/app/commands/decidim/admin/update_organization.rb +1 -1
  60. data/app/commands/decidim/admin/update_organization_appearance.rb +1 -1
  61. data/app/commands/decidim/admin/update_organization_tos_version.rb +1 -1
  62. data/app/commands/decidim/admin/update_resource_permissions.rb +2 -2
  63. data/app/commands/decidim/admin/update_scope.rb +1 -1
  64. data/app/commands/decidim/admin/update_scope_type.rb +8 -3
  65. data/app/commands/decidim/admin/update_static_page.rb +1 -1
  66. data/app/commands/decidim/admin/update_static_page_topic.rb +1 -1
  67. data/app/commands/decidim/admin/update_user_groups.rb +1 -1
  68. data/app/commands/decidim/admin/verify_user_group.rb +1 -1
  69. data/app/controllers/concerns/decidim/admin/filterable.rb +1 -1
  70. data/app/controllers/concerns/decidim/admin/participatory_space_export.rb +3 -1
  71. data/app/controllers/decidim/admin/application_controller.rb +1 -0
  72. data/app/controllers/decidim/admin/area_types_controller.rb +6 -3
  73. data/app/controllers/decidim/admin/categories_controller.rb +3 -3
  74. data/app/controllers/decidim/admin/component_permissions_controller.rb +1 -1
  75. data/app/controllers/decidim/admin/components/base_controller.rb +1 -0
  76. data/app/controllers/decidim/admin/components_controller.rb +1 -1
  77. data/app/controllers/decidim/admin/concerns/has_attachment_collections.rb +6 -3
  78. data/app/controllers/decidim/admin/concerns/has_attachments.rb +6 -3
  79. data/app/controllers/decidim/admin/concerns/has_private_users_csv_import.rb +7 -0
  80. data/app/controllers/decidim/admin/conflicts_controller.rb +3 -1
  81. data/app/controllers/decidim/admin/dashboard_controller.rb +4 -3
  82. data/app/controllers/decidim/admin/exports_controller.rb +4 -1
  83. data/app/controllers/decidim/admin/help_sections_controller.rb +1 -1
  84. data/app/controllers/decidim/admin/metrics_controller.rb +2 -1
  85. data/app/controllers/decidim/admin/moderations_controller.rb +9 -7
  86. data/app/controllers/decidim/admin/organization_external_domain_whitelist_controller.rb +1 -1
  87. data/app/controllers/decidim/admin/reminders_controller.rb +61 -0
  88. data/app/controllers/decidim/admin/resource_permissions_controller.rb +2 -2
  89. data/app/controllers/decidim/admin/scope_types_controller.rb +6 -3
  90. data/app/controllers/decidim/admin/static_pages_controller.rb +1 -7
  91. data/app/forms/decidim/admin/category_form.rb +1 -2
  92. data/app/forms/decidim/admin/component_form.rb +16 -7
  93. data/app/forms/decidim/admin/import_example_form.rb +1 -5
  94. data/app/forms/decidim/admin/import_form.rb +7 -10
  95. data/app/forms/decidim/admin/managed_user_promotion_form.rb +1 -1
  96. data/app/forms/decidim/admin/participatory_space_private_user_csv_import_form.rb +7 -4
  97. data/app/forms/decidim/admin/permission_form.rb +9 -8
  98. data/app/forms/decidim/admin/permissions_form.rb +1 -10
  99. data/app/forms/decidim/admin/selective_newsletter_form.rb +1 -1
  100. data/app/forms/decidim/admin/user_group_csv_verification_form.rb +2 -2
  101. data/app/helpers/decidim/admin/bulk_actions_helper.rb +0 -4
  102. data/app/helpers/decidim/admin/moderations/reports_helper.rb +11 -2
  103. data/app/helpers/decidim/admin/newsletters_helper.rb +1 -1
  104. data/app/helpers/decidim/admin/reminders_helper.rb +12 -0
  105. data/app/packs/entrypoints/decidim_admin.js +2 -1
  106. data/app/packs/src/decidim/admin/admin_autocomplete.js +82 -0
  107. data/app/packs/src/decidim/admin/application.js +0 -16
  108. data/app/packs/stylesheets/decidim/admin/_decidim.scss +0 -1
  109. data/app/packs/stylesheets/decidim/admin/modules/_autocomplete.scss +5 -0
  110. data/app/packs/stylesheets/decidim/admin/modules/_modules.scss +2 -0
  111. data/app/packs/stylesheets/decidim/admin/modules/_upload_modal.scss +42 -0
  112. data/app/permissions/decidim/admin/permissions.rb +1 -0
  113. data/app/presenters/decidim/admin/dashboard_metric_charts_presenter.rb +3 -1
  114. data/app/queries/decidim/admin/active_users_counter.rb +1 -1
  115. data/app/queries/decidim/admin/newsletter_recipients.rb +5 -4
  116. data/app/queries/decidim/admin/user_filter.rb +1 -1
  117. data/app/queries/decidim/admin/user_groups_evaluation.rb +1 -1
  118. data/app/views/decidim/admin/attachments/index.html.erb +1 -0
  119. data/app/views/decidim/admin/categories/_form.html.erb +0 -4
  120. data/app/views/decidim/admin/categories/show.html.erb +1 -2
  121. data/app/views/decidim/admin/organization_appearance/form/_colors.html.erb +6 -6
  122. data/app/views/decidim/admin/organization_appearance/form/_images.html.erb +5 -4
  123. data/app/views/decidim/admin/participatory_space_private_users/index.html.erb +1 -1
  124. data/app/views/decidim/admin/participatory_space_private_users_csv_imports/new.html.erb +20 -1
  125. data/app/views/decidim/admin/reminders/new.html.erb +21 -0
  126. data/app/views/decidim/admin/shared/_gallery.html.erb +6 -1
  127. data/app/views/decidim/admin/shared/_js-callout.html.erb +6 -0
  128. data/app/views/decidim/admin/users_statistics/_users_count.html.erb +2 -2
  129. data/app/views/layouts/decidim/admin/_application.html.erb +2 -0
  130. data/config/locales/am-ET.yml +1 -0
  131. data/config/locales/ar.yml +242 -28
  132. data/config/locales/bg.yml +1 -0
  133. data/config/locales/ca.yml +28 -6
  134. data/config/locales/cs.yml +29 -5
  135. data/config/locales/da.yml +1 -0
  136. data/config/locales/de.yml +47 -5
  137. data/config/locales/el.yml +1 -6
  138. data/config/locales/en.yml +26 -5
  139. data/config/locales/eo.yml +1 -0
  140. data/config/locales/es-MX.yml +27 -5
  141. data/config/locales/es-PY.yml +27 -5
  142. data/config/locales/es.yml +28 -6
  143. data/config/locales/et.yml +1 -0
  144. data/config/locales/eu.yml +1 -6
  145. data/config/locales/fi-plain.yml +27 -5
  146. data/config/locales/fi.yml +27 -5
  147. data/config/locales/fr-CA.yml +26 -4
  148. data/config/locales/fr.yml +26 -4
  149. data/config/locales/ga-IE.yml +1 -1
  150. data/config/locales/gl.yml +16 -5
  151. data/config/locales/hr.yml +1 -0
  152. data/config/locales/hu.yml +25 -4
  153. data/config/locales/id-ID.yml +1 -3
  154. data/config/locales/is-IS.yml +2 -4
  155. data/config/locales/it.yml +6 -6
  156. data/config/locales/ja.yml +38 -17
  157. data/config/locales/ko.yml +1 -0
  158. data/config/locales/lb.yml +1 -6
  159. data/config/locales/lt.yml +946 -0
  160. data/config/locales/lv.yml +1 -3
  161. data/config/locales/mt.yml +1 -0
  162. data/config/locales/nl.yml +1 -6
  163. data/config/locales/no.yml +13 -7
  164. data/config/locales/om-ET.yml +1 -0
  165. data/config/locales/pl.yml +82 -5
  166. data/config/locales/pt-BR.yml +2 -7
  167. data/config/locales/pt.yml +1 -6
  168. data/config/locales/ro-RO.yml +7 -6
  169. data/config/locales/ru.yml +1 -3
  170. data/config/locales/si-LK.yml +1 -0
  171. data/config/locales/sk.yml +1 -3
  172. data/config/locales/sl.yml +1 -0
  173. data/config/locales/so-SO.yml +1 -0
  174. data/config/locales/sr-CS.yml +1 -2
  175. data/config/locales/sv.yml +30 -8
  176. data/config/locales/sw-KE.yml +1 -0
  177. data/config/locales/ti-ER.yml +1 -0
  178. data/config/locales/tr-TR.yml +1 -4
  179. data/config/locales/uk.yml +1 -2
  180. data/config/locales/val-ES.yml +1 -0
  181. data/config/locales/vi.yml +1 -0
  182. data/config/locales/zh-CN.yml +1 -3
  183. data/config/locales/zh-TW.yml +1 -0
  184. data/lib/decidim/admin/engine.rb +0 -1
  185. data/lib/decidim/admin/import/importer.rb +9 -7
  186. data/lib/decidim/admin/import/readers/json.rb +1 -1
  187. data/lib/decidim/admin/test/commands/create_attachment_collection_examples.rb +15 -2
  188. data/lib/decidim/admin/test/commands/create_category_examples.rb +16 -6
  189. data/lib/decidim/admin/test/commands/destroy_category_examples.rb +29 -1
  190. data/lib/decidim/admin/test/commands/update_attachment_collection_examples.rb +15 -2
  191. data/lib/decidim/admin/test/commands/update_category_examples.rb +16 -6
  192. data/lib/decidim/admin/test/filters_participatory_space_user_roles_examples.rb +4 -4
  193. data/lib/decidim/admin/test/filters_participatory_space_users_examples.rb +4 -4
  194. data/lib/decidim/admin/test/forms/category_form_examples.rb +1 -21
  195. data/lib/decidim/admin/test/manage_attachments_examples.rb +9 -2
  196. data/lib/decidim/admin/test/manage_categories_examples.rb +0 -10
  197. data/lib/decidim/admin/test/manage_component_permissions_examples.rb +0 -2
  198. data/lib/decidim/admin/test/manage_moderations_examples.rb +26 -0
  199. data/lib/decidim/admin/version.rb +1 -1
  200. metadata +21 -15
  201. data/app/packs/src/decidim/admin/autocomplete.component.js +0 -146
  202. data/app/packs/src/decidim/admin/autocomplete.component.test.js +0 -19
  203. data/app/packs/stylesheets/decidim/admin/components/_autocomplete_select.component.scss +0 -19
@@ -0,0 +1,82 @@
1
+ import AutoComplete from "src/decidim/autocomplete";
2
+
3
+ /**
4
+ * This function can be used to create an autocomplete input automatically
5
+ * from the following kind of div:
6
+ * <div data-autocomplete="{...}"></div>
7
+ *
8
+ * The data-autocomplete attribute should contain the following configuration
9
+ * as an encoded JSON, which is used to generate the AutoComplete options:
10
+ * - name: assembly_member[user_id],
11
+ * - options: [],
12
+ * - placeholder: "Select a participant",
13
+ * - searchURL: "http://..."
14
+ * - selected: "",
15
+ *
16
+ * @param {HTMLElement} el The element to generate the autocomplete for.
17
+ * @returns {AutoComplete} An instance of the AutoComplete class.
18
+ */
19
+ const autoConfigure = (el) => {
20
+ const config = JSON.parse(el.dataset.autocomplete);
21
+ const textInput = document.createElement("input");
22
+ textInput.type = "text";
23
+ textInput.className = "autocomplete-input";
24
+ el.appendChild(textInput);
25
+ let mode = config.mode || "sticky"
26
+ let selected = null;
27
+ if (config.selected) {
28
+ switch (mode) {
29
+ case "multi":
30
+ selected = config.selected.map((item) => (
31
+ {
32
+ key: "label",
33
+ value: {
34
+ value: item.value,
35
+ label: item.label
36
+ }
37
+ }
38
+ ));
39
+ break;
40
+ case "sticky":
41
+ selected = { key: "label", value: config.options[config.options.length - 1] };
42
+ break;
43
+ default:
44
+ selected = config.selected;
45
+ }
46
+ }
47
+
48
+ const dataSource = (query, callback) => {
49
+ const params = new URLSearchParams({ term: query });
50
+ fetch(`${config.searchURL}?${params.toString()}`, {
51
+ method: "GET",
52
+ headers: { "Content-Type": "application/json" }
53
+ }).then((response) => response.json()).then((data) => {
54
+ callback(data)
55
+ });
56
+ };
57
+
58
+ const ac = new AutoComplete(textInput, {
59
+ name: config.name,
60
+ placeholder: config.placeholder,
61
+ selected: selected,
62
+ mode: mode,
63
+ searchPrompt: true,
64
+ searchPromptText: config.searchPromptText,
65
+ threshold: 3,
66
+ dataMatchKeys: ["label"],
67
+ dataSource
68
+ });
69
+
70
+ return ac;
71
+ }
72
+
73
+ $(() => {
74
+ const $autocompleteDiv = $("[data-autocomplete]");
75
+ if ($autocompleteDiv.length < 1) {
76
+ return;
77
+ }
78
+
79
+ $autocompleteDiv.each((_index, element) => {
80
+ autoConfigure(element);
81
+ })
82
+ })
@@ -1,13 +1,10 @@
1
1
  /* eslint-disable no-invalid-this */
2
2
 
3
- import * as React from "react";
4
- import * as ReactDOM from "react-dom";
5
3
  import toggleNav from "src/decidim/admin/toggle_nav"
6
4
  import createSortList from "src/decidim/admin/sort_list.component"
7
5
  import createQuillEditor from "src/decidim/editor"
8
6
  import formDatePicker from "src/decidim/form_datepicker"
9
7
  import DataPicker from "src/decidim/data_picker"
10
- import Autocomplete from "src/decidim/admin/autocomplete.component";
11
8
  import FormFilterComponent from "src/decidim/form_filter"
12
9
  import Configuration from "src/decidim/configuration"
13
10
  import InputCharacterCounter from "src/decidim/input_character_counter"
@@ -18,17 +15,6 @@ window.Decidim.managedUsersForm = managedUsersForm
18
15
  window.Decidim.config = new Configuration()
19
16
  window.Decidim.InputCharacterCounter = InputCharacterCounter;
20
17
 
21
- const renderAutocompleteSelects = (nodeSelector) => {
22
- window.$(nodeSelector).each((index, node) => {
23
- const props = { ...window.$(node).data("autocomplete") };
24
-
25
- ReactDOM.render(
26
- React.createElement(Autocomplete, props),
27
- node
28
- );
29
- });
30
- };
31
-
32
18
  $(() => {
33
19
  window.theDataPicker = new DataPicker($(".data-picker"));
34
20
 
@@ -36,8 +22,6 @@ $(() => {
36
22
 
37
23
  toggleNav();
38
24
 
39
- renderAutocompleteSelects('[data-plugin="autocomplete"]');
40
-
41
25
  createSortList("#steps tbody", {
42
26
  placeholder: $('<tr style="border-style: dashed; border-color: #000"><td colspan="4">&nbsp;</td></tr>')[0],
43
27
  onSortUpdate: ($children) => {
@@ -17,7 +17,6 @@
17
17
  @import "stylesheets/decidim/admin/modules/modules";
18
18
  @import "stylesheets/decidim/admin/plugins/jquery.auto-complete";
19
19
  @import "stylesheets/decidim/admin/components/accordion";
20
- @import "stylesheets/decidim/admin/components/autocomplete_select.component";
21
20
  @import "stylesheets/decidim/admin/components/dropdown-menu";
22
21
  @import "stylesheets/decidim/admin/components/sortable";
23
22
  @import "stylesheets/decidim/vizzs";
@@ -0,0 +1,5 @@
1
+ @import "stylesheets/decidim/modules/autocomplete";
2
+
3
+ .autoComplete_wrapper{
4
+ margin-bottom: 1.5rem;
5
+ }
@@ -4,6 +4,7 @@
4
4
  @import "stylesheets/decidim/admin/modules/buttons";
5
5
  @import "stylesheets/decidim/admin/modules/forms";
6
6
  @import "stylesheets/decidim/admin/modules/tabs";
7
+ @import "stylesheets/decidim/admin/modules/autocomplete";
7
8
 
8
9
  //General layout
9
10
  @import "stylesheets/decidim/admin/modules/layout";
@@ -31,6 +32,7 @@
31
32
  @import "stylesheets/decidim/admin/modules/loading-spinner";
32
33
  @import "stylesheets/decidim/admin/modules/import_result";
33
34
  @import "stylesheets/decidim/admin/modules/reveal";
35
+ @import "stylesheets/decidim/admin/modules/upload_modal";
34
36
 
35
37
  // mentions__container
36
38
  @import "stylesheets/decidim/modules/tags";
@@ -0,0 +1,42 @@
1
+ @import "stylesheets/decidim/modules/upload_modal";
2
+
3
+ .upload-modal{
4
+ button{
5
+ cursor: pointer;
6
+ }
7
+
8
+ .upload-items{
9
+ .upload-item-first-row{
10
+ display: flex;
11
+
12
+ .file-name-span{
13
+ flex: 4 1 0;
14
+ }
15
+
16
+ .title-container{
17
+ flex: 3.5 1 0;
18
+ }
19
+ }
20
+
21
+ .upload-item-second-row{
22
+ display: flex;
23
+
24
+ .progress-bar-wrapper{
25
+ flex: 4 1 0;
26
+ margin-right: 1rem;
27
+
28
+ .progress-bar-border{
29
+ border: 1px solid map-get($foundation-palette, primary);
30
+
31
+ .progress-bar{
32
+ background-color: map-get($foundation-palette, primary);
33
+ }
34
+ }
35
+ }
36
+
37
+ .remove-upload-item{
38
+ flex: 1 1 0;
39
+ }
40
+ }
41
+ }
42
+ }
@@ -56,6 +56,7 @@ module Decidim
56
56
  allow! if permission_action.subject == :static_page_topic
57
57
  allow! if permission_action.subject == :help_sections
58
58
  allow! if permission_action.subject == :share_token
59
+ allow! if permission_action.subject == :reminder
59
60
  end
60
61
 
61
62
  permission_action
@@ -3,7 +3,9 @@
3
3
  module Decidim
4
4
  module Admin
5
5
  class DashboardMetricChartsPresenter < Decidim::MetricChartsPresenter
6
- attribute :summary, Boolean
6
+ def summary?
7
+ __getobj__.fetch(:summary)
8
+ end
7
9
 
8
10
  def render_not_highlighted(metrics)
9
11
  safe_join(
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module Admin
5
5
  # Counts active users making a distinction between whether they are admins or participants
6
- class ActiveUsersCounter < Rectify::Query
6
+ class ActiveUsersCounter < Decidim::Query
7
7
  # Initializes the class.
8
8
  #
9
9
  # @param organization [Organization] Current organization
@@ -4,7 +4,7 @@ module Decidim
4
4
  module Admin
5
5
  # A class used to find the recipients of the
6
6
  # Newsletter depending on the params of the form
7
- class NewsletterRecipients < Rectify::Query
7
+ class NewsletterRecipients < Decidim::Query
8
8
  # Syntactic sugar to initialize the class and return the queried objects.
9
9
  #
10
10
  # form - params to filter the query
@@ -51,11 +51,12 @@ module Decidim
51
51
  @spaces ||= @form.participatory_space_types.map do |type|
52
52
  next if type.ids.blank?
53
53
 
54
- object_class = "Decidim::#{type.manifest_name.classify}"
54
+ object_class = Decidim.participatory_space_registry.find(type.manifest_name).model_class_name.constantize
55
+
55
56
  if type.ids.include?("all")
56
- object_class.constantize.where(organization: @organization)
57
+ object_class.where(organization: @organization)
57
58
  else
58
- object_class.constantize.where(id: type.ids.reject(&:blank?))
59
+ object_class.where(id: type.ids.compact_blank)
59
60
  end
60
61
  end.flatten.compact
61
62
  end
@@ -4,7 +4,7 @@ module Decidim
4
4
  module Admin
5
5
  # A class used to filter users by whitelisted scope or searches on their
6
6
  # name
7
- class UserFilter < Rectify::Query
7
+ class UserFilter < Decidim::Query
8
8
  WHITELISTED_STATE_SCOPES = %w(
9
9
  officialized
10
10
  not_officialized
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module Admin
5
5
  # A class used to find the UserGroup's by their evaluation state.
6
- class UserGroupsEvaluation < Rectify::Query
6
+ class UserGroupsEvaluation < Decidim::Query
7
7
  # Syntactic sugar to initialize the class and return the queried objects.
8
8
  #
9
9
  # user_groups - the initial User Group relation that needs to be filtered.
@@ -9,6 +9,7 @@
9
9
  </div>
10
10
 
11
11
  <div class="card-section">
12
+ <%= cell("decidim/admin/attachments_privacy_warning", attached_to.attachments) %>
12
13
  <% if attached_to.attachments.any? %>
13
14
  <div class="table-scroll">
14
15
  <table class="table-list">
@@ -12,10 +12,6 @@
12
12
  <%= form.number_field :weight %>
13
13
  </div>
14
14
 
15
- <div class="row column">
16
- <%= form.translated :editor, :description %>
17
- </div>
18
-
19
15
  <div class="row column">
20
16
  <%= form.label :parent_id %>
21
17
  <%= select :category, :parent_id, @form.parent_categories.collect { |c| [c.name[current_organization.default_locale], c.id] }, include_blank: true %>
@@ -8,6 +8,5 @@
8
8
 
9
9
  <dl>
10
10
  <%= display_for @category,
11
- :name,
12
- :description %>
11
+ :name %>
13
12
  </dl>
@@ -2,13 +2,13 @@
2
2
  <div class="card-divider">
3
3
  <h2 class="card-title"><%= t ".colors_title" %></h2>
4
4
  </div>
5
- <div class="callout warning">
6
- <p>
7
- <%= icon "warning" %>
8
- <%= t ".colors_warning_html", link: "https://webaim.org/resources/contrastchecker" %>
9
- </p>
10
- </div>
11
5
  <div class="card-section">
6
+ <div class="callout warning">
7
+ <p>
8
+ <%= icon "warning" %>
9
+ <%= t ".colors_warning_html", link: "https://webaim.org/resources/contrastchecker" %>
10
+ </p>
11
+ </div>
12
12
  <div class="organization-colors">
13
13
  <%= form.color_field :primary_color, value: current_organization.colors["primary"] %>
14
14
  <%= form.color_field :secondary_color, value: current_organization.colors["secondary"] %>
@@ -14,7 +14,8 @@
14
14
  <%= form.upload(
15
15
  :favicon,
16
16
  dimensions_info: current_organization.attached_uploader(:favicon).dimensions_info,
17
- extension_allowlist: current_organization.attached_uploader(:favicon).extension_allowlist
17
+ extension_allowlist: current_organization.attached_uploader(:favicon).extension_allowlist,
18
+ help_i18n_scope: "decidim.forms.file_help.icon"
18
19
  ) %>
19
20
  </div>
20
21
 
@@ -22,7 +23,7 @@
22
23
  <%= form.upload(
23
24
  :logo,
24
25
  dimensions_info: current_organization.attached_uploader(:logo).dimensions_info,
25
- extension_allowlist: current_organization.attached_uploader(:favicon).extension_allowlist
26
+ extension_allowlist: current_organization.attached_uploader(:logo).extension_allowlist
26
27
  ) %>
27
28
  </div>
28
29
 
@@ -30,7 +31,7 @@
30
31
  <%= form.upload(
31
32
  :official_img_header,
32
33
  dimensions_info: current_organization.attached_uploader(:official_img_header).dimensions_info,
33
- extension_allowlist: current_organization.attached_uploader(:favicon).extension_allowlist
34
+ extension_allowlist: current_organization.attached_uploader(:official_img_header).extension_allowlist
34
35
  ) %>
35
36
  </div>
36
37
 
@@ -38,7 +39,7 @@
38
39
  <%= form.upload(
39
40
  :official_img_footer,
40
41
  dimensions_info: current_organization.attached_uploader(:official_img_footer).dimensions_info,
41
- extension_allowlist: current_organization.attached_uploader(:favicon).extension_allowlist
42
+ extension_allowlist: current_organization.attached_uploader(:official_img_footer).extension_allowlist
42
43
  ) %>
43
44
  </div>
44
45
  </div>
@@ -3,7 +3,7 @@
3
3
  <h2 class="card-title">
4
4
  <%= t(".title") %>
5
5
  <% if allowed_to? :create, :space_private_user %>
6
- <%= link_to t(".import_via_csv"), new_participatory_space_private_users_csv_import_path, class: "button tiny button--title import" %>
6
+ <%= link_to t(".import_via_csv"), new_participatory_space_private_users_csv_imports_path, class: "button tiny button--title import" %>
7
7
  <%= link_to t("actions.participatory_space_private_user.new", scope: "decidim.admin"), url_for(action: :new), class: "button tiny button--title new" %>
8
8
  <% end %>
9
9
  </h2>
@@ -1,3 +1,22 @@
1
+ <div class="card">
2
+ <div class="card-divider">
3
+ <h2 class="card-title">
4
+ <%= t(".destroy.title") %>
5
+ </h2>
6
+ </div>
7
+ <div class="card-section">
8
+ <% if @count != 0 %>
9
+ <p><%= t(".destroy.explanation", count: @count) %></p>
10
+ <%= link_to t(".destroy.button"),
11
+ destroy_all_participatory_space_private_users_csv_imports_path,
12
+ method: :delete,
13
+ class: "button alert",
14
+ data: { confirm: t(".destroy.confirm") } %>
15
+ <% else %>
16
+ <p><%= t(".destroy.empty") %></p>
17
+ <% end %>
18
+ </div>
19
+ </div>
1
20
  <div class="card" id='user-groups'>
2
21
  <div class="card-divider">
3
22
  <h2 class="card-title">
@@ -5,7 +24,7 @@
5
24
  </h2>
6
25
  </div>
7
26
  <div class="card-section">
8
- <%= decidim_form_for(@form, url: participatory_space_private_users_csv_import_path, html: { class: "form" }) do |form| %>
27
+ <%= decidim_form_for(@form, url: participatory_space_private_users_csv_imports_path, html: { class: "form" }) do |form| %>
9
28
  <p><%= t(".explanation") %></p>
10
29
  <div class="row column">
11
30
  <%= form.upload :file, optional: false %>
@@ -0,0 +1,21 @@
1
+ <%= decidim_form_for(@form, url: component_reminders_path(name: reminder_manifest.name), class: "form grid-container") do |form| %>
2
+ <div class="card">
3
+ <div class="card-divider">
4
+ <h2 class="card-title flex--sbc">
5
+ <%= reminder_manifest.message(:title, count: @form.try(:reminder_amount)) %>
6
+ </h2>
7
+ </div>
8
+ <div class="card-section">
9
+ <div class="row">
10
+ <div class="columns small-12">
11
+ <p><%= reminder_manifest.message(:description) %></p>
12
+ </div>
13
+ </div>
14
+ <div class="row">
15
+ <div class="columns small-12 text-center">
16
+ <%= form.submit t(".submit") %>
17
+ </div>
18
+ </div>
19
+ </div>
20
+ </div>
21
+ <% end %>
@@ -15,7 +15,12 @@
15
15
  <% end %>
16
16
 
17
17
  <div class="row column">
18
- <%= form.file_field :add_photos, multiple: true, label: t(".add_images") %>
18
+ <%= form.attachment :photos,
19
+ multiple: true,
20
+ label: t(".add_images"),
21
+ button_label: t(".add_images"),
22
+ button_edit_label: t(".edit_images"),
23
+ help_i18n_scope: "decidim.forms.file_help.image" %>
19
24
  </div>
20
25
  </fieldset>
21
26
  </div>
@@ -0,0 +1,6 @@
1
+ <div class="callout callout--full <%= css %>" data-closable>
2
+ <%= text %>
3
+ <button class="close-button" type="button" data-close="">
4
+ <span aria-hidden="true">×</span>
5
+ </button>
6
+ </div>
@@ -24,13 +24,13 @@
24
24
  <td class="title"><%= t(".participants") %></td>
25
25
  <td><%= result[:total_participants_last_month] %></td>
26
26
  <td><%= result[:total_participants_last_week] %></td>
27
- <td><%= result[:total_participants_last_24] %></td>
27
+ <td><%= result[:total_participants_last_day] %></td>
28
28
  </tr>
29
29
  <tr>
30
30
  <td class="title"><%= t(".admins") %></td>
31
31
  <td><%= result[:total_admins_last_month] %></td>
32
32
  <td><%= result[:total_admins_last_week] %></td>
33
- <td><%= result[:total_admins_last_24] %></td>
33
+ <td><%= result[:total_admins_last_day] %></td>
34
34
  </tr>
35
35
  </tbody>
36
36
  </table>
@@ -29,5 +29,7 @@
29
29
  <%= render partial: "decidim/shared/confirm_modal" %>
30
30
  <%= render partial: "layouts/decidim/admin/js_configuration" %>
31
31
  <%= render partial: "layouts/decidim/cors" if Decidim.cors_enabled %>
32
+
33
+ <%= snippets.display(:foot) %>
32
34
  </body>
33
35
  </html>
@@ -1 +1,2 @@
1
+ ---
1
2
  am: