decidim-participatory_processes 0.27.9 → 0.28.0.rc4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (254) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/app/cells/decidim/participatory_process_groups/content_block_cell.rb +5 -1
  4. data/app/cells/decidim/participatory_process_groups/content_blocks/extra_data/recent_users.erb +1 -0
  5. data/app/cells/decidim/participatory_process_groups/content_blocks/extra_data_cell.rb +71 -0
  6. data/app/cells/decidim/participatory_process_groups/content_blocks/main_data/content.erb +30 -0
  7. data/app/cells/decidim/participatory_process_groups/content_blocks/main_data_cell.rb +77 -0
  8. data/app/cells/decidim/participatory_process_groups/content_blocks/related_processes_cell.rb +47 -0
  9. data/app/cells/decidim/participatory_process_groups/content_blocks/statistics_cell.rb +2 -2
  10. data/app/cells/decidim/participatory_process_groups/process_filters_cell.rb +4 -4
  11. data/app/cells/decidim/participatory_processes/content_block_cell.rb +21 -0
  12. data/app/cells/decidim/participatory_processes/content_blocks/extra_data/active_step.erb +1 -0
  13. data/app/cells/decidim/participatory_processes/content_blocks/extra_data_cell.rb +60 -0
  14. data/app/cells/decidim/participatory_processes/content_blocks/hero_cell.rb +29 -0
  15. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb +14 -27
  16. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_settings_form/show.erb +1 -1
  17. data/app/cells/decidim/participatory_processes/content_blocks/main_data_cell.rb +34 -0
  18. data/app/cells/decidim/participatory_processes/content_blocks/metadata_cell.rb +23 -0
  19. data/app/cells/decidim/participatory_processes/content_blocks/metrics_cell.rb +25 -0
  20. data/app/cells/decidim/participatory_processes/content_blocks/processes_settings_form/show.erb +3 -0
  21. data/app/cells/decidim/participatory_processes/content_blocks/processes_settings_form_cell.rb +28 -0
  22. data/app/cells/decidim/participatory_processes/content_blocks/related_processes/content.erb +1 -0
  23. data/app/cells/decidim/participatory_processes/content_blocks/related_processes_cell.rb +53 -0
  24. data/app/cells/decidim/participatory_processes/content_blocks/stats_cell.rb +17 -0
  25. data/app/cells/decidim/participatory_processes/filtered_participatory_processes_cell.rb +1 -1
  26. data/app/cells/decidim/participatory_processes/process_cell.rb +2 -2
  27. data/app/cells/decidim/participatory_processes/process_dropdown_metadata/metadata.erb +22 -0
  28. data/app/cells/decidim/participatory_processes/process_dropdown_metadata_cell.rb +39 -0
  29. data/app/cells/decidim/participatory_processes/process_filters/show.erb +4 -5
  30. data/app/cells/decidim/participatory_processes/process_filters/type_filter.erb +1 -1
  31. data/app/cells/decidim/participatory_processes/process_filters_cell.rb +6 -6
  32. data/app/cells/decidim/participatory_processes/process_g_cell.rb +31 -0
  33. data/app/cells/decidim/participatory_processes/process_group_cell.rb +2 -2
  34. data/app/cells/decidim/participatory_processes/process_group_g_cell.rb +23 -0
  35. data/app/cells/decidim/participatory_processes/process_group_metadata_cell.rb +46 -0
  36. data/app/cells/decidim/participatory_processes/process_group_s_cell.rb +5 -13
  37. data/app/cells/decidim/participatory_processes/process_metadata_cell.rb +44 -0
  38. data/app/cells/decidim/participatory_processes/process_metadata_g_cell.rb +15 -0
  39. data/app/cells/decidim/participatory_processes/process_s_cell.rb +5 -25
  40. data/app/cells/decidim/participatory_processes/process_step/show.erb +48 -0
  41. data/app/cells/decidim/participatory_processes/process_step_cell.rb +30 -0
  42. data/app/cells/decidim/participatory_processes/processes/show.erb +16 -0
  43. data/app/cells/decidim/participatory_processes/processes_cell.rb +24 -0
  44. data/app/commands/decidim/participatory_processes/admin/activate_participatory_process_step.rb +1 -1
  45. data/app/commands/decidim/participatory_processes/admin/copy_participatory_process.rb +2 -2
  46. data/app/commands/decidim/participatory_processes/admin/create_participatory_process.rb +3 -1
  47. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_group.rb +4 -2
  48. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_step.rb +1 -1
  49. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_type.rb +1 -1
  50. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_group.rb +1 -1
  51. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_step.rb +1 -1
  52. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_type.rb +1 -1
  53. data/app/commands/decidim/participatory_processes/admin/import_participatory_process.rb +1 -1
  54. data/app/commands/decidim/participatory_processes/admin/reorder_participatory_process_steps.rb +1 -1
  55. data/app/commands/decidim/participatory_processes/admin/update_participatory_process.rb +1 -1
  56. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_group.rb +2 -2
  57. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_step.rb +1 -1
  58. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_type.rb +1 -1
  59. data/app/constraints/decidim/participatory_processes/current_participatory_process.rb +1 -1
  60. data/app/controllers/decidim/participatory_processes/admin/application_controller.rb +29 -0
  61. data/app/controllers/decidim/participatory_processes/admin/categories_controller.rb +2 -0
  62. data/app/controllers/decidim/participatory_processes/admin/concerns/participatory_process_admin.rb +3 -1
  63. data/app/controllers/decidim/participatory_processes/admin/moderations/reports_controller.rb +1 -1
  64. data/app/controllers/decidim/participatory_processes/admin/moderations_controller.rb +1 -1
  65. data/app/controllers/decidim/participatory_processes/admin/participatory_process_attachment_collections_controller.rb +5 -0
  66. data/app/controllers/decidim/participatory_processes/admin/participatory_process_attachments_controller.rb +5 -0
  67. data/app/controllers/decidim/participatory_processes/admin/participatory_process_group_landing_page_content_blocks_controller.rb +1 -5
  68. data/app/controllers/decidim/participatory_processes/admin/participatory_process_group_landing_page_controller.rb +24 -7
  69. data/app/controllers/decidim/participatory_processes/admin/participatory_process_groups_controller.rb +16 -0
  70. data/app/controllers/decidim/participatory_processes/admin/participatory_process_imports_controller.rb +14 -0
  71. data/app/controllers/decidim/participatory_processes/admin/participatory_process_landing_page_content_blocks_controller.rb +37 -0
  72. data/app/controllers/decidim/participatory_processes/admin/participatory_process_landing_page_controller.rb +37 -0
  73. data/app/controllers/decidim/participatory_processes/admin/participatory_process_publications_controller.rb +9 -29
  74. data/app/controllers/decidim/participatory_processes/admin/participatory_process_step_activations_controller.rb +1 -1
  75. data/app/controllers/decidim/participatory_processes/admin/participatory_process_steps_controller.rb +16 -4
  76. data/app/controllers/decidim/participatory_processes/admin/participatory_process_types_controller.rb +19 -0
  77. data/app/controllers/decidim/participatory_processes/admin/participatory_process_user_roles_controller.rb +8 -91
  78. data/app/controllers/decidim/participatory_processes/admin/participatory_processes_controller.rb +3 -0
  79. data/app/controllers/decidim/participatory_processes/participatory_process_groups_controller.rb +14 -1
  80. data/app/controllers/decidim/participatory_processes/participatory_processes_controller.rb +19 -4
  81. data/app/events/decidim/participatory_process_role_assigned_event.rb +6 -6
  82. data/app/events/decidim/participatory_process_step_activated_event.rb +5 -4
  83. data/app/events/decidim/participatory_process_step_changed_event.rb +5 -4
  84. data/app/forms/decidim/participatory_processes/admin/participatory_process_copy_form.rb +1 -1
  85. data/app/forms/decidim/participatory_processes/admin/participatory_process_form.rb +1 -1
  86. data/app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb +1 -1
  87. data/app/forms/decidim/participatory_processes/admin/participatory_process_step_form.rb +2 -2
  88. data/app/forms/decidim/participatory_processes/admin/participatory_process_user_role_form.rb +2 -18
  89. data/app/helpers/decidim/participatory_processes/admin/participatory_process_helper.rb +1 -0
  90. data/app/helpers/decidim/participatory_processes/application_helper.rb +5 -0
  91. data/app/helpers/decidim/participatory_processes/participatory_process_helper.rb +37 -9
  92. data/app/helpers/decidim/participatory_processes/participatory_space_content_blocks_helper.rb +17 -0
  93. data/app/jobs/decidim/participatory_processes/change_active_step_job.rb +35 -0
  94. data/app/models/decidim/participatory_process.rb +5 -5
  95. data/app/models/decidim/participatory_process_group.rb +4 -0
  96. data/app/models/decidim/participatory_process_user_role.rb +5 -34
  97. data/app/packs/entrypoints/decidim_participatory_processes.js +0 -2
  98. data/app/packs/src/decidim/participatory_processes/admin/participatory_processes.js +2 -2
  99. data/app/permissions/decidim/participatory_processes/permissions.rb +11 -15
  100. data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_group_presenter.rb +2 -2
  101. data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_presenter.rb +2 -2
  102. data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_type_presenter.rb +2 -2
  103. data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_user_role_presenter.rb +2 -2
  104. data/app/presenters/decidim/participatory_processes/admin_log/step_presenter.rb +2 -2
  105. data/app/presenters/decidim/participatory_processes/participatory_process_group_stats_presenter.rb +4 -40
  106. data/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb +0 -68
  107. data/app/presenters/decidim/participatory_processes/participatory_process_presenter.rb +6 -0
  108. data/app/presenters/decidim/participatory_processes/participatory_process_stats_presenter.rb +3 -42
  109. data/app/queries/decidim/participatory_processes/admin/admin_users.rb +1 -1
  110. data/app/queries/decidim/participatory_processes/admin/moderators.rb +1 -1
  111. data/app/serializers/decidim/participatory_processes/participatory_process_importer.rb +4 -4
  112. data/app/views/decidim/participatory_processes/admin/participatory_process_copies/_form.html.erb +24 -29
  113. data/app/views/decidim/participatory_processes/admin/participatory_process_copies/new.html.erb +16 -5
  114. data/app/views/decidim/participatory_processes/admin/participatory_process_groups/_form.html.erb +72 -50
  115. data/app/views/decidim/participatory_processes/admin/participatory_process_groups/edit.html.erb +15 -9
  116. data/app/views/decidim/participatory_processes/admin/participatory_process_groups/index.html.erb +49 -54
  117. data/app/views/decidim/participatory_processes/admin/participatory_process_groups/new.html.erb +28 -5
  118. data/app/views/decidim/participatory_processes/admin/participatory_process_imports/_form.html.erb +33 -39
  119. data/app/views/decidim/participatory_processes/admin/participatory_process_imports/new.html.erb +18 -5
  120. data/app/views/decidim/participatory_processes/admin/participatory_process_steps/_form.html.erb +18 -25
  121. data/app/views/decidim/participatory_processes/admin/participatory_process_steps/edit.html.erb +16 -5
  122. data/app/views/decidim/participatory_processes/admin/participatory_process_steps/index.html.erb +54 -54
  123. data/app/views/decidim/participatory_processes/admin/participatory_process_steps/new.html.erb +18 -5
  124. data/app/views/decidim/participatory_processes/admin/participatory_process_steps/show.html.erb +2 -2
  125. data/app/views/decidim/participatory_processes/admin/participatory_process_types/_form.html.erb +6 -8
  126. data/app/views/decidim/participatory_processes/admin/participatory_process_types/edit.html.erb +14 -6
  127. data/app/views/decidim/participatory_processes/admin/participatory_process_types/index.html.erb +47 -50
  128. data/app/views/decidim/participatory_processes/admin/participatory_process_types/new.html.erb +14 -6
  129. data/app/views/decidim/participatory_processes/admin/participatory_process_user_roles/_form.html.erb +14 -18
  130. data/app/views/decidim/participatory_processes/admin/participatory_process_user_roles/edit.html.erb +17 -6
  131. data/app/views/decidim/participatory_processes/admin/participatory_process_user_roles/index.html.erb +59 -60
  132. data/app/views/decidim/participatory_processes/admin/participatory_process_user_roles/new.html.erb +16 -5
  133. data/app/views/decidim/participatory_processes/admin/participatory_processes/_form.html.erb +193 -146
  134. data/app/views/decidim/participatory_processes/admin/participatory_processes/edit.html.erb +25 -11
  135. data/app/views/decidim/participatory_processes/admin/participatory_processes/index.html.erb +111 -128
  136. data/app/views/decidim/participatory_processes/admin/participatory_processes/new.html.erb +16 -9
  137. data/app/views/decidim/participatory_processes/participatory_process_groups/show.html.erb +6 -10
  138. data/app/views/decidim/participatory_processes/participatory_processes/_collection.html.erb +8 -0
  139. data/app/views/decidim/participatory_processes/participatory_processes/all_metrics.html.erb +21 -8
  140. data/app/views/decidim/participatory_processes/participatory_processes/index.html.erb +19 -17
  141. data/app/views/decidim/participatory_processes/participatory_processes/index.js.erb +1 -8
  142. data/app/views/decidim/participatory_processes/participatory_processes/show.html.erb +14 -128
  143. data/app/views/layouts/decidim/_process_header.html.erb +15 -26
  144. data/app/views/layouts/decidim/_process_nav_item.html.erb +6 -0
  145. data/app/views/layouts/decidim/admin/_manage_processes.html.erb +36 -0
  146. data/app/views/layouts/decidim/admin/participatory_process.html.erb +12 -14
  147. data/app/views/layouts/decidim/admin/participatory_process_group.html.erb +23 -13
  148. data/app/views/layouts/decidim/admin/participatory_process_groups.html.erb +13 -0
  149. data/app/views/layouts/decidim/admin/participatory_process_type.html.erb +13 -11
  150. data/app/views/layouts/decidim/admin/participatory_processes.html.erb +14 -8
  151. data/app/views/layouts/decidim/participatory_process.html.erb +7 -14
  152. data/config/locales/ar.yml +1 -55
  153. data/config/locales/bg.yml +0 -518
  154. data/config/locales/ca.yml +50 -70
  155. data/config/locales/cs.yml +51 -71
  156. data/config/locales/de.yml +52 -72
  157. data/config/locales/el.yml +8 -64
  158. data/config/locales/en.yml +52 -72
  159. data/config/locales/es-MX.yml +49 -69
  160. data/config/locales/es-PY.yml +49 -69
  161. data/config/locales/es.yml +49 -69
  162. data/config/locales/eu.yml +89 -112
  163. data/config/locales/fi-plain.yml +50 -70
  164. data/config/locales/fi.yml +57 -77
  165. data/config/locales/fr-CA.yml +51 -71
  166. data/config/locales/fr.yml +52 -72
  167. data/config/locales/ga-IE.yml +0 -16
  168. data/config/locales/gl.yml +0 -67
  169. data/config/locales/hu.yml +6 -66
  170. data/config/locales/id-ID.yml +1 -55
  171. data/config/locales/is-IS.yml +0 -24
  172. data/config/locales/it.yml +0 -67
  173. data/config/locales/ja.yml +51 -71
  174. data/config/locales/lb.yml +1 -153
  175. data/config/locales/lt.yml +39 -65
  176. data/config/locales/lv.yml +1 -59
  177. data/config/locales/nl.yml +0 -67
  178. data/config/locales/no.yml +0 -92
  179. data/config/locales/pl.yml +0 -124
  180. data/config/locales/pt-BR.yml +1 -113
  181. data/config/locales/pt.yml +0 -67
  182. data/config/locales/ro-RO.yml +4 -64
  183. data/config/locales/ru.yml +0 -49
  184. data/config/locales/sk.yml +1 -56
  185. data/config/locales/sl.yml +0 -7
  186. data/config/locales/sr-CS.yml +0 -4
  187. data/config/locales/sv.yml +148 -240
  188. data/config/locales/tr-TR.yml +7 -68
  189. data/config/locales/uk.yml +0 -49
  190. data/config/locales/zh-CN.yml +2 -63
  191. data/config/locales/zh-TW.yml +3 -63
  192. data/db/migrate/20220315100140_change_steps_dates_to_datetime.rb +8 -0
  193. data/lib/decidim/api/participatory_process_step_type.rb +2 -2
  194. data/lib/decidim/participatory_processes/admin_engine.rb +20 -139
  195. data/lib/decidim/participatory_processes/content_blocks/registry_manager.rb +278 -0
  196. data/lib/decidim/participatory_processes/engine.rb +13 -103
  197. data/lib/decidim/participatory_processes/menu.rb +190 -0
  198. data/lib/decidim/participatory_processes/participatory_space.rb +7 -204
  199. data/lib/decidim/participatory_processes/query_extensions.rb +2 -2
  200. data/lib/decidim/participatory_processes/seeds.rb +164 -0
  201. data/lib/decidim/participatory_processes/test/factories.rb +58 -66
  202. data/lib/decidim/participatory_processes/version.rb +1 -1
  203. data/lib/tasks/decidim_participatory_processes.rake +8 -0
  204. metadata +62 -67
  205. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/filters.erb +0 -21
  206. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/filters_small_view.erb +0 -18
  207. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/participatory_space_filters.erb +0 -6
  208. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/show.erb +0 -8
  209. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/title_filter_order.erb +0 -8
  210. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes_cell.rb +0 -60
  211. data/app/cells/decidim/participatory_process_groups/content_blocks/html/show.erb +0 -3
  212. data/app/cells/decidim/participatory_process_groups/content_blocks/html_cell.rb +0 -13
  213. data/app/cells/decidim/participatory_process_groups/content_blocks/metadata/show.erb +0 -28
  214. data/app/cells/decidim/participatory_process_groups/content_blocks/metadata_cell.rb +0 -15
  215. data/app/cells/decidim/participatory_process_groups/content_blocks/title/show.erb +0 -43
  216. data/app/cells/decidim/participatory_process_groups/content_blocks/title_cell.rb +0 -64
  217. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes/_all_processes.erb +0 -9
  218. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes/show.erb +0 -14
  219. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes/single_process.erb +0 -48
  220. data/app/cells/decidim/participatory_processes/process_group_m/footer.erb +0 -8
  221. data/app/cells/decidim/participatory_processes/process_group_m_cell.rb +0 -60
  222. data/app/cells/decidim/participatory_processes/process_group_s/image.erb +0 -1
  223. data/app/cells/decidim/participatory_processes/process_group_s/show.erb +0 -8
  224. data/app/cells/decidim/participatory_processes/process_m/data.erb +0 -21
  225. data/app/cells/decidim/participatory_processes/process_m/footer.erb +0 -14
  226. data/app/cells/decidim/participatory_processes/process_m/tags.erb +0 -8
  227. data/app/cells/decidim/participatory_processes/process_m_cell.rb +0 -87
  228. data/app/cells/decidim/participatory_processes/process_s/image.erb +0 -1
  229. data/app/cells/decidim/participatory_processes/process_s/show.erb +0 -14
  230. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_admin.rb +0 -58
  231. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_admin.rb +0 -58
  232. data/app/commands/decidim/participatory_processes/admin/notify_role_assigned_to_participatory_process.rb +0 -22
  233. data/app/commands/decidim/participatory_processes/admin/publish_participatory_process.rb +0 -40
  234. data/app/commands/decidim/participatory_processes/admin/unpublish_participatory_process.rb +0 -40
  235. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_admin.rb +0 -56
  236. data/app/controllers/decidim/participatory_processes/participatory_process_steps_controller.rb +0 -28
  237. data/app/controllers/decidim/participatory_processes/widgets_controller.rb +0 -37
  238. data/app/packs/src/decidim/participatory_processes/filters.js +0 -28
  239. data/app/views/decidim/participatory_process_steps/_participatory_process_step.html.erb +0 -16
  240. data/app/views/decidim/participatory_processes/participatory_process_steps/_timeline.html.erb +0 -7
  241. data/app/views/decidim/participatory_processes/participatory_process_steps/index.html.erb +0 -18
  242. data/app/views/decidim/participatory_processes/participatory_processes/_metrics.html.erb +0 -10
  243. data/app/views/decidim/participatory_processes/participatory_processes/_order_by_processes.html.erb +0 -1
  244. data/app/views/decidim/participatory_processes/participatory_processes/_participatory_process_group.html.erb +0 -4
  245. data/app/views/decidim/participatory_processes/participatory_processes/_promoted_process.html.erb +0 -39
  246. data/app/views/decidim/participatory_processes/participatory_processes/_promoted_process_group.html.erb +0 -31
  247. data/app/views/layouts/decidim/_process_header_steps.html.erb +0 -37
  248. data/app/views/layouts/decidim/_process_navigation.html.erb +0 -20
  249. data/config/locales/he-IL.yml +0 -1
  250. data/db/seeds/Exampledocument.pdf +0 -0
  251. data/db/seeds/city.jpeg +0 -0
  252. data/db/seeds/city2.jpeg +0 -0
  253. data/db/seeds/homepage_image.jpg +0 -0
  254. data/decidim-participatory_processes.gemspec +0 -31
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ParticipatoryProcesses
5
- module Admin
6
- # A command to notify users when a role is assigned for a participatory process
7
- class NotifyRoleAssignedToParticipatoryProcess < Decidim::Command
8
- def send_notification(user)
9
- Decidim::EventsManager.publish(
10
- event: "decidim.events.participatory_process.role_assigned",
11
- event_class: Decidim::ParticipatoryProcessRoleAssignedEvent,
12
- resource: form.current_participatory_space,
13
- affected_users: [user],
14
- extra: {
15
- role: form.role
16
- }
17
- )
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ParticipatoryProcesses
5
- module Admin
6
- # A command that sets a participatory process as published.
7
- class PublishParticipatoryProcess < Decidim::Command
8
- # Public: Initializes the command.
9
- #
10
- # process - A ParticipatoryProcess that will be published
11
- # current_user - the user performing this action
12
- def initialize(process, current_user)
13
- @process = process
14
- @current_user = current_user
15
- end
16
-
17
- # Executes the command. Broadcasts these events:
18
- #
19
- # - :ok when everything is valid.
20
- # - :invalid if the data wasn't valid and we couldn't proceed.
21
- #
22
- # Returns nothing.
23
- def call
24
- return broadcast(:invalid) if process.nil? || process.published?
25
-
26
- transaction do
27
- Decidim.traceability.perform_action!("publish", process, current_user, visibility: "all") do
28
- process.publish!
29
- end
30
- end
31
- broadcast(:ok)
32
- end
33
-
34
- private
35
-
36
- attr_reader :process, :current_user
37
- end
38
- end
39
- end
40
- end
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ParticipatoryProcesses
5
- module Admin
6
- # A command that sets a participatory process as unpublished.
7
- class UnpublishParticipatoryProcess < Decidim::Command
8
- # Public: Initializes the command.
9
- #
10
- # process - A ParticipatoryProcess that will be unpublished
11
- # current_user - the user performing this action
12
- def initialize(process, current_user)
13
- @process = process
14
- @current_user = current_user
15
- end
16
-
17
- # Executes the command. Broadcasts these events:
18
- #
19
- # - :ok when everything is valid.
20
- # - :invalid if the data wasn't valid and we couldn't proceed.
21
- #
22
- # Returns nothing.
23
- def call
24
- return broadcast(:invalid) if process.nil? || !process.published?
25
-
26
- transaction do
27
- Decidim.traceability.perform_action!("unpublish", process, current_user) do
28
- process.unpublish!
29
- end
30
- end
31
- broadcast(:ok)
32
- end
33
-
34
- private
35
-
36
- attr_reader :process, :current_user
37
- end
38
- end
39
- end
40
- end
@@ -1,56 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ParticipatoryProcesses
5
- module Admin
6
- # A command with all the business logic when updated a participatory
7
- # process admin in the system.
8
- class UpdateParticipatoryProcessAdmin < NotifyRoleAssignedToParticipatoryProcess
9
- # Public: Initializes the command.
10
- #
11
- # form - A form object with the params.
12
- # participatory_process - The ParticipatoryProcess that will hold the
13
- # user role
14
- def initialize(form, user_role)
15
- @form = form
16
- @user_role = user_role
17
- end
18
-
19
- # Executes the command. Broadcasts these events:
20
- #
21
- # - :ok when everything is valid.
22
- # - :invalid if the form wasn't valid and we couldn't proceed.
23
- #
24
- # Returns nothing.
25
- def call
26
- return broadcast(:invalid) if form.invalid?
27
- return broadcast(:invalid) unless user_role
28
-
29
- update_role!
30
- broadcast(:ok)
31
- end
32
-
33
- private
34
-
35
- attr_reader :form, :user_role
36
-
37
- def update_role!
38
- extra_info = {
39
- resource: {
40
- title: user_role.user.name
41
- }
42
- }
43
-
44
- Decidim.traceability.update!(
45
- user_role,
46
- form.current_user,
47
- { role: form.role },
48
- extra_info
49
- )
50
-
51
- send_notification user_role.user
52
- end
53
- end
54
- end
55
- end
56
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ParticipatoryProcesses
5
- # A controller that holds the logic to show ParticipatoryProcessSteps in a
6
- # public layout.
7
- class ParticipatoryProcessStepsController < Decidim::ParticipatoryProcesses::ApplicationController
8
- include ParticipatorySpaceContext
9
- participatory_space_layout only: :index
10
-
11
- def index; end
12
-
13
- private
14
-
15
- def organization_participatory_processes
16
- @organization_participatory_processes ||= OrganizationParticipatoryProcesses.new(current_organization).query
17
- end
18
-
19
- def current_participatory_space
20
- return unless params[:participatory_process_slug]
21
-
22
- @current_participatory_space ||= organization_participatory_processes.where(slug: params[:participatory_process_slug]).or(
23
- organization_participatory_processes.where(id: params[:participatory_process_slug])
24
- ).first!
25
- end
26
- end
27
- end
28
- end
@@ -1,37 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module ParticipatoryProcesses
5
- class WidgetsController < Decidim::WidgetsController
6
- helper Decidim::SanitizeHelper
7
-
8
- def show
9
- enforce_permission_to :embed, :participatory_space, current_participatory_space: model
10
-
11
- super
12
- end
13
-
14
- private
15
-
16
- def model
17
- return unless params[:participatory_process_slug]
18
-
19
- @model ||= ParticipatoryProcess.where(organization: current_organization).public_spaces.where(slug: params[:participatory_process_slug]).or(
20
- ParticipatoryProcess.where(organization: current_organization).public_spaces.where(id: params[:participatory_process_slug])
21
- ).first!
22
- end
23
-
24
- def current_participatory_space
25
- model
26
- end
27
-
28
- def iframe_url
29
- @iframe_url ||= participatory_process_widget_url(model)
30
- end
31
-
32
- def permission_class_chain
33
- ::Decidim.permissions_registry.chain_for(::Decidim::ParticipatoryProcesses::ApplicationController)
34
- end
35
- end
36
- end
37
- end
@@ -1,28 +0,0 @@
1
- $(() => {
2
- const $processesGrid = $("#processes-grid");
3
- const $loading = $processesGrid.find(".loading");
4
- const filterLinksSelector = ".order-by__tabs a"
5
-
6
- $loading.hide();
7
-
8
- $processesGrid.on("click", filterLinksSelector, (event) => {
9
- const $processesGridCards = $processesGrid.find(".card-grid .column");
10
- let $target = $(event.target);
11
-
12
- // IE11 matches the <strong> element inside the filtering anchor element
13
- // as the `event.target` breaking the functionality below.
14
- if (!$target.is("a")) {
15
- $target = $target.parents("a");
16
- }
17
-
18
- $(filterLinksSelector).removeClass("is-active");
19
- $target.addClass("is-active");
20
-
21
- $processesGridCards.hide();
22
- $loading.show();
23
-
24
- if (window.history) {
25
- window.history.pushState(null, null, $target.attr("href"));
26
- }
27
- });
28
- });
@@ -1,16 +0,0 @@
1
- <li class="<%= "timeline__item #{step_status_class}" %>">
2
- <div class="timeline__phase">
3
- <span class="timeline__phase__number"><%= participatory_process_step.position + 1 %></span>
4
- </div>
5
- <div class="timeline__info">
6
- <div class="timeline__header">
7
- <span class="timeline__date text-small">
8
- <%= participatory_space_helpers.step_dates(participatory_process_step) %>
9
- </span>
10
- <h3 class="timeline__title heading4"><%= translated_attribute(participatory_process_step.title) %></h3>
11
- </div>
12
- <div class="timeline__content">
13
- <%= decidim_sanitize_editor_admin translated_attribute(participatory_process_step.description) %>
14
- </div>
15
- </div>
16
- </li>
@@ -1,7 +0,0 @@
1
- <ol class="timeline">
2
- <% past_step = true %>
3
- <% current_participatory_space.steps.each do |step| %>
4
- <%= render step, step_status_class: step_class(step, past_step) %>
5
- <% past_step = false if step.active? %>
6
- <% end %>
7
- </ol>
@@ -1,18 +0,0 @@
1
- <% add_decidim_page_title(t("participatory_process_steps.index.title", scope: "decidim")) %>
2
- <div class="steps">
3
- <div class="row column">
4
- <div class="row">
5
- <div class="columns mediumlarge-9 large-7">
6
- <div class="section">
7
- <%= link_to participatory_process_path(current_participatory_space), class: "small hollow" do %>
8
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
9
- <%= t(".back_to_process") %>
10
- <% end %>
11
-
12
- <h2 class="section-heading"><%= t("participatory_process_steps.index.process_steps", scope: "decidim") %></h2>
13
- <%= render partial: "timeline" %>
14
- </div>
15
- </div>
16
- </div>
17
- </div>
18
- </div>
@@ -1,10 +0,0 @@
1
- <div class="section" id="metrics">
2
- <h3 class="section-heading"><%= t("decidim.pages.participatory_space.metrics.headline", name: translated_attribute(current_participatory_space.title)) %></h3>
3
- <%= metrics.params %>
4
- <div class="row mb-sm">
5
- <%= metrics.highlighted %>
6
- </div>
7
- <div class="row column text-center">
8
- <%= link_to t("decidim.pages.participatory_space.metrics.link"), all_metrics_participatory_process_path(current_participatory_space) %>
9
- </div>
10
- </div>
@@ -1 +0,0 @@
1
- <%= cell "decidim/participatory_processes/process_filters", default_filter: default_date_filter %>
@@ -1,4 +0,0 @@
1
- <p>
2
- <span class="text-small text-uppercase text-muted mr-s"><%= t("belongs_to_group", scope: "decidim.participatory_processes.show") %></span>
3
- <%= link_to translated_attribute(participatory_process_group.title), participatory_process_group_path(participatory_process_group) %>
4
- </p>
@@ -1,39 +0,0 @@
1
- <div class="card card--full card--process">
2
- <div class="row collapse card--process__row">
3
- <div class="columns mediumlarge-8 large-6 card--process__column">
4
- <div class="card__content">
5
- <%= link_to participatory_process_path(promoted_process), class: "card__link" do %>
6
- <h2 class="card__title"><%= decidim_html_escape(translated_attribute(promoted_process.title)).html_safe %></h2>
7
- <% end %>
8
- <%= decidim_sanitize_editor html_truncate(translated_attribute(promoted_process.short_description), length: 630, separator: "...") %>
9
- <%= link_to participatory_process_path(promoted_process), class: "button small hollow card__button" do %>
10
- <span class="show-for-sr"><%= decidim_html_escape(translated_attribute(promoted_process.title)) %></span>
11
- <%= t("participatory_processes.promoted_process.more_info", scope: "layouts.decidim") %>
12
- <% end %>
13
- </div>
14
- </div>
15
- <div class="columns mediumlarge-8 large-6 card--process__column">
16
- <div class="card--full__image"
17
- style="background-image:url('<%= promoted_process.attached_uploader(:hero_image).path %>')">
18
- <div class="card__content row collapse">
19
- <div class="large-6 large-offset-6 columns">
20
- <%= link_to participatory_process_cta_path(promoted_process), class: "button expanded button--sc" do %>
21
- <% if translated_in_current_locale?(promoted_process.active_step&.cta_text) %>
22
- <span class="show-for-sr"><%= translated_attribute(promoted_process.active_step.cta_text) %></span>
23
- <span aria-hidden="true"><%= translated_attribute(promoted_process.active_step.cta_text) %></span>
24
- <% else %>
25
- <span class="show-for-sr"><%= t(promoted_process.cta_button_text_key_accessible, resource_name: translated_attribute(promoted_process.title), scope: "layouts.decidim.participatory_processes.promoted_process") %></span>
26
- <span aria-hidden="true"><%= t(promoted_process.cta_button_text_key, scope: "layouts.decidim.participatory_processes.promoted_process") %></span>
27
- <% end %>
28
- <% if promoted_process.active_step %>
29
- <span class="button__info">
30
- <%= t("participatory_processes.promoted_process.active_step", scope: "layouts.decidim") %> <%= translated_attribute promoted_process.active_step.title %>
31
- </span>
32
- <% end %>
33
- <% end %>
34
- </div>
35
- </div>
36
- </div>
37
- </div>
38
- </div>
39
- </div>
@@ -1,31 +0,0 @@
1
- <% cta_settings = participatory_process_group_cta_settings(promoted_process_group) %>
2
- <div class="card card--full card--process">
3
- <div class="row collapse card--process__row">
4
- <div class="columns mediumlarge-8 large-6 card--process__column">
5
- <div class="card__content">
6
- <%= link_to participatory_process_group_path(promoted_process_group), class: "card__link" do %>
7
- <h2 class="card__title"><%= decidim_html_escape(translated_attribute(promoted_process_group.title)).html_safe %></h2>
8
- <% end %>
9
- <%= decidim_sanitize_editor html_truncate(translated_attribute(promoted_process_group.description), length: 630, separator: "...") %>
10
- <%= link_to participatory_process_group_path(promoted_process_group), class: "button small hollow card__button" do %>
11
- <span class="show-for-sr"><%= decidim_html_escape(translated_attribute(promoted_process_group.title)) %></span>
12
- <%= t("participatory_processes.promoted_process_group.more_info", scope: "layouts.decidim") %>
13
- <% end %>
14
- </div>
15
- </div>
16
- <div class="columns mediumlarge-8 large-6 card--process__column">
17
- <div class="card--full__image" style="background-image:url('<%= promoted_process_group.attached_uploader(:hero_image).path %>')">
18
- <% if cta_settings.present? %>
19
- <div class="card__content row collapse">
20
- <div class="large-6 large-offset-6 columns">
21
- <%= link_to cta_settings.path, class: "button expanded button--sc" do %>
22
- <span class="show-for-sr"><%= cta_settings.text %></span>
23
- <span aria-hidden="true"><%= cta_settings.text %></span>
24
- <% end %>
25
- </div>
26
- </div>
27
- <% end %>
28
- </div>
29
- </div>
30
- </div>
31
- </div>
@@ -1,37 +0,0 @@
1
- <% if participatory_process.steps.any? %>
2
- <div class="columns mediumlarge-4">
3
- <div class="process-header__phase">
4
- <div class="process-header__progress">
5
- <ol>
6
- <% past_step = true %>
7
- <% participatory_process.steps.each_with_index do |step, index| %>
8
- <% if past_step %>
9
- <li class="phase-item--past"><span></span></li>
10
- <% else %>
11
- <li><span></span></li>
12
- <% end %>
13
- <% past_step = false if step.active? %>
14
- <% end %>
15
- </ol>
16
- <span class="phase-current"><%= t(".step", current: (participatory_process.active_step.position + 1), total: current_participatory_space.steps.count) %></span>
17
- </div>
18
- <div>
19
- <span class="phase-title"><%= translated_attribute participatory_process.active_step.title %></span>
20
- <span class="phase-date">
21
- <%= participatory_space_helpers.step_dates participatory_process.active_step %>
22
- </span>
23
- </div>
24
- <% cta_text = translated_attribute(participatory_process.active_step.cta_text) %>
25
- <% if participatory_process.active_step.cta_path.present? && cta_text.present? %>
26
- <%= link_to t(".view_steps"), decidim_participatory_processes.participatory_process_participatory_process_steps_path(current_participatory_space), class: "clear button secondary tiny show-for-medium" %>
27
- <%= link_to(
28
- cta_text,
29
- step_cta_url(participatory_process),
30
- class: "button small button--sc show-for-medium"
31
- ) %>
32
- <% else %>
33
- <%= link_to t(".view_steps"), decidim_participatory_processes.participatory_process_participatory_process_steps_path(current_participatory_space) %>
34
- <% end %>
35
- </div>
36
- </div>
37
- <% end %>
@@ -1,20 +0,0 @@
1
- <%
2
- components = participatory_space.components.published.or(Decidim::Component.where(id: self.try(:current_component)))
3
- %>
4
-
5
- <%=
6
- extended_navigation_bar([
7
- {
8
- name: t(".process_menu_item"),
9
- url: decidim_participatory_processes.participatory_process_path(participatory_space),
10
- active: is_active_link?(decidim_participatory_processes.participatory_process_path(participatory_space), :exclusive) ||
11
- is_active_link?(decidim_participatory_processes.all_metrics_participatory_process_path(participatory_space), :exclusive)
12
- }
13
- ] + components.map do |component|
14
- {
15
- name: translated_attribute(component.name),
16
- url: main_component_path(component),
17
- active: is_active_link?(main_component_path(component), :inclusive)
18
- }
19
- end)
20
- %>
@@ -1 +0,0 @@
1
- he:
Binary file
data/db/seeds/city.jpeg DELETED
Binary file
data/db/seeds/city2.jpeg DELETED
Binary file
Binary file
@@ -1,31 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- $LOAD_PATH.push File.expand_path("lib", __dir__)
4
-
5
- require "decidim/participatory_processes/version"
6
-
7
- Gem::Specification.new do |s|
8
- s.version = Decidim::ParticipatoryProcesses.version
9
- s.authors = ["Josep Jaume Rey Peroy", "Marc Riera Casals", "Oriol Gual Oliva"]
10
- s.email = ["josepjaume@gmail.com", "mrc2407@gmail.com", "oriolgual@gmail.com"]
11
- s.license = "AGPL-3.0"
12
- s.homepage = "https://github.com/decidim/decidim"
13
- s.required_ruby_version = "~> 3.0.0"
14
-
15
- s.name = "decidim-participatory_processes"
16
- s.summary = "Decidim participatory processes module"
17
- s.description = "Participatory processes component for decidim."
18
-
19
- s.files = Dir.chdir(__dir__) do
20
- `git ls-files -z`.split("\x0").select do |f|
21
- (File.expand_path(f) == __FILE__) ||
22
- f.start_with?(*%w(app/ config/ db/ lib/ Rakefile README.md))
23
- end
24
- end
25
-
26
- s.add_dependency "decidim-core", Decidim::ParticipatoryProcesses.version
27
-
28
- s.add_development_dependency "decidim-admin", Decidim::ParticipatoryProcesses.version
29
- s.add_development_dependency "decidim-dev", Decidim::ParticipatoryProcesses.version
30
- s.add_development_dependency "decidim-meetings", Decidim::ParticipatoryProcesses.version
31
- end