decidim-admin 0.31.6 → 0.32.0.rc1

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 (232) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -12
  3. data/app/cells/decidim/admin/attachments_privacy_warning/show.erb +1 -1
  4. data/app/cells/decidim/admin/attachments_privacy_warning_cell.rb +2 -6
  5. data/app/commands/decidim/admin/content_blocks/reorder_content_blocks.rb +1 -1
  6. data/app/commands/decidim/admin/create_newsletter.rb +1 -1
  7. data/app/commands/decidim/admin/create_taxonomy_filter.rb +2 -16
  8. data/app/commands/decidim/admin/participatory_space/create_member.rb +99 -0
  9. data/app/commands/decidim/admin/participatory_space/destroy_member.rb +30 -0
  10. data/app/commands/decidim/admin/participatory_space/import_member_csv.rb +46 -0
  11. data/app/commands/decidim/admin/participatory_space/publish_all_members.rb +52 -0
  12. data/app/commands/decidim/admin/participatory_space/unpublish_all_members.rb +52 -0
  13. data/app/commands/decidim/admin/participatory_space/update_member.rb +13 -0
  14. data/app/commands/decidim/admin/reorder_components.rb +1 -1
  15. data/app/commands/decidim/admin/reorder_taxonomies.rb +1 -1
  16. data/app/commands/decidim/admin/update_organization.rb +1 -1
  17. data/app/commands/decidim/admin/update_taxonomy_filter.rb +6 -24
  18. data/app/controllers/concerns/decidim/admin/content_blocks/landing_page.rb +1 -0
  19. data/app/controllers/concerns/decidim/admin/content_blocks/landing_page_content_blocks.rb +3 -2
  20. data/app/controllers/concerns/decidim/admin/filterable.rb +4 -4
  21. data/app/controllers/concerns/decidim/admin/participatory_space_admin_context.rb +1 -0
  22. data/app/controllers/concerns/decidim/admin/participatory_space_export.rb +1 -1
  23. data/app/controllers/decidim/admin/area_types_controller.rb +2 -2
  24. data/app/controllers/decidim/admin/areas_controller.rb +3 -2
  25. data/app/controllers/decidim/admin/block_user_controller.rb +2 -4
  26. data/app/controllers/decidim/admin/component_permissions_controller.rb +1 -1
  27. data/app/controllers/decidim/admin/components/base_controller.rb +13 -9
  28. data/app/controllers/decidim/admin/components_controller.rb +3 -2
  29. data/app/controllers/decidim/admin/concerns/has_attachment_collections.rb +2 -2
  30. data/app/controllers/decidim/admin/concerns/has_attachments.rb +2 -2
  31. data/app/controllers/decidim/admin/conflicts_controller.rb +1 -1
  32. data/app/controllers/decidim/admin/exports_controller.rb +1 -1
  33. data/app/controllers/decidim/admin/impersonations_controller.rb +1 -1
  34. data/app/controllers/decidim/admin/imports_controller.rb +2 -1
  35. data/app/controllers/decidim/admin/managed_users/promotions_controller.rb +1 -1
  36. data/app/controllers/decidim/admin/newsletters_controller.rb +9 -9
  37. data/app/controllers/decidim/admin/officializations_controller.rb +0 -2
  38. data/app/controllers/decidim/admin/organization_appearance_controller.rb +1 -1
  39. data/app/controllers/decidim/admin/organization_controller.rb +30 -1
  40. data/app/controllers/decidim/admin/organization_external_domain_allowlist_controller.rb +1 -1
  41. data/app/controllers/decidim/admin/participatory_space/concerns/has_members.rb +166 -0
  42. data/app/controllers/decidim/admin/participatory_space/concerns/has_members_csv_import.rb +67 -0
  43. data/app/controllers/decidim/admin/participatory_space/concerns/members_filterable.rb +36 -0
  44. data/app/controllers/decidim/admin/participatory_space/user_role_controller.rb +2 -2
  45. data/app/controllers/decidim/admin/reminders_controller.rb +1 -1
  46. data/app/controllers/decidim/admin/resource_permissions_controller.rb +1 -1
  47. data/app/controllers/decidim/admin/scope_types_controller.rb +2 -2
  48. data/app/controllers/decidim/admin/scopes_controller.rb +3 -2
  49. data/app/controllers/decidim/admin/share_tokens_controller.rb +2 -2
  50. data/app/controllers/decidim/admin/space_publications_controller.rb +2 -2
  51. data/app/controllers/decidim/admin/static_page_topics_controller.rb +2 -2
  52. data/app/controllers/decidim/admin/static_pages_controller.rb +2 -2
  53. data/app/controllers/decidim/admin/taxonomies_controller.rb +3 -3
  54. data/app/controllers/decidim/admin/taxonomy_filters_controller.rb +3 -3
  55. data/app/controllers/decidim/admin/taxonomy_items_controller.rb +3 -3
  56. data/app/controllers/decidim/admin/users_controller.rb +1 -1
  57. data/app/forms/decidim/admin/content_block_form.rb +28 -1
  58. data/app/forms/decidim/admin/organization_form.rb +0 -1
  59. data/app/forms/decidim/admin/participatory_space/member_csv_import_form.rb +33 -0
  60. data/app/forms/decidim/admin/participatory_space/member_form.rb +26 -0
  61. data/app/forms/decidim/admin/participatory_space_admin_user_form.rb +1 -1
  62. data/app/forms/decidim/admin/selective_newsletter_form.rb +7 -7
  63. data/app/forms/decidim/admin/taxonomy_filter_form.rb +10 -11
  64. data/app/helpers/decidim/admin/newsletters_helper.rb +8 -5
  65. data/app/helpers/decidim/admin/search_form_helper.rb +17 -0
  66. data/app/helpers/decidim/admin/settings_helper.rb +2 -0
  67. data/app/jobs/decidim/admin/newsletter_job.rb +2 -2
  68. data/app/jobs/decidim/admin/participatory_space/destroy_members_follows_job.rb +36 -0
  69. data/app/jobs/decidim/admin/participatory_space/import_member_csv_job.rb +29 -0
  70. data/app/packs/src/decidim/admin/admin_autocomplete.js +10 -16
  71. data/app/packs/src/decidim/admin/controllers/access_mode/access_mode.test.js +68 -0
  72. data/app/packs/src/decidim/admin/controllers/access_mode/controller.js +52 -0
  73. data/app/packs/src/decidim/admin/newsletters.js +2 -2
  74. data/app/packs/stylesheets/decidim/admin/_datepicker.scss +0 -4
  75. data/app/packs/stylesheets/decidim/admin/application.scss +1 -1
  76. data/app/queries/decidim/admin/newsletter_recipients.rb +8 -8
  77. data/app/views/decidim/admin/admin_terms/show.html.erb +3 -1
  78. data/app/views/decidim/admin/area_types/index.html.erb +3 -2
  79. data/app/views/decidim/admin/areas/index.html.erb +3 -2
  80. data/app/views/decidim/admin/attachment_collections/edit.html.erb +2 -2
  81. data/app/views/decidim/admin/attachment_collections/index.html.erb +3 -3
  82. data/app/views/decidim/admin/attachment_collections/new.html.erb +2 -2
  83. data/app/views/decidim/admin/attachments/index.html.erb +3 -2
  84. data/app/views/decidim/admin/authorization_workflows/index.html.erb +2 -2
  85. data/app/views/decidim/admin/block_user/new.html.erb +1 -0
  86. data/app/views/decidim/admin/components/_actions.html.erb +1 -1
  87. data/app/views/decidim/admin/components/index.html.erb +2 -2
  88. data/app/views/decidim/admin/components/manage_trash.html.erb +2 -2
  89. data/app/views/decidim/admin/conflicts/edit.html.erb +3 -1
  90. data/app/views/decidim/admin/conflicts/index.html.erb +3 -2
  91. data/app/views/decidim/admin/dashboard/show.html.erb +4 -4
  92. data/app/views/decidim/admin/help_sections/update.html.erb +2 -0
  93. data/app/views/decidim/admin/impersonatable_users/index.html.erb +3 -2
  94. data/app/views/decidim/admin/impersonations/_form.html.erb +2 -2
  95. data/app/views/decidim/admin/impersonations/new.html.erb +3 -2
  96. data/app/views/decidim/admin/imports/new.html.erb +1 -0
  97. data/app/views/decidim/admin/logs/_logs_list.html.erb +1 -1
  98. data/app/views/decidim/admin/logs/index.html.erb +1 -1
  99. data/app/views/decidim/admin/managed_users/impersonation_logs/index.html.erb +6 -5
  100. data/app/views/decidim/admin/managed_users/promotions/new.html.erb +3 -2
  101. data/app/views/decidim/admin/{participatory_space_private_users → members}/edit.html.erb +2 -2
  102. data/app/views/decidim/admin/{participatory_space_private_users → members}/index.html.erb +25 -25
  103. data/app/views/decidim/admin/{participatory_space_private_users → members}/new.html.erb +2 -2
  104. data/app/views/decidim/admin/{participatory_space_private_users_csv_imports → members_csv_imports}/new.html.erb +2 -2
  105. data/app/views/decidim/admin/moderations/_moderation-tr.html.erb +3 -7
  106. data/app/views/decidim/admin/moderations/_moderations-thead.html.erb +0 -1
  107. data/app/views/decidim/admin/moderations/reports/index.html.erb +1 -1
  108. data/app/views/decidim/admin/newsletter_templates/show.html.erb +3 -2
  109. data/app/views/decidim/admin/newsletters/confirm_recipients.html.erb +4 -6
  110. data/app/views/decidim/admin/newsletters/index.html.erb +2 -2
  111. data/app/views/decidim/admin/newsletters/select_recipients_to_deliver.html.erb +2 -2
  112. data/app/views/decidim/admin/newsletters/show.html.erb +3 -2
  113. data/app/views/decidim/admin/officializations/index.html.erb +6 -4
  114. data/app/views/decidim/admin/officializations/show_email.html.erb +3 -7
  115. data/app/views/decidim/admin/organization/form/_extra_features.html.erb +0 -4
  116. data/app/views/decidim/admin/organization_external_domain_allowlist/_form.html.erb +2 -2
  117. data/app/views/decidim/admin/organization_external_domain_allowlist/edit.html.erb +2 -2
  118. data/app/views/decidim/admin/reminders/new.html.erb +8 -1
  119. data/app/views/decidim/admin/resource_permissions/edit.html.erb +2 -2
  120. data/app/views/decidim/admin/scope_types/index.html.erb +3 -2
  121. data/app/views/decidim/admin/scopes/index.html.erb +2 -2
  122. data/app/views/decidim/admin/share_tokens/index.html.erb +2 -0
  123. data/app/views/decidim/admin/shared/_gallery.html.erb +15 -0
  124. data/app/views/decidim/admin/shared/landing_page/_content_blocks.html.erb +0 -2
  125. data/app/views/decidim/admin/shared/landing_page/edit.html.erb +2 -0
  126. data/app/views/decidim/admin/shared/landing_page_content_blocks/edit.html.erb +1 -0
  127. data/app/views/decidim/admin/static_page_topics/index.html.erb +2 -2
  128. data/app/views/decidim/admin/static_pages/edit.html.erb +2 -1
  129. data/app/views/decidim/admin/static_pages/index.html.erb +2 -2
  130. data/app/views/decidim/admin/statistics/_statistics.html.erb +1 -1
  131. data/app/views/decidim/admin/statistics/index.html.erb +2 -0
  132. data/app/views/decidim/admin/taxonomies/_row.html.erb +1 -1
  133. data/app/views/decidim/admin/taxonomies/_row_children.html.erb +1 -1
  134. data/app/views/decidim/admin/taxonomies/_table.html.erb +1 -1
  135. data/app/views/decidim/admin/taxonomies/edit.html.erb +2 -2
  136. data/app/views/decidim/admin/taxonomies/index.html.erb +4 -4
  137. data/app/views/decidim/admin/taxonomy_filters/_table.html.erb +2 -2
  138. data/app/views/decidim/admin/taxonomy_filters/index.html.erb +2 -2
  139. data/app/views/decidim/admin/taxonomy_filters_selector/index.html.erb +2 -0
  140. data/app/views/decidim/admin/taxonomy_filters_selector/new.html.erb +2 -0
  141. data/app/views/decidim/admin/taxonomy_filters_selector/show.html.erb +2 -0
  142. data/app/views/decidim/admin/taxonomy_items/edit.html.erb +2 -0
  143. data/app/views/decidim/admin/taxonomy_items/new.html.erb +2 -0
  144. data/app/views/decidim/admin/users/index.html.erb +3 -2
  145. data/app/views/layouts/decidim/admin/_application.html.erb +1 -1
  146. data/config/locales/ar.yml +9 -49
  147. data/config/locales/bg.yml +9 -55
  148. data/config/locales/bs-BA.yml +4 -24
  149. data/config/locales/ca-IT.yml +130 -113
  150. data/config/locales/ca.yml +130 -113
  151. data/config/locales/cs.yml +126 -107
  152. data/config/locales/de.yml +114 -98
  153. data/config/locales/el.yml +17 -45
  154. data/config/locales/en.yml +130 -112
  155. data/config/locales/eo.yml +0 -7
  156. data/config/locales/es-MX.yml +130 -113
  157. data/config/locales/es-PY.yml +130 -113
  158. data/config/locales/es.yml +130 -113
  159. data/config/locales/eu.yml +159 -142
  160. data/config/locales/fi-plain.yml +129 -112
  161. data/config/locales/fi.yml +129 -112
  162. data/config/locales/fr-CA.yml +91 -142
  163. data/config/locales/fr.yml +91 -142
  164. data/config/locales/ga-IE.yml +0 -13
  165. data/config/locales/gl.yml +10 -41
  166. data/config/locales/he-IL.yml +1 -5
  167. data/config/locales/hu.yml +10 -52
  168. data/config/locales/id-ID.yml +4 -34
  169. data/config/locales/is-IS.yml +1 -16
  170. data/config/locales/it.yml +8 -69
  171. data/config/locales/ja.yml +129 -114
  172. data/config/locales/kaa.yml +4 -16
  173. data/config/locales/ko.yml +6 -40
  174. data/config/locales/lb.yml +9 -41
  175. data/config/locales/lt.yml +10 -52
  176. data/config/locales/lv.yml +8 -38
  177. data/config/locales/nl.yml +10 -46
  178. data/config/locales/no.yml +10 -46
  179. data/config/locales/pl.yml +9 -54
  180. data/config/locales/pt-BR.yml +121 -104
  181. data/config/locales/pt.yml +9 -42
  182. data/config/locales/ro-RO.yml +15 -51
  183. data/config/locales/ru.yml +4 -35
  184. data/config/locales/sk.yml +8 -814
  185. data/config/locales/sl.yml +1 -7
  186. data/config/locales/sq-AL.yml +1 -21
  187. data/config/locales/sr-CS.yml +4 -24
  188. data/config/locales/sv.yml +79 -89
  189. data/config/locales/th-TH.yml +0 -8
  190. data/config/locales/tr-TR.yml +33 -65
  191. data/config/locales/uk.yml +0 -26
  192. data/config/locales/val-ES.yml +0 -1
  193. data/config/locales/zh-CN.yml +9 -38
  194. data/config/locales/zh-TW.yml +10 -52
  195. data/config/routes.rb +4 -0
  196. data/decidim-admin.gemspec +7 -10
  197. data/lib/decidim/admin/engine.rb +5 -2
  198. data/lib/decidim/admin/form_builder.rb +3 -1
  199. data/lib/decidim/admin/menu.rb +1 -1
  200. data/lib/decidim/admin/test/admin_members_shared_examples.rb +119 -0
  201. data/lib/decidim/admin/test/admin_participatory_space_access_examples.rb +3 -3
  202. data/lib/decidim/admin/test/filterable_examples.rb +20 -11
  203. data/lib/decidim/admin/test/invite_participatory_space_admins_shared_examples.rb +17 -17
  204. data/lib/decidim/admin/test/invite_participatory_space_collaborators_shared_examples.rb +1 -1
  205. data/lib/decidim/admin/test/invite_participatory_space_moderators_shared_examples.rb +1 -1
  206. data/lib/decidim/admin/test/invite_participatory_space_users_shared_context.rb +1 -1
  207. data/lib/decidim/admin/test/manage_attachment_collections_examples.rb +3 -3
  208. data/lib/decidim/admin/test/manage_attachments_examples.rb +6 -6
  209. data/lib/decidim/admin/test/manage_component_permissions_examples.rb +5 -5
  210. data/lib/decidim/admin/test/manage_moderations_examples.rb +6 -6
  211. data/lib/decidim/admin/test/manage_participatory_space_publications_examples.rb +2 -2
  212. data/lib/decidim/admin/test/manage_resource_soft_deletion_examples.rb +3 -3
  213. data/lib/decidim/admin/version.rb +1 -1
  214. data/lib/decidim/admin.rb +0 -2
  215. metadata +40 -36
  216. data/app/commands/decidim/admin/create_participatory_space_private_user.rb +0 -98
  217. data/app/commands/decidim/admin/destroy_participatory_space_private_user.rb +0 -28
  218. data/app/commands/decidim/admin/process_participatory_space_private_user_import_csv.rb +0 -44
  219. data/app/commands/decidim/admin/publish_all_participatory_space_private_users.rb +0 -50
  220. data/app/commands/decidim/admin/unpublish_all_participatory_space_private_users.rb +0 -50
  221. data/app/commands/decidim/admin/update_participatory_space_private_user.rb +0 -11
  222. data/app/controllers/concerns/decidim/participatory_space_private_users/admin/filterable.rb +0 -34
  223. data/app/controllers/decidim/admin/concerns/has_private_users.rb +0 -169
  224. data/app/controllers/decidim/admin/concerns/has_private_users_csv_import.rb +0 -65
  225. data/app/forms/decidim/admin/participatory_space_private_user_csv_import_form.rb +0 -31
  226. data/app/forms/decidim/admin/participatory_space_private_user_form.rb +0 -24
  227. data/app/jobs/decidim/admin/destroy_private_users_follows_job.rb +0 -37
  228. data/app/jobs/decidim/admin/import_participatory_space_private_user_csv_job.rb +0 -27
  229. data/app/views/decidim/admin/devise/mailers/password_change.html.erb +0 -3
  230. data/app/views/decidim/admin/devise/mailers/reset_password_instructions.html.erb +0 -8
  231. data/app/views/decidim/admin/shared/_attachments.html.erb +0 -15
  232. /data/app/views/decidim/admin/{participatory_space_private_users → members}/_form.html.erb +0 -0
@@ -0,0 +1,52 @@
1
+ import { Controller } from "@hotwired/stimulus"
2
+
3
+ /**
4
+ * Toggles the visibility of the access mode options according to the
5
+ * "This space has members" checkbox.
6
+ *
7
+ * The controller expects to sit on the access accordion so it can
8
+ * query the checkbox and the `#access_mode` fieldset that lives inside.
9
+ */
10
+ export default class extends Controller {
11
+
12
+ /**
13
+ * Find the relevant inputs and attach the change listener.
14
+ * @returns {void}
15
+ */
16
+ connect() {
17
+ this.hasMembersCheckbox = this.element.querySelector("#has_members input[type='checkbox']")
18
+ this.accessModeFieldset = this.element.querySelector("#access_mode")
19
+
20
+ if (!this.hasMembersCheckbox || !this.accessModeFieldset) {
21
+ return
22
+ }
23
+
24
+ this.toggleAccessMode = this.toggleAccessMode.bind(this)
25
+ this.hasMembersCheckbox.addEventListener("change", this.toggleAccessMode)
26
+ this.toggleAccessMode()
27
+ }
28
+
29
+ /**
30
+ * Remove the listener bound during `connect`.
31
+ * @returns {void}
32
+ */
33
+ disconnect() {
34
+ if (this.hasMembersCheckbox && this.toggleAccessMode) {
35
+ this.hasMembersCheckbox.removeEventListener("change", this.toggleAccessMode)
36
+ }
37
+ }
38
+
39
+ /**
40
+ * Show or hide the access mode fieldset depending on the checkbox state.
41
+ * @returns {void}
42
+ */
43
+ toggleAccessMode() {
44
+ const showAccessMode = this.hasMembersCheckbox.checked
45
+
46
+ this.accessModeFieldset.disabled = !showAccessMode
47
+ this.accessModeFieldset.hidden = !showAccessMode
48
+ this.accessModeFieldset.style.display = showAccessMode
49
+ ? ""
50
+ : "none"
51
+ }
52
+ }
@@ -9,7 +9,7 @@ document.addEventListener("turbo:load", () => {
9
9
  sendToVerifiedUsers: document.querySelector("#newsletter_send_to_verified_users"),
10
10
  sendToParticipants: document.querySelector("#newsletter_send_to_participants"),
11
11
  sendToFollowers: document.querySelector("#newsletter_send_to_followers"),
12
- sendToPrivateMembers: document.querySelector("#newsletter_send_to_private_members"),
12
+ sendToMembers: document.querySelector("#newsletter_send_to_members"),
13
13
  verificationTypesSelect: document.querySelector("#verification_types_for_select"),
14
14
  participatorySpacesForSelect: document.querySelector("#participatory_spaces_for_select"),
15
15
  deliverButton: document.querySelector("#deliver-button"),
@@ -24,7 +24,7 @@ document.addEventListener("turbo:load", () => {
24
24
  checkboxes: [
25
25
  selectors.sendToParticipants,
26
26
  selectors.sendToFollowers,
27
- selectors.sendToPrivateMembers
27
+ selectors.sendToMembers
28
28
  ].filter(Boolean)
29
29
  };
30
30
 
@@ -22,10 +22,6 @@
22
22
  @apply top-2;
23
23
  }
24
24
 
25
- &__pick-calendar {
26
- @apply z-[3];
27
- }
28
-
29
25
  &__close-calendar {
30
26
  @apply z-[3];
31
27
  }
@@ -24,7 +24,7 @@
24
24
  @use "stylesheets/decidim/admin/datepicker";
25
25
  @use "stylesheets/decidim/admin/minimap";
26
26
  @use "stylesheets/decidim/admin/proposal_status";
27
- @use "stylesheets/decidim/editor_suggestions";
27
+ @use "stylesheets/decidim/tribute";
28
28
 
29
29
  :root {
30
30
  --primary: #e02d2d;
@@ -46,14 +46,14 @@ module Decidim
46
46
  end
47
47
 
48
48
  def filters_present?
49
- @form.send_to_followers || @form.send_to_participants || @form.send_to_private_members
49
+ @form.send_to_followers || @form.send_to_participants || @form.send_to_members
50
50
  end
51
51
 
52
52
  def apply_filters(recipients)
53
53
  filters = [
54
54
  user_id_of_followers,
55
55
  participant_ids,
56
- private_member_ids
56
+ member_ids
57
57
  ].compact.flatten.uniq
58
58
 
59
59
  filters.empty? ? recipients.none : recipients.where(id: filters)
@@ -119,17 +119,17 @@ module Decidim
119
119
  participant_ids.flatten.compact.uniq
120
120
  end
121
121
 
122
- def private_spaces
122
+ def spaces_with_members
123
123
  return [] if spaces.blank?
124
124
 
125
- spaces.select { |space| space.try(:private_space?) }
125
+ spaces.select { |space| space.respond_to?(:members) && space.members.exists? }
126
126
  end
127
127
 
128
- def private_member_ids
129
- return unless @form.send_to_private_members
130
- return [] if private_spaces.blank?
128
+ def member_ids
129
+ return unless @form.send_to_members
130
+ return [] if spaces_with_members.blank?
131
131
 
132
- Decidim::ParticipatorySpacePrivateUser.private_user_ids_for_participatory_spaces(private_spaces)
132
+ Decidim::ParticipatorySpace::Member.member_ids_for_participatory_spaces(spaces_with_members)
133
133
  end
134
134
  end
135
135
  end
@@ -1,8 +1,10 @@
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
1
3
  <%= cell("decidim/announcement", announcement_body, callout_class: current_user.admin_terms_accepted? ? "success" : "warning" ) %>
2
4
 
3
5
  <div class="item_show__header">
4
6
  <h1 class="item_show__header-title">
5
- <%= t("title", scope: "decidim.admin.admin_terms_of_service") %>
7
+ <%= t(".title") %>
6
8
  </h1>
7
9
  </div>
8
10
 
@@ -1,8 +1,9 @@
1
- <% add_decidim_page_title(t("decidim.admin.titles.area_types")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="card" id="area-types">
3
4
  <div class="item_show__header">
4
5
  <h1 class="item_show__header-title">
5
- <%= t "decidim.admin.titles.area_types" %>
6
+ <%= t(".title") %>
6
7
  <% if allowed_to? :create, :area_type %>
7
8
  <%= link_to t("actions.add", scope: "decidim.admin"), [:new, :area_type], class: "button button__sm button__secondary new" %>
8
9
  <% end %>
@@ -1,8 +1,9 @@
1
- <% add_decidim_page_title(t("areas", scope: "decidim.admin.titles")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="card" id="areas">
3
4
  <div class="item_show__header">
4
5
  <h1 class="item_show__header-title">
5
- <%= t "decidim.admin.titles.areas" %>
6
+ <%= t ".title" %>
6
7
  <% if allowed_to? :create, :area %>
7
8
  <%= link_to t("actions.add", scope: "decidim.admin"), new_area_path, class: "button button__sm button__secondary new" %>
8
9
  <% end %>
@@ -1,8 +1,8 @@
1
- <% add_decidim_page_title(t("attachment_collections.edit.title", scope: "decidim.admin")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <div class="item_show__header">
4
4
  <h1 class="item_show__header-title">
5
- <%= t("attachment_collections.edit.title", scope: "decidim.admin") %>
5
+ <%= t(".title") %>
6
6
  </h1>
7
7
  </div>
8
8
 
@@ -1,9 +1,9 @@
1
- <% add_decidim_page_title(t("attachment_collections.index.attachment_collections_title", scope: "decidim.admin")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <div class="card" id="attachment_collections">
4
4
  <div class="item_show__header">
5
5
  <h1 class="item_show__header-title">
6
- <%= t("attachment_collections.index.attachment_collections_title", scope: "decidim.admin") %>
6
+ <%= t(".title") %>
7
7
  <% if allowed_to? :create, :attachment_collection %>
8
8
  <%= link_to t("actions.attachment_collection.new", scope: "decidim.admin"), url_for(action: :new), class: "button button__sm button__secondary new" %>
9
9
  <% end %>
@@ -51,7 +51,7 @@
51
51
  <% end %>
52
52
  <% else %>
53
53
  <div class="dropdown__button-disabled">
54
- <%= with_tooltip t("tooltips.deleted_attachment_collections_info", scope: "decidim.admin"), class: :left do %>
54
+ <%= with_tooltip t("tooltips.deleted_attachment_collections_info", scope: "decidim.admin") do %>
55
55
  <%= icon "delete-bin-line", class: "text-gray" %>
56
56
  <span>
57
57
  <%= t("actions.destroy", scope: "decidim.admin") %>
@@ -1,7 +1,7 @@
1
- <% add_decidim_page_title(t("attachment_collections.new.title", scope: "decidim.admin")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="item_show__header">
3
3
  <h1 class="item_show__header-title">
4
- <%= t("attachment_collections.new.title", scope: "decidim.admin") %>
4
+ <%= t(".title") %>
5
5
  </h1>
6
6
  </div>
7
7
 
@@ -1,8 +1,9 @@
1
- <% add_decidim_page_title(t(".attachments_title")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="card" id="attachments">
3
4
  <div class="item_show__header">
4
5
  <h1 class="item_show__header-title">
5
- <%= t(".attachments_title") %>
6
+ <%= t(".title") %>
6
7
  <% if allowed_to? :create, :attachment %>
7
8
  <%= link_to t("actions.attachment.new", scope: "decidim.admin"), url_for(action: :new), class: "button button__sm button__secondary new" %>
8
9
  <% end %>
@@ -1,8 +1,8 @@
1
- <% add_decidim_page_title(t("authorization_workflows", scope: "decidim.admin.titles")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <div class="item_show__header">
4
4
  <h1 class="item_show__header-title">
5
- <%= t("authorization_workflows", scope: "decidim.admin.titles") %>
5
+ <%= t(".title") %>
6
6
  </h1>
7
7
  </div>
8
8
 
@@ -1,4 +1,5 @@
1
1
  <% add_decidim_page_title(t(".title", name: user.name)) %>
2
+
2
3
  <div class="item_show__header">
3
4
  <h1 class="item_show__header-title">
4
5
  <%= t(".title", name: user.name) %>
@@ -98,7 +98,7 @@
98
98
  <hr>
99
99
  <li class="dropdown__item">
100
100
  <div class="dropdown__button-disabled">
101
- <%= with_tooltip t("tooltips.deleted_component_info", scope: "decidim.admin"), class: :left do %>
101
+ <%= with_tooltip t("tooltips.deleted_component_info", scope: "decidim.admin") do %>
102
102
  <%= icon "delete-bin-line", class: "text-gray" %>
103
103
  <span>
104
104
  <%= t("actions.soft_delete", scope: "decidim.admin") %>
@@ -1,9 +1,9 @@
1
- <% add_decidim_page_title(t("components.title", scope: "decidim.admin")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <div class="card">
4
4
  <div class="item_show__header">
5
5
  <h1 class="item_show__header-title">
6
- <%= t("components.title", scope: "decidim.admin") %>
6
+ <%= t(".title") %>
7
7
 
8
8
  <% if allowed_to?(:create, :component) %>
9
9
  <div class="relative">
@@ -1,9 +1,9 @@
1
- <% add_decidim_page_title(t("components.manage_trash.title", scope: "decidim.admin")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <div class="card">
4
4
  <div class="item_show__header">
5
5
  <h1 class="item_show__header-title">
6
- <%= t("components.manage_trash.title", scope: "decidim.admin") %>
6
+ <%= t(".title") %>
7
7
  </h1>
8
8
  </div>
9
9
  </div>
@@ -1,6 +1,8 @@
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
1
3
  <div class="card">
2
4
  <div class="card-divider">
3
- <div class="card-title">Transfer User</div>
5
+ <div class="card-title"><%= t(".title") %></div>
4
6
  </div>
5
7
  <div class="table-scroll">
6
8
  <table class="table-list">
@@ -1,7 +1,8 @@
1
- <% add_decidim_page_title(t("title", scope: "decidim.admin.conflicts")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="item_show__header">
3
4
  <h1 class="item_show__header-title">
4
- <%= t("title", scope: "decidim.admin.conflicts") %>
5
+ <%= t(".title") %>
5
6
  </h1>
6
7
  </div>
7
8
 
@@ -1,8 +1,8 @@
1
- <% add_decidim_page_title(t("decidim.admin.titles.dashboard")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <div class="item_show__header">
4
4
  <h1 class="item_show__header-title">
5
- <%= t "decidim.admin.titles.dashboard" %> <%= current_organization_name %>
5
+ <%= t(".title") %> <%= current_organization_name %>
6
6
  </h1>
7
7
  </div>
8
8
 
@@ -14,7 +14,7 @@
14
14
  <% if count_pending_moderations.positive? && allowed_to?(:read, :global_moderation) %>
15
15
  <div class="grid-x grid-margin-x">
16
16
  <div class="cell small-6 medium-6 large-6">
17
- <%= render "pending_moderations" %>
17
+ <%= render "decidim/admin/dashboard/pending_moderations" %>
18
18
  </div>
19
19
  </div>
20
20
  <% end %>
@@ -46,6 +46,6 @@
46
46
  <% end %>
47
47
 
48
48
  <% if current_user.admin_terms_accepted? %>
49
- <%= link_to( t("title", scope: "decidim.admin.admin_terms_of_service"), admin_terms_show_path, class: "button button__text-secondary") %>
49
+ <%= link_to( t("title", scope: "decidim.admin.admin_terms.show"), admin_terms_show_path, class: "button button__text-secondary") %>
50
50
  <% end %>
51
51
  </div>
@@ -1 +1,3 @@
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
1
3
  <%= render partial: "form", object: @form %>
@@ -1,4 +1,5 @@
1
- <% add_decidim_page_title(t("impersonatable_users", scope: "decidim.admin.titles")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <% if current_organization.available_authorizations.empty? %>
3
4
  <div>
4
5
  <%= cell("decidim/announcement", t(".needs_authorization_warning"), callout_class: "warning" ) %>
@@ -7,7 +8,7 @@
7
8
 
8
9
  <div class="item_show__header">
9
10
  <h1 class="item_show__header-title">
10
- <%= t "decidim.admin.titles.impersonatable_users" %>
11
+ <%= t ".title" %>
11
12
  <% if allowed_to? :impersonate, :impersonatable_user, user: new_managed_user %>
12
13
  <%= link_to t(".impersonate_new_managed_user"), new_impersonatable_user_impersonation_path(:new_managed_user), class: "button button__sm button__secondary #{"disabled" if current_organization.available_authorizations.empty?}" %>
13
14
  <% end %>
@@ -28,7 +28,7 @@
28
28
  <div class="row column">
29
29
  <div id="authorization-handler-<%= f.object.handler_name %>"
30
30
  class="authorization-handler">
31
- <%= render "handler_form", handler_form: f %>
31
+ <%= render "decidim/admin/impersonations/handler_form", handler_form: f %>
32
32
  </div>
33
33
  </div>
34
34
  <% end %>
@@ -40,7 +40,7 @@
40
40
  <div id="authorization-handler-<%= authorization.handler_name %>"
41
41
  class="authorization-handler"
42
42
  style="display:none">
43
- <%= render "handler_form", handler_form: f %>
43
+ <%= render "decidim/admin/impersonations/handler_form", handler_form: f %>
44
44
  </div>
45
45
  </div>
46
46
  <% end %>
@@ -1,8 +1,9 @@
1
- <% add_decidim_page_title(t("impersonate_new_managed_user", scope: "decidim.admin.impersonations.new")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="item_show__header">
3
4
  <h1 class="item_show__header-title">
4
5
  <% if creating_managed_user? %>
5
- <%= t(".impersonate_new_managed_user") %>
6
+ <%= t(".title") %>
6
7
  <% else %>
7
8
  <% if @form.user.managed? %>
8
9
  <%= t(".impersonate_existing_managed_user", name: @form.user.name) %>
@@ -1,4 +1,5 @@
1
1
  <% add_decidim_page_title(import_manifest.message(:title, self)) %>
2
+
2
3
  <div class="item_show__header">
3
4
  <h1 class="item_show__header-title">
4
5
  <%= import_manifest.message(:title, self) %>
@@ -1,7 +1,7 @@
1
1
  <div class="card">
2
2
  <div class="card-divider">
3
3
  <h2 class="card-title">
4
- <%= t "decidim.admin.titles.admin_log" %>
4
+ <%= t "decidim.admin.logs.index.title" %>
5
5
  </h2>
6
6
  </div>
7
7
  <%= render partial: "decidim/admin/logs/filters" if defined?(display_filters) && display_filters %>
@@ -1,4 +1,4 @@
1
- <% add_decidim_page_title(t("admin_log", scope: "decidim.admin.titles")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
3
  <%= render partial: "decidim/admin/logs/logs_list", locals: { logs:, empty_logs: no_logs_available?, display_filters: true } %>
4
4
  <%= decidim_paginate logs %>
@@ -1,8 +1,9 @@
1
- <% add_decidim_page_title(t("decidim.admin.titles.impersonations")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="card">
3
4
  <div class="item_show__header">
4
5
  <h1 class="item_show__header-title">
5
- <%= t "decidim.admin.titles.impersonations" %>
6
+ <%= t ".title" %>
6
7
  </h1>
7
8
  </div>
8
9
  <div class="table-scroll">
@@ -23,9 +24,9 @@
23
24
  <td><%= impersonation_log.admin.name %></td>
24
25
  <td><%= impersonation_log.user.name %></td>
25
26
  <td><%= impersonation_log.reason %></td>
26
- <td><%= impersonation_log.started_at ? l(impersonation_log.started_at, format: :long) : nil %></td>
27
- <td><%= impersonation_log.ended_at ? l(impersonation_log.ended_at, format: :long) : nil %></td>
28
- <td><%= impersonation_log.expired_at ? l(impersonation_log.expired_at, format: :long) : nil %></td>
27
+ <td><%= impersonation_log.started_at ? l(impersonation_log.started_at, format: :decidim_short) : nil %></td>
28
+ <td><%= impersonation_log.ended_at ? l(impersonation_log.ended_at, format: :decidim_short) : nil %></td>
29
+ <td><%= impersonation_log.expired_at ? l(impersonation_log.expired_at, format: :decidim_short) : nil %></td>
29
30
  </tr>
30
31
  <% end %>
31
32
  </tbody>
@@ -1,7 +1,8 @@
1
- <% add_decidim_page_title(t(".new_managed_user_promotion")) %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+
2
3
  <div class="item_show__header">
3
4
  <h1 class="item_show__header-title">
4
- <%= t(".new_managed_user_promotion") %>
5
+ <%= t(".title") %>
5
6
  </h1>
6
7
  </div>
7
8
 
@@ -7,8 +7,8 @@
7
7
 
8
8
  <div class="item__edit item__edit-1col">
9
9
  <div class="item__edit-form">
10
- <%= decidim_form_for(@form, url: participatory_space_private_user_path(current_participatory_space, @private_user), html: { class: "form-defaults form edit_participatory_space_private_user" }) do |f| %>
11
- <%= render partial: "decidim/admin/participatory_space_private_users/form", object: f %>
10
+ <%= decidim_form_for(@form, url: member_path(current_participatory_space, @member), html: { class: "form-defaults form edit_member" }) do |f| %>
11
+ <%= render partial: "decidim/admin/members/form", object: f %>
12
12
  <div class="item__edit-sticky">
13
13
  <div class="item__edit-sticky-container">
14
14
  <%= f.submit t(".update"), class: "button button__sm button__secondary" %>
@@ -1,18 +1,18 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
- <div class="card" id="private_users">
2
+ <div class="card" id="members">
3
3
  <div class="item_show__header">
4
4
  <h1 class="item_show__header-title">
5
5
  <%= t(".title") %>
6
- <% if allowed_to? :create, :space_private_user %>
7
- <%= link_to t(".publish_all"), publish_all_participatory_space_private_users_path(current_participatory_space), class: "button button__sm button__transparent-secondary publish-all", method: :post %>
8
- <%= link_to t(".unpublish_all"), unpublish_all_participatory_space_private_users_path(current_participatory_space), class: "button button__sm button__transparent-secondary unpublish-all", method: :post %>
9
- <%= link_to t(".import_via_csv"), new_participatory_space_private_users_csv_imports_path, class: "button button__sm button__transparent-secondary import" %>
10
- <%= link_to t("actions.participatory_space_private_user.new", scope: "decidim.admin"), url_for(action: :new), class: "button button__sm button__secondary new" %>
6
+ <% if allowed_to? :create, :space_member %>
7
+ <%= link_to t(".publish_all"), publish_all_members_path(current_participatory_space), class: "button button__sm button__transparent-secondary publish-all", method: :post %>
8
+ <%= link_to t(".unpublish_all"), unpublish_all_members_path(current_participatory_space), class: "button button__sm button__transparent-secondary unpublish-all", method: :post %>
9
+ <%= link_to t(".import_via_csv"), new_members_csv_imports_path, class: "button button__sm button__transparent-secondary import" %>
10
+ <%= link_to t("actions.member.new", scope: "decidim.admin"), url_for(action: :new), class: "button button__sm button__secondary new" %>
11
11
  <% end %>
12
12
  </h1>
13
13
  </div>
14
- <%= admin_filter_selector(:participatory_space_private_users) %>
15
- <% if participatory_space_private_users.any? %>
14
+ <%= admin_filter_selector(:members) %>
15
+ <% if members.any? %>
16
16
  <div class="table-stacked mt-4">
17
17
  <table class="table-list">
18
18
  <thead>
@@ -36,39 +36,39 @@
36
36
  </tr>
37
37
  </thead>
38
38
  <tbody>
39
- <% participatory_space_private_users.each do |private_user| %>
39
+ <% members.each do |member| %>
40
40
  <tr>
41
41
  <td data-label="<%= t("models.user.fields.name", scope: "decidim.admin") %>">
42
- <%= private_user.user.name %>
42
+ <%= member.user.name %>
43
43
  </td>
44
44
  <td data-label="<%= t("models.user.fields.email", scope: "decidim.admin") %>">
45
- <%= private_user.user.email %>
45
+ <%= member.user.email %>
46
46
  </td>
47
47
  <td data-label="<%= t("models.user.fields.published", scope: "decidim.admin") %>">
48
- <% if private_user.published %>
48
+ <% if member.published %>
49
49
  <%= icon "check-line", class: "text-success" %>
50
50
  <% end %>
51
51
  </td>
52
52
  <td data-label="<%= t("models.user.fields.invitation_sent_at", scope: "decidim.admin") %>">
53
- <% if private_user.user.invitation_sent_at %>
54
- <%= l private_user.user.invitation_sent_at, format: :short %>
53
+ <% if member.user.invitation_sent_at %>
54
+ <%= l member.user.invitation_sent_at, format: :short %>
55
55
  <% end %>
56
56
  </td>
57
57
  <td data-label="<%= t("models.user.fields.invitation_accepted_at", scope: "decidim.admin") %>">
58
- <% if private_user.user.invitation_accepted_at %>
59
- <%= l private_user.user.invitation_accepted_at, format: :short %>
58
+ <% if member.user.invitation_accepted_at %>
59
+ <%= l member.user.invitation_accepted_at, format: :short %>
60
60
  <% end %>
61
61
  </td>
62
62
  <td data-label="<%= t("decidim.admin.actions.actions") %>" class="table-list__actions">
63
- <button type="button" data-controller="dropdown" data-target="actions-private-user-<%= private_user.id %>" aria-label="<%= t("decidim.admin.actions.actions_label", resource: private_user.user.name) %>">
63
+ <button type="button" data-controller="dropdown" data-target="actions-private-user-<%= member.id %>" aria-label="<%= t("decidim.admin.actions.actions_label", resource: member.user.name) %>">
64
64
  <%= icon "more-fill", class: "text-secondary" %>
65
65
  </button>
66
66
 
67
67
  <div class="inline-block relative">
68
- <ul id="actions-private-user-<%= private_user.id %>" class="dropdown dropdown__action" aria-hidden="true">
69
- <% if allowed_to?(:edit, :space_private_user, private_user: private_user) %>
68
+ <ul id="actions-private-user-<%= member.id %>" class="dropdown dropdown__action" aria-hidden="true">
69
+ <% if allowed_to?(:edit, :space_member, member: member) %>
70
70
  <li class="dropdown__item">
71
- <%= link_to edit_participatory_space_private_user_path(current_participatory_space, private_user), class: "dropdown__button" do %>
71
+ <%= link_to edit_member_path(current_participatory_space, member), class: "dropdown__button" do %>
72
72
  <%= icon "pencil-line" %>
73
73
  <%= t("actions.edit", scope: "decidim.admin") %>
74
74
  <% end %>
@@ -77,9 +77,9 @@
77
77
  <hr>
78
78
  <% end %>
79
79
 
80
- <% if allowed_to?(:invite, :space_private_user, private_user: private_user) && private_user.user.invited_to_sign_up? %>
80
+ <% if allowed_to?(:invite, :space_member, member: member) && member.user.invited_to_sign_up? %>
81
81
  <li class="dropdown__item">
82
- <%= link_to resend_invitation_participatory_space_private_user_path(current_participatory_space, private_user), method: :post, class: "dropdown__button" do %>
82
+ <%= link_to resend_invitation_member_path(current_participatory_space, member), method: :post, class: "dropdown__button" do %>
83
83
  <%= icon "refresh-line" %>
84
84
  <%= t("actions.resend_invitation", scope: "decidim.admin") %>
85
85
  <% end %>
@@ -88,9 +88,9 @@
88
88
  <hr>
89
89
  <% end %>
90
90
 
91
- <% if allowed_to?(:destroy, :space_private_user, private_user: private_user) %>
91
+ <% if allowed_to?(:destroy, :space_member, member: member) %>
92
92
  <li class="dropdown__item">
93
- <%= link_to participatory_space_private_user_path(current_participatory_space, private_user), method: :delete, data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") }, class: "dropdown__button" do %>
93
+ <%= link_to member_path(current_participatory_space, member), method: :delete, data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") }, class: "dropdown__button" do %>
94
94
  <%= icon "delete-bin-line" %>
95
95
  <%= t("actions.destroy", scope: "decidim.admin") %>
96
96
  <% end %>
@@ -104,6 +104,6 @@
104
104
  </tbody>
105
105
  </table>
106
106
  </div>
107
- <%= decidim_paginate participatory_space_private_users %>
107
+ <%= decidim_paginate members %>
108
108
  <% end %>
109
109
  </div>
@@ -7,8 +7,8 @@
7
7
 
8
8
  <div class="item__edit item__edit-1col">
9
9
  <div class="item__edit-form">
10
- <%= decidim_form_for(@form, url: participatory_space_private_users_path(current_participatory_space), html: { class: "form-defaults form new_participatory_space_private_user" }) do |f| %>
11
- <%= render partial: "decidim/admin/participatory_space_private_users/form", object: f %>
10
+ <%= decidim_form_for(@form, url: members_path(current_participatory_space), html: { class: "form-defaults form new_member" }) do |f| %>
11
+ <%= render partial: "decidim/admin/members/form", object: f %>
12
12
  <div class="item__edit-sticky">
13
13
  <div class="item__edit-sticky-container">
14
14
  <%= f.submit t(".create"), class: "button button__sm button__secondary" %>
@@ -18,7 +18,7 @@
18
18
  <% if @count != 0 %>
19
19
  <p><%= t(".destroy.explanation", count: @count) %></p>
20
20
  <%= link_to t(".destroy.button"),
21
- destroy_all_participatory_space_private_users_csv_imports_path,
21
+ destroy_all_members_csv_imports_path,
22
22
  method: :delete,
23
23
  class: "button button__sm button__secondary alert",
24
24
  data: { confirm: t(".destroy.confirm") } %>
@@ -35,7 +35,7 @@
35
35
  </h2>
36
36
  </div>
37
37
  <div class="card-section p-4">
38
- <%= decidim_form_for(@form, url: participatory_space_private_users_csv_imports_path, html: { class: "form form-defaults" }) do |form| %>
38
+ <%= decidim_form_for(@form, url: members_csv_imports_path, html: { class: "form form-defaults" }) do |form| %>
39
39
  <div>
40
40
  <p><%= t(".explanation") %></p>
41
41
  <p><%= t(".example_file") %></p>