decidim-proposals 0.27.7 → 0.28.0.rc4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (281) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/proposals/collaborative_draft_cell.rb +1 -1
  3. data/app/cells/decidim/proposals/collaborative_draft_l_cell.rb +16 -0
  4. data/app/cells/decidim/proposals/collaborative_draft_link_to_proposal/show.erb +4 -12
  5. data/app/cells/decidim/proposals/collaborative_draft_link_to_proposal_cell.rb +0 -29
  6. data/app/cells/decidim/proposals/collaborative_draft_metadata_cell.rb +30 -0
  7. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals_cell.rb +2 -8
  8. data/app/cells/decidim/proposals/cost_report/show.erb +5 -34
  9. data/app/cells/decidim/proposals/cost_report_cell.rb +0 -13
  10. data/app/cells/decidim/proposals/highlighted_proposals_for_component/show.erb +29 -17
  11. data/app/cells/decidim/proposals/highlighted_proposals_for_component_cell.rb +34 -8
  12. data/app/cells/decidim/proposals/irreversible_action_modal/show.erb +9 -17
  13. data/app/cells/decidim/proposals/irreversible_action_modal_cell.rb +7 -9
  14. data/app/cells/decidim/proposals/participatory_text_proposal/buttons.erb +21 -31
  15. data/app/cells/decidim/proposals/participatory_text_proposal/show.erb +5 -9
  16. data/app/cells/decidim/proposals/participatory_text_proposal_cell.rb +0 -9
  17. data/app/cells/decidim/proposals/proposal_activity_cell.rb +1 -12
  18. data/app/cells/decidim/proposals/proposal_cell.rb +6 -1
  19. data/app/cells/decidim/proposals/proposal_l_cell.rb +47 -0
  20. data/app/cells/decidim/proposals/proposal_link_to_collaborative_draft_cell.rb +6 -4
  21. data/app/cells/decidim/proposals/proposal_link_to_rejected_emendation_cell.rb +9 -7
  22. data/app/cells/decidim/proposals/proposal_linked_resources/show.erb +3 -8
  23. data/app/cells/decidim/proposals/proposal_metadata_cell.rb +61 -0
  24. data/app/cells/decidim/proposals/proposal_s_cell.rb +21 -0
  25. data/app/cells/decidim/proposals/proposals_picker/show.erb +13 -13
  26. data/app/cells/decidim/proposals/proposals_picker_cell.rb +15 -38
  27. data/app/commands/decidim/proposals/accept_access_to_collaborative_draft.rb +1 -1
  28. data/app/commands/decidim/proposals/admin/answer_proposal.rb +1 -1
  29. data/app/commands/decidim/proposals/admin/assign_proposals_to_valuator.rb +3 -3
  30. data/app/commands/decidim/proposals/admin/create_proposal.rb +2 -2
  31. data/app/commands/decidim/proposals/admin/create_proposal_note.rb +4 -4
  32. data/app/commands/decidim/proposals/admin/discard_participatory_text.rb +1 -1
  33. data/app/commands/decidim/proposals/admin/import_participatory_text.rb +1 -1
  34. data/app/commands/decidim/proposals/admin/import_proposals.rb +2 -13
  35. data/app/commands/decidim/proposals/admin/merge_proposals.rb +1 -1
  36. data/app/commands/decidim/proposals/admin/notify_proposal_answer.rb +3 -3
  37. data/app/commands/decidim/proposals/admin/publish_answers.rb +1 -1
  38. data/app/commands/decidim/proposals/admin/publish_participatory_text.rb +2 -2
  39. data/app/commands/decidim/proposals/admin/split_proposals.rb +1 -1
  40. data/app/commands/decidim/proposals/admin/unassign_proposals_from_valuator.rb +2 -2
  41. data/app/commands/decidim/proposals/admin/update_participatory_text.rb +1 -1
  42. data/app/commands/decidim/proposals/admin/update_proposal.rb +5 -1
  43. data/app/commands/decidim/proposals/admin/update_proposal_scope.rb +1 -1
  44. data/app/commands/decidim/proposals/create_collaborative_draft.rb +13 -3
  45. data/app/commands/decidim/proposals/create_proposal.rb +14 -5
  46. data/app/commands/decidim/proposals/hashtags_methods.rb +1 -1
  47. data/app/commands/decidim/proposals/publish_proposal.rb +1 -1
  48. data/app/commands/decidim/proposals/reject_access_to_collaborative_draft.rb +1 -1
  49. data/app/commands/decidim/proposals/request_access_to_collaborative_draft.rb +1 -1
  50. data/app/commands/decidim/proposals/unvote_proposal.rb +2 -2
  51. data/app/commands/decidim/proposals/update_collaborative_draft.rb +12 -2
  52. data/app/commands/decidim/proposals/update_proposal.rb +16 -14
  53. data/app/commands/decidim/proposals/vote_proposal.rb +2 -2
  54. data/app/controllers/concerns/decidim/proposals/admin/filterable.rb +4 -13
  55. data/app/controllers/decidim/proposals/admin/proposal_answers_controller.rb +2 -2
  56. data/app/controllers/decidim/proposals/admin/proposal_notes_controller.rb +1 -1
  57. data/app/controllers/decidim/proposals/admin/proposals_controller.rb +2 -2
  58. data/app/controllers/decidim/proposals/collaborative_drafts_controller.rb +3 -9
  59. data/app/controllers/decidim/proposals/proposal_votes_controller.rb +3 -3
  60. data/app/controllers/decidim/proposals/proposals_controller.rb +42 -12
  61. data/app/events/decidim/proposals/accepted_proposal_event.rb +1 -1
  62. data/app/events/decidim/proposals/admin/proposal_note_created_event.rb +1 -1
  63. data/app/events/decidim/proposals/admin/update_proposal_category_event.rb +1 -1
  64. data/app/events/decidim/proposals/admin/update_proposal_scope_event.rb +1 -1
  65. data/app/events/decidim/proposals/collaborative_draft_access_accepted_event.rb +1 -1
  66. data/app/events/decidim/proposals/collaborative_draft_access_rejected_event.rb +1 -1
  67. data/app/events/decidim/proposals/collaborative_draft_access_request_event.rb +1 -1
  68. data/app/events/decidim/proposals/collaborative_draft_access_requested_event.rb +1 -1
  69. data/app/events/decidim/proposals/collaborative_draft_access_requester_accepted_event.rb +1 -1
  70. data/app/events/decidim/proposals/collaborative_draft_access_requester_rejected_event.rb +1 -1
  71. data/app/events/decidim/proposals/collaborative_draft_withdrawn_event.rb +1 -1
  72. data/app/events/decidim/proposals/evaluating_proposal_event.rb +1 -1
  73. data/app/events/decidim/proposals/proposal_endorsed_event.rb +1 -1
  74. data/app/events/decidim/proposals/proposal_mentioned_event.rb +1 -1
  75. data/app/events/decidim/proposals/publish_proposal_event.rb +1 -1
  76. data/app/events/decidim/proposals/rejected_proposal_event.rb +1 -1
  77. data/app/forms/decidim/proposals/admin/import_participatory_text_form.rb +1 -1
  78. data/app/forms/decidim/proposals/admin/proposal_base_form.rb +2 -2
  79. data/app/forms/decidim/proposals/admin/proposal_form.rb +1 -1
  80. data/app/forms/decidim/proposals/admin/proposals_fork_form.rb +1 -1
  81. data/app/forms/decidim/proposals/admin/valuation_assignment_form.rb +1 -1
  82. data/app/forms/decidim/proposals/proposal_form.rb +9 -27
  83. data/app/helpers/decidim/proposals/admin/proposal_bulk_actions_helper.rb +1 -1
  84. data/app/helpers/decidim/proposals/admin/proposals_helper.rb +13 -13
  85. data/app/helpers/decidim/proposals/application_helper.rb +80 -28
  86. data/app/helpers/decidim/proposals/collaborative_draft_helper.rb +44 -4
  87. data/app/helpers/decidim/proposals/map_helper.rb +3 -4
  88. data/app/helpers/decidim/proposals/participatory_texts_helper.rb +1 -9
  89. data/app/helpers/decidim/proposals/proposal_cells_helper.rb +1 -1
  90. data/app/helpers/decidim/proposals/proposal_votes_helper.rb +2 -24
  91. data/app/helpers/decidim/proposals/proposal_wizard_helper.rb +14 -81
  92. data/app/helpers/decidim/proposals/proposals_helper.rb +0 -12
  93. data/app/jobs/decidim/proposals/hide_all_created_by_author_job.rb +20 -0
  94. data/app/jobs/decidim/proposals/notify_proposals_mentioned_job.rb +1 -1
  95. data/app/jobs/decidim/proposals/settings_change_job.rb +2 -2
  96. data/app/models/decidim/proposals/collaborative_draft.rb +4 -16
  97. data/app/models/decidim/proposals/proposal.rb +33 -16
  98. data/app/models/decidim/proposals/proposal_vote.rb +3 -3
  99. data/app/models/decidim/proposals/valuation_assignment.rb +1 -2
  100. data/app/packs/documents/decidim/proposals/participatory_texts/participatory_text.md +9 -4
  101. data/app/packs/entrypoints/decidim_proposals.js +4 -0
  102. data/app/packs/entrypoints/decidim_proposals_admin.js +0 -1
  103. data/app/packs/images/decidim/gamification/badges/decidim_gamification_badges_accepted_proposals.svg +68 -1
  104. data/app/packs/images/decidim/gamification/badges/decidim_gamification_badges_proposal_votes.svg +34 -1
  105. data/app/packs/images/decidim/gamification/badges/decidim_gamification_badges_proposals.svg +64 -1
  106. data/app/packs/src/decidim/proposals/add_proposal.js +25 -39
  107. data/app/packs/src/decidim/proposals/admin/proposals.js +0 -7
  108. data/app/packs/src/decidim/proposals/choose_proposals.js +20 -0
  109. data/app/packs/stylesheets/decidim/proposals/proposals.scss +97 -0
  110. data/app/permissions/decidim/proposals/admin/permissions.rb +3 -3
  111. data/app/permissions/decidim/proposals/permissions.rb +1 -10
  112. data/app/presenters/decidim/proposals/admin_log/proposal_note_presenter.rb +2 -2
  113. data/app/presenters/decidim/proposals/admin_log/proposal_presenter.rb +7 -3
  114. data/app/presenters/decidim/proposals/admin_log/valuation_assignment_presenter.rb +2 -2
  115. data/app/presenters/decidim/proposals/admin_log/value_types/proposal_title_body_presenter.rb +3 -1
  116. data/app/presenters/decidim/proposals/log/resource_presenter.rb +22 -0
  117. data/app/presenters/decidim/proposals/log/valuation_assignment_presenter.rb +1 -1
  118. data/app/presenters/decidim/proposals/proposal_presenter.rb +6 -2
  119. data/app/services/decidim/proposals/diff_renderer.rb +3 -3
  120. data/app/services/decidim/proposals/proposal_builder.rb +6 -6
  121. data/app/views/decidim/proposals/admin/participatory_texts/_article-preview.html.erb +2 -4
  122. data/app/views/decidim/proposals/admin/participatory_texts/_bulk-actions.html.erb +2 -2
  123. data/app/views/decidim/proposals/admin/participatory_texts/index.html.erb +58 -46
  124. data/app/views/decidim/proposals/admin/participatory_texts/new_import.html.erb +31 -33
  125. data/app/views/decidim/proposals/admin/proposal_answers/_form.html.erb +17 -11
  126. data/app/views/decidim/proposals/admin/proposal_notes/_form.html.erb +5 -6
  127. data/app/views/decidim/proposals/admin/proposal_notes/_proposal_notes.html.erb +28 -36
  128. data/app/views/decidim/proposals/admin/proposals/_bulk-actions.html.erb +27 -30
  129. data/app/views/decidim/proposals/admin/proposals/_documents.html.erb +13 -0
  130. data/app/views/decidim/proposals/admin/proposals/_endorsers.html.erb +25 -0
  131. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +70 -90
  132. data/app/views/decidim/proposals/admin/proposals/_meetings.html.erb +13 -0
  133. data/app/views/decidim/proposals/admin/proposals/_photos.html.erb +13 -0
  134. data/app/views/decidim/proposals/admin/proposals/_proposal-tr.html.erb +31 -25
  135. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_assign_to_valuator.html.erb +3 -3
  136. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_dropdown.html.erb +3 -2
  137. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_merge.html.erb +4 -4
  138. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_publish_answers.html.erb +3 -3
  139. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_recategorize.html.erb +3 -3
  140. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_scope-change.html.erb +4 -8
  141. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_split.html.erb +3 -3
  142. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_unassign_from_valuator.html.erb +3 -3
  143. data/app/views/decidim/proposals/admin/proposals/edit.html.erb +17 -7
  144. data/app/views/decidim/proposals/admin/proposals/index.html.erb +50 -63
  145. data/app/views/decidim/proposals/admin/proposals/new.html.erb +16 -6
  146. data/app/views/decidim/proposals/admin/proposals/publish_answers.js.erb +2 -2
  147. data/app/views/decidim/proposals/admin/proposals/show.html.erb +204 -162
  148. data/app/views/decidim/proposals/admin/proposals/update_attribute.js.erb +5 -6
  149. data/app/views/decidim/proposals/admin/proposals_imports/new.html.erb +48 -34
  150. data/app/views/decidim/proposals/collaborative_drafts/_accept_request_access_form.html.erb +1 -1
  151. data/app/views/decidim/proposals/collaborative_drafts/_actions.html.erb +7 -0
  152. data/app/views/decidim/proposals/collaborative_drafts/_collaborative_draft_aside.html.erb +53 -0
  153. data/app/views/decidim/proposals/collaborative_drafts/_collaborative_drafts.html.erb +12 -13
  154. data/app/views/decidim/proposals/collaborative_drafts/_collaborator_requests.html.erb +8 -12
  155. data/app/views/decidim/proposals/collaborative_drafts/_edit_form_fields.html.erb +26 -54
  156. data/app/views/decidim/proposals/collaborative_drafts/_reject_request_access_form.html.erb +1 -3
  157. data/app/views/decidim/proposals/collaborative_drafts/_request_access_form.html.erb +1 -1
  158. data/app/views/decidim/proposals/collaborative_drafts/edit.html.erb +23 -25
  159. data/app/views/decidim/proposals/collaborative_drafts/index.html.erb +30 -22
  160. data/app/views/decidim/proposals/collaborative_drafts/index.js.erb +0 -5
  161. data/app/views/decidim/proposals/collaborative_drafts/new.html.erb +22 -18
  162. data/app/views/decidim/proposals/collaborative_drafts/show.html.erb +39 -109
  163. data/app/views/decidim/proposals/proposal_votes/update_buttons_and_counters.js.erb +2 -2
  164. data/app/views/decidim/proposals/proposals/_actions.html.erb +13 -0
  165. data/app/views/decidim/proposals/proposals/_edit_form_fields.html.erb +31 -70
  166. data/app/views/decidim/proposals/proposals/_linked_proposals.html.erb +3 -35
  167. data/app/views/decidim/proposals/proposals/_proposal_aside.html.erb +40 -0
  168. data/app/views/decidim/proposals/proposals/_proposals.html.erb +18 -39
  169. data/app/views/decidim/proposals/proposals/_proposals_picker.html.erb +5 -0
  170. data/app/views/decidim/proposals/proposals/_remaining_votes_count.html.erb +3 -3
  171. data/app/views/decidim/proposals/proposals/_vote_button.html.erb +16 -17
  172. data/app/views/decidim/proposals/proposals/_votes_count.html.erb +3 -6
  173. data/app/views/decidim/proposals/proposals/_voting_rules.html.erb +28 -41
  174. data/app/views/decidim/proposals/proposals/_wizard_header.html.erb +19 -25
  175. data/app/views/decidim/proposals/proposals/compare.html.erb +17 -16
  176. data/app/views/decidim/proposals/proposals/complete.html.erb +26 -21
  177. data/app/views/decidim/proposals/proposals/edit.html.erb +32 -27
  178. data/app/views/decidim/proposals/proposals/edit_draft.html.erb +21 -19
  179. data/app/views/decidim/proposals/proposals/index.html.erb +56 -47
  180. data/app/views/decidim/proposals/proposals/index.js.erb +0 -5
  181. data/app/views/decidim/proposals/proposals/new.html.erb +30 -35
  182. data/app/views/decidim/proposals/proposals/participatory_texts/_proposal_vote_button.html.erb +5 -5
  183. data/app/views/decidim/proposals/proposals/participatory_texts/_view_index.html.erb +15 -8
  184. data/app/views/decidim/proposals/proposals/participatory_texts/participatory_text.html.erb +32 -15
  185. data/app/views/decidim/proposals/proposals/preview.html.erb +37 -34
  186. data/app/views/decidim/proposals/proposals/show.html.erb +90 -108
  187. data/app/views/decidim/proposals/versions/show.html.erb +13 -5
  188. data/config/assets.rb +0 -1
  189. data/config/brakeman.ignore +31 -56
  190. data/config/locales/ar.yml +23 -158
  191. data/config/locales/bg.yml +1 -776
  192. data/config/locales/ca.yml +92 -150
  193. data/config/locales/cs.yml +75 -134
  194. data/config/locales/de.yml +72 -130
  195. data/config/locales/el.yml +58 -121
  196. data/config/locales/en.yml +76 -134
  197. data/config/locales/es-MX.yml +77 -135
  198. data/config/locales/es-PY.yml +76 -134
  199. data/config/locales/es.yml +84 -142
  200. data/config/locales/eu.yml +75 -133
  201. data/config/locales/fi-plain.yml +68 -126
  202. data/config/locales/fi.yml +67 -125
  203. data/config/locales/fr-CA.yml +73 -132
  204. data/config/locales/fr.yml +77 -136
  205. data/config/locales/ga-IE.yml +0 -45
  206. data/config/locales/gl.yml +12 -131
  207. data/config/locales/hu.yml +45 -149
  208. data/config/locales/id-ID.yml +9 -114
  209. data/config/locales/is-IS.yml +5 -60
  210. data/config/locales/it.yml +14 -146
  211. data/config/locales/ja.yml +78 -141
  212. data/config/locales/lb.yml +0 -5
  213. data/config/locales/lt.yml +65 -126
  214. data/config/locales/lv.yml +13 -144
  215. data/config/locales/nl.yml +16 -148
  216. data/config/locales/no.yml +11 -134
  217. data/config/locales/pl.yml +16 -239
  218. data/config/locales/pt-BR.yml +14 -199
  219. data/config/locales/pt.yml +11 -142
  220. data/config/locales/ro-RO.yml +12 -146
  221. data/config/locales/ru.yml +5 -70
  222. data/config/locales/sk.yml +19 -145
  223. data/config/locales/sr-CS.yml +0 -23
  224. data/config/locales/sv.yml +26 -145
  225. data/config/locales/tr-TR.yml +16 -150
  226. data/config/locales/uk.yml +5 -70
  227. data/config/locales/zh-CN.yml +9 -135
  228. data/config/locales/zh-TW.yml +35 -107
  229. data/db/migrate/20170307085300_migrate_proposal_reports_data_to_reports.rb +1 -1
  230. data/db/migrate/20230427105700_change_states_on_collaborative_drafts.rb +34 -0
  231. data/db/migrate/20230427105700_change_states_on_proposals.rb +34 -0
  232. data/lib/decidim/api/proposals_type.rb +2 -2
  233. data/lib/decidim/proposals/component.rb +11 -289
  234. data/lib/decidim/proposals/doc_to_markdown.rb +0 -4
  235. data/lib/decidim/proposals/engine.rb +43 -7
  236. data/lib/decidim/proposals/import/proposal_answer_creator.rb +1 -1
  237. data/lib/decidim/proposals/import/proposal_creator.rb +10 -10
  238. data/lib/decidim/proposals/markdown_to_proposals.rb +8 -2
  239. data/lib/decidim/proposals/proposal_serializer.rb +4 -56
  240. data/lib/decidim/proposals/seeds.rb +278 -0
  241. data/lib/decidim/proposals/test/factories.rb +106 -85
  242. data/lib/decidim/proposals/valuatable.rb +1 -2
  243. data/lib/decidim/proposals/version.rb +1 -1
  244. metadata +55 -66
  245. data/app/cells/decidim/proposals/collaborative_draft_m/footer.erb +0 -6
  246. data/app/cells/decidim/proposals/collaborative_draft_m/tags.erb +0 -1
  247. data/app/cells/decidim/proposals/collaborative_draft_m_cell.rb +0 -44
  248. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals/elements.erb +0 -5
  249. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals/heading.erb +0 -1
  250. data/app/cells/decidim/proposals/proposal_link_to_rejected_emendation/show.erb +0 -9
  251. data/app/cells/decidim/proposals/proposal_m/footer.erb +0 -26
  252. data/app/cells/decidim/proposals/proposal_m/tags.erb +0 -1
  253. data/app/cells/decidim/proposals/proposal_m_cell.rb +0 -151
  254. data/app/cells/decidim/proposals/proposal_tags/show.erb +0 -33
  255. data/app/cells/decidim/proposals/proposal_tags_cell.rb +0 -35
  256. data/app/cells/decidim/proposals/proposals_picker/proposals.erb +0 -12
  257. data/app/controllers/concerns/decidim/proposals/admin/picker.rb +0 -21
  258. data/app/controllers/decidim/proposals/widgets_controller.rb +0 -29
  259. data/app/helpers/decidim/proposals/admin/filterable_helper.rb +0 -17
  260. data/app/helpers/decidim/proposals/admin/proposals_picker_helper.rb +0 -30
  261. data/app/packs/src/decidim/proposals/admin/proposals_picker.js +0 -50
  262. data/app/packs/stylesheets/decidim/proposals/_proposals.scss +0 -1
  263. data/app/packs/stylesheets/decidim/proposals/proposals/_preview.scss +0 -3
  264. data/app/views/decidim/proposals/collaborative_drafts/_count.html.erb +0 -1
  265. data/app/views/decidim/proposals/collaborative_drafts/_filters.html.erb +0 -32
  266. data/app/views/decidim/proposals/collaborative_drafts/_filters_small_view.html.erb +0 -18
  267. data/app/views/decidim/proposals/collaborative_drafts/_new_collaborative_draft_button.html.erb +0 -11
  268. data/app/views/decidim/proposals/collaborative_drafts/_wizard_aside.html.erb +0 -13
  269. data/app/views/decidim/proposals/collaborative_drafts/_wizard_header.html.erb +0 -14
  270. data/app/views/decidim/proposals/proposals/_count.html.erb +0 -1
  271. data/app/views/decidim/proposals/proposals/_dynamic_map_instructions.html.erb +0 -4
  272. data/app/views/decidim/proposals/proposals/_filters.html.erb +0 -48
  273. data/app/views/decidim/proposals/proposals/_filters_small_view.html.erb +0 -18
  274. data/app/views/decidim/proposals/proposals/_proposal_similar.html.erb +0 -22
  275. data/app/views/decidim/proposals/proposals/_wizard_aside.html.erb +0 -20
  276. data/app/views/decidim/proposals/proposals/participatory_texts/_index.html.erb +0 -19
  277. data/app/views/decidim/proposals/versions/index.html.erb +0 -16
  278. data/config/locales/he-IL.yml +0 -1
  279. data/db/migrate/20240404202756_add_valuation_assignments_count_to_decidim_proposals_proposals.rb +0 -16
  280. data/decidim-proposals.gemspec +0 -40
  281. data/lib/decidim/proposals/test/capybara_proposals_picker.rb +0 -59
@@ -1,92 +1,53 @@
1
- <%= form_required_explanation %>
1
+ <%= form.text_field :title, class: "js-hashtags", value: form_presenter.title %>
2
2
 
3
- <div class="field hashtags__container">
4
- <%= form.text_field :title, class: "js-hashtags", value: form_presenter.title %>
5
- </div>
6
-
7
- <div class="field hashtags__container">
8
- <%= text_editor_for_proposal_body(form) %>
9
- </div>
3
+ <%= text_editor_for_proposal_body(form) %>
10
4
 
11
5
  <% if @form.component_automatic_hashtags.any? %>
12
- <div class="field">
13
- <%= form.label :automatic_hashtags %>
14
- <div class="checkboxes hashtags">
15
- <% @form.component_automatic_hashtags.each do |hashtag| %>
16
- <label>
17
- <%= check_box_tag "", "", { checked: true }, { disabled: true } %>#<%= hashtag %>
18
- </label>
19
- <% end %>
20
- </div>
21
- </div>
6
+ <%= field_set_tag form.label(:automatic_hashtags, nil, for: nil) do %>
7
+ <% @form.component_automatic_hashtags.each do |hashtag| %>
8
+ <%= form.check_box "", checked: true, disabled: true, label: "##{hashtag}", label_options: { class: "form__wrapper-checkbox-label" } %>
9
+ <% end %>
10
+ <% end %>
22
11
  <% end %>
23
12
 
24
13
  <% if @form.component_suggested_hashtags.any? %>
25
- <div class="field">
26
- <%= form.label :suggested_hashtags, nil, for: nil %>
27
- <div class="checkboxes hashtags">
28
- <%= form.collection_check_boxes :suggested_hashtags, @form.component_suggested_hashtags.map { |hashtag| [hashtag.downcase, "##{hashtag}"] }, :first, :last do |option|
29
- option.label { option.check_box(checked: @form.suggested_hashtag_checked?(option.value)) + option.text }
30
- end %>
31
- </div>
32
- </div>
14
+ <%= field_set_tag form.label(:suggested_hashtags, nil, for: nil) do %>
15
+ <%= form.collection_check_boxes :suggested_hashtags, @form.component_suggested_hashtags.map { |hashtag| [hashtag.downcase, "##{hashtag}"] }, :first, :last, { legend_title: "hey ho" } do |option|
16
+ option.label(class: "form__wrapper-checkbox-label") { option.check_box(checked: @form.suggested_hashtag_checked?(option.value)) + option.text }
17
+ end %>
18
+ <% end %>
33
19
  <% end %>
34
20
 
35
21
  <% if @form.geocoding_enabled? %>
36
- <div class="field">
37
- <%= form.check_box :has_address, checked: form_has_address? %>
38
- </div>
22
+ <%= form.geocoding_field :address, placeholder: t("decidim.proposals.proposals.placeholder.address") %>
39
23
 
40
- <div class="field" id="address_input">
41
- <%= form.geocoding_field :address, placeholder: t("decidim.proposals.proposals.placeholder.address") %>
42
- <div class="map" id="address_map">
43
- <%= render partial: "dynamic_map_instructions" %>
44
- <%= dynamic_map_for proposal_preview_data_for_map(@proposal) %>
45
- </div>
24
+ <div id="address_map" class="proposal__container">
25
+ <p class="help-text">
26
+ <%= t("instructions", scope: "decidim.proposals.proposals.dynamic_map_instructions") %> <%= t("description", scope: "decidim.proposals.proposals.dynamic_map_instructions") %>
27
+ </p>
28
+ <%= dynamic_map_for proposal_preview_data_for_map(@proposal) %>
46
29
  </div>
47
30
  <% end %>
48
31
 
49
32
  <% if @form.categories&.any? %>
50
- <div class="field">
51
- <%= form.categories_select :category_id, @form.categories, include_blank: t("decidim.proposals.proposals.edit.select_a_category") %>
52
- </div>
33
+ <%= form.categories_select :category_id, @form.categories, include_blank: t("decidim.proposals.proposals.edit.select_a_category") %>
53
34
  <% end %>
54
35
 
55
36
  <% if current_component.has_subscopes? %>
56
- <div class="field">
57
- <%= scopes_picker_field form, :scope_id, root: current_component.scope %>
58
- </div>
59
- <% end %>
60
-
61
- <% if current_organization.user_groups_enabled? && Decidim::UserGroups::ManageableUserGroups.for(current_user).verified.any? %>
62
- <div class="field">
63
- <%= user_group_select_field form, :user_group_id %>
64
- </div>
37
+ <%= scopes_select_field form, :scope_id, root: current_component.scope %>
65
38
  <% end %>
66
39
 
67
40
  <% if component_settings.attachments_allowed? && @proposal %>
68
- <fieldset class="gallery__container photos_container">
69
- <legend><%= t("gallery_legend", scope: "decidim.proposals.proposals.edit") %></legend>
70
- <div class="row column">
71
- <%= form.attachment :photos,
72
- multiple: false,
73
- label: t("decidim.proposals.proposals.edit.add_image"),
74
- button_label: t("decidim.proposals.proposals.edit.add_image"),
75
- button_edit_label: t("decidim.proposals.proposals.edit.edit_image"),
76
- help_i18n_scope: "decidim.forms.file_help.image",
77
- extension_allowlist: Decidim::OrganizationSettings.for(current_organization).upload_allowed_file_extensions_image %>
78
- </div>
79
- </fieldset>
41
+ <%= form.attachment :documents,
42
+ multiple: true,
43
+ label: t("decidim.proposals.proposals.edit.add_documents"),
44
+ button_label: t("decidim.proposals.proposals.edit.add_documents"),
45
+ button_edit_label: t("decidim.proposals.proposals.edit.edit_documents"),
46
+ button_class: "button button__lg button__transparent-secondary w-full",
47
+ help_i18n_scope: "decidim.forms.file_help.file",
48
+ help_text: t("attachment_legend", scope: "decidim.proposals.proposals.edit") %>
49
+ <% end %>
80
50
 
81
- <fieldset class="attachments_container gallery__container documents_container">
82
- <legend><%= t("attachment_legend", scope: "decidim.proposals.proposals.edit") %></legend>
83
- <div class="row column">
84
- <%= form.attachment :documents,
85
- multiple: true,
86
- label: t("decidim.proposals.proposals.edit.add_documents"),
87
- button_label: t("decidim.proposals.proposals.edit.add_documents"),
88
- button_edit_label: t("decidim.proposals.proposals.edit.edit_documents"),
89
- help_i18n_scope: "decidim.forms.file_help.file" %>
90
- </div>
91
- </fieldset>
51
+ <% if current_organization.user_groups_enabled? && Decidim::UserGroups::ManageableUserGroups.for(current_user).verified.any? %>
52
+ <%= user_group_select_field form, :user_group_id %>
92
53
  <% end %>
@@ -1,35 +1,3 @@
1
- <div class="card card--action card--list">
2
- <% resources.each do |proposal| %>
3
- <div class="card--list__item">
4
- <div class="card--list__text">
5
- <%= link_to resource_locator(proposal).path do %>
6
- <%= icon "proposals", class: "card--list__icon", remove_icon_class: true %>
7
- <% end %>
8
- <div>
9
- <%= link_to resource_locator(proposal).path, class: "card__link" do %>
10
- <h5 class="card--list__heading"><%== decidim_html_escape(present(proposal).title) %></h5>
11
- <% end %>
12
- <% present(proposal) do |proposal| %>
13
- <div class="author">
14
- <span class="author__avatar">
15
- <%= image_tag proposal.author.avatar_url %>
16
- </span>
17
- <span class="author__name">
18
- <strong><%= proposal.author.name %></strong>
19
- <%= proposal.author.nickname %>
20
- </span>
21
- </div>
22
- <% end %>
23
- </div>
24
- </div>
25
- <% if !current_settings.try(:votes_hidden?) && !proposal.component.current_settings.votes_hidden? &&
26
- proposal.component.current_settings.votes_enabled? %>
27
- <div class="card--list__data">
28
- <span class="card--list__data__number">
29
- <%= proposal.votes.size %>
30
- </span> <%= t(".proposal_votes", count: proposal.votes.size) %>
31
- </div>
32
- <% end %>
33
- </div>
34
- <% end %>
35
- </div>
1
+ <% resources.each do |proposal| %>
2
+ <%= cell "decidim/proposals/proposal_l", proposal, url_extra_params: { included_in: resource.to_gid } %>
3
+ <% end %>
@@ -0,0 +1,40 @@
1
+ <% if current_settings.votes_enabled? && (show_endorsements_card? || current_user) %>
2
+ <section class="layout-aside__section">
3
+ <div class="proposal__aside-vote">
4
+ <%= render partial: "vote_button", locals: { proposal: @proposal, from_proposals_list: false } unless @proposal.withdrawn? %>
5
+ <%= render partial: "votes_count", locals: { proposal: @proposal, from_proposals_list: false } %>
6
+ </div>
7
+ </section>
8
+ <% end %>
9
+
10
+ <% if (@proposal.amendable? && allowed_to?(:edit, :proposal, proposal: @proposal)) || (amendments_enabled? && @proposal.amendable? && current_component.current_settings.amendment_creation_enabled && can_participate_in_private_space?) || amendments_enabled? && can_react_to_emendation?(@proposal) || @proposal.withdrawable_by?(current_user) %>
11
+ <section class="layout-aside__section layout-aside__buttons">
12
+ <% if @proposal.amendable? && allowed_to?(:edit, :proposal, proposal: @proposal) %>
13
+ <%= link_to t("edit_proposal", scope: "decidim.proposals.proposals.show"), edit_proposal_path(@proposal), class: "button button__sm button__transparent-secondary w-full" %>
14
+ <% else %>
15
+ <%= amend_button_for @proposal %>
16
+ <% end %>
17
+
18
+ <% if amendments_enabled? && can_react_to_emendation?(@proposal) %>
19
+ <%= emendation_actions_for @proposal %>
20
+ <% end %>
21
+
22
+ <% if @proposal.withdrawable_by?(current_user) %>
23
+ <%= action_authorized_link_to :withdraw, withdraw_proposal_path(@proposal), method: :put, class: "button button__sm button__transparent-secondary w-full", title: t("withdraw_btn_hint", scope: "decidim.proposals.proposals.show" ), data: { confirm: t("withdraw_confirmation_html", scope: "decidim.proposals.proposals.show" ) } do %>
24
+ <span><%= t("withdraw_proposal", scope: "decidim.proposals.proposals.show") %></span>
25
+ <%= icon "pencil-line" %>
26
+ <% end %>
27
+ <% end %>
28
+ </section>
29
+ <% end %>
30
+
31
+ <section class="layout-aside__section">
32
+ <%= cell "decidim/proposals/proposal_link_to_collaborative_draft", @proposal %>
33
+ <%= cell "decidim/proposals/proposal_link_to_rejected_emendation", @proposal %>
34
+ </section>
35
+
36
+ <section class="layout-aside__section actions__secondary">
37
+ <%= follow_button_for(@proposal) %>
38
+ <%= cell "decidim/share_button", nil %>
39
+ <%= cell "decidim/report_button", @proposal %>
40
+ </section>
@@ -1,46 +1,25 @@
1
1
  <% if params.dig("filter", "with_availability").present? && params["filter"]["with_availability"] == "withdrawn" %>
2
- <div class="callout warning">
3
- <%= t("decidim.proposals.proposals.index.text_banner",
4
- go_back_link: link_to(t("decidim.proposals.proposals.index.click_here"), proposals_path("filter[with_availability]" => nil)),
5
- ).html_safe %>
6
- </div>
2
+ <%= cell("decidim/announcement", t("decidim.proposals.proposals.index.text_banner",
3
+ go_back_link: link_to(t("decidim.proposals.proposals.index.click_here"), proposals_path("filter[with_availability]" => nil))
4
+ ).html_safe, callout_class: "warning [&>a]:text-secondary") %>
7
5
  <% end %>
8
6
 
9
- <div class="collection-sort-controls row small-up-1 medium-up-3 card-grid">
10
- <div class="column">
11
- <%= order_selector available_orders, i18n_scope: "decidim.proposals.proposals.orders" %>
12
- </div>
7
+ <% if @proposals.empty? %>
8
+ <%= cell("decidim/announcement", params[:filter].present? ? t(".empty_filters") : t(".empty")) %>
9
+ <% else %>
10
+ <h2 class="h5 md:h3 decorator"><%= t("count", scope: "decidim.proposals.proposals.index", count: @proposals.total_count) %></h2>
13
11
 
14
- <div class="column">
15
- <%= render partial: "decidim/shared/results_per_page" %>
16
- </div>
17
- </div>
12
+ <%= order_selector available_orders, i18n_scope: "decidim.proposals.proposals.orders" %>
18
13
 
19
- <div class="row small-up-1 medium-up-2 card-grid">
20
- <%= render @proposals %>
21
- </div>
22
-
23
- <div class="row">
24
- <div class="columns mediumlarge-8 large-9">
25
- <% if @proposals.empty? %>
26
- <div class="callout secondary">
27
- <% if params[:filter].present? %>
28
- <p><%= t(".empty_filters") %></p>
29
- <% else %>
30
- <p><%= t(".empty") %></p>
31
- <% end %>
32
- </div>
33
- <% end %>
14
+ <div class="card__list-list">
15
+ <%= render @proposals %>
34
16
  </div>
35
- </div>
36
- <%= decidim_paginate @proposals %>
37
17
 
38
- <div class="row">
39
- <div class="text-right">
40
- <% if params.dig("filter", "with_availability").present? && params["filter"]["with_availability"] == "withdrawn" %>
41
- <%= link_to t("decidim.proposals.proposals.index.see_all"), proposals_path("filter[with_availability]" => nil) %>
42
- <% else %>
43
- <%= link_to t("decidim.proposals.proposals.index.see_all_withdrawn"), proposals_path(filter: { with_availability: "withdrawn", with_any_state: [] }) %>
44
- <% end %>
45
- </div>
46
- </div>
18
+ <%= decidim_paginate @proposals %>
19
+ <% end %>
20
+
21
+ <% if params.dig("filter", "with_availability").present? && params["filter"]["with_availability"] == "withdrawn" %>
22
+ <%= link_to t("decidim.proposals.proposals.index.see_all"), proposals_path("filter[with_availability]" => nil), class: "button button__sm button__text-secondary" %>
23
+ <% else %>
24
+ <%= link_to t("decidim.proposals.proposals.index.see_all_withdrawn"), proposals_path(filter: { with_availability: "withdrawn", with_any_state: [] }), class: "button button__sm button__text-secondary" %>
25
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <%# NOTE: The pack_tag do not work as expected, when they are INSIDE the cell, therefore, we create a partial to do so %>
2
+ <%= append_stylesheet_pack_tag "decidim_proposals", media: "all" %>
3
+ <%= append_javascript_pack_tag "decidim_proposals" %>
4
+
5
+ <%= cell "decidim/proposals/proposals_picker", current_component, form:, field: %>
@@ -1,3 +1,3 @@
1
- <span id="remaining-votes-count" class="extra__suport-number">
2
- <%= remaining_votes_count_for(current_user) %>
3
- </span>
1
+ <div id="remaining-votes-count">
2
+ <%= t("votes", scope: "decidim.proposals.proposals.voting_rules.vote_limit", number: remaining_votes_count_for(current_user)) %>
3
+ </div>
@@ -1,24 +1,24 @@
1
- <% if proposal.rejected? || proposal.withdrawn? %>
2
- <div></div>
3
- <% else %>
1
+ <% button_classes = "button button__lg button__secondary w-full" %>
2
+
3
+ <% unless proposal.rejected? || proposal.withdrawn? %>
4
4
  <% if component_settings.participatory_texts_enabled? && from_proposals_list %>
5
- <%= render partial: "decidim/proposals/proposals/participatory_texts/proposal_vote_button", locals: { proposal: proposal, from_proposals_list: true } %>
5
+ <%= render partial: "decidim/proposals/proposals/participatory_texts/proposal_vote_button", locals: { proposal:, from_proposals_list: true } %>
6
6
  <% else %>
7
- <div id="proposal-<%= proposal.id %>-vote-button" class="button--vote-button">
7
+ <div id="proposal-<%= proposal.id %>-vote-button">
8
8
  <% if !current_user %>
9
9
  <% if current_settings.votes_blocked? %>
10
- <%= action_authorized_button_to :vote, t("decidim.proposals.proposals.vote_button.votes_blocked"), proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list: from_proposals_list), resource: proposal, class: "button #{vote_button_classes(from_proposals_list)} disabled", disabled: true %>
10
+ <%= action_authorized_button_to :vote, t("decidim.proposals.proposals.vote_button.votes_blocked"), proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list:), resource: proposal, class: button_classes, disabled: true %>
11
11
  <% else %>
12
- <%= action_authorized_button_to :vote, proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list: from_proposals_list), resource: proposal, class: "button #{vote_button_classes(from_proposals_list)}", data: { disable: true, "redirect-url": proposal_path(proposal) } do %>
12
+ <%= action_authorized_button_to :vote, proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list:), resource: proposal, class: button_classes, data: { disable: true, "redirect-url": proposal_path(proposal) } do %>
13
13
  <%= t("decidim.proposals.proposals.vote_button.vote") %>
14
- <span class="show-for-sr"><%= decidim_html_escape(present(proposal).title) %></span>
14
+ <span class="sr-only"><%= decidim_html_escape(present(proposal).title) %></span>
15
15
  <% end %>
16
16
  <% end %>
17
17
  <% else %>
18
18
  <% if @voted_proposals ? @voted_proposals.include?(proposal.id) : proposal.voted_by?(current_user) %>
19
19
  <%= action_authorized_button_to(
20
20
  :vote,
21
- proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list: from_proposals_list),
21
+ proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list:),
22
22
  resource: proposal,
23
23
  method: :delete,
24
24
  remote: true,
@@ -28,25 +28,24 @@
28
28
  replace: t("decidim.proposals.proposals.vote_button.already_voted_hover"),
29
29
  "redirect-url": proposal_path(proposal)
30
30
  },
31
- class: "button #{vote_button_classes(from_proposals_list)} active light",
31
+ class: "#{button_classes} is-hover",
32
32
  id: "vote_button-#{proposal.id}"
33
33
  ) do %>
34
- <%= icon("check", class: "icon--small") %>
35
34
  <%= t("decidim.proposals.proposals.vote_button.already_voted") %>
36
- <span class="show-for-sr"><%= decidim_html_escape(present(proposal).title) %></span>
35
+ <span class="sr-only"><%= decidim_html_escape(present(proposal).title) %></span>
37
36
  <% end %>
38
37
  <% else %>
39
38
  <% if proposal.maximum_votes_reached? && !proposal.can_accumulate_supports_beyond_threshold && current_component.participatory_space.can_participate?(current_user) %>
40
- <%= content_tag :button, t("decidim.proposals.proposals.vote_button.maximum_votes_reached"), class: "button #{vote_button_classes(from_proposals_list)} disabled", disabled: true %>
39
+ <%= content_tag :button, t("decidim.proposals.proposals.vote_button.maximum_votes_reached"), class: button_classes, disabled: true %>
41
40
  <% else %>
42
41
  <% if vote_limit_enabled? && remaining_votes_count_for(current_user) == 0 %>
43
- <%= content_tag :button, t("decidim.proposals.proposals.vote_button.no_votes_remaining"), class: "button #{vote_button_classes(from_proposals_list)}", disabled: true %>
42
+ <%= content_tag :button, t("decidim.proposals.proposals.vote_button.no_votes_remaining"), class: button_classes, disabled: true %>
44
43
  <% elsif current_settings.votes_blocked? || !current_component.participatory_space.can_participate?(current_user) %>
45
- <%= content_tag :button, t("decidim.proposals.proposals.vote_button.votes_blocked"), class: "button #{vote_button_classes(from_proposals_list)} disabled", disabled: true %>
44
+ <%= content_tag :button, t("decidim.proposals.proposals.vote_button.votes_blocked"), class: button_classes, disabled: true %>
46
45
  <% else %>
47
- <%= action_authorized_button_to :vote, proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list: from_proposals_list), resource: proposal, remote: true, data: { disable: true, "redirect-url": proposal_path(proposal) }, class: "button #{vote_button_classes(from_proposals_list)}" do %>
46
+ <%= action_authorized_button_to :vote, proposal_proposal_vote_path(proposal_id: proposal, from_proposals_list:), resource: proposal, remote: true, data: { disable: true, "redirect-url": proposal_path(proposal) }, class: button_classes do %>
48
47
  <%= t("decidim.proposals.proposals.vote_button.vote") %>
49
- <span class="show-for-sr"><%= decidim_html_escape(present(proposal).title) %></span>
48
+ <span class="sr-only"><%= decidim_html_escape(present(proposal).title) %></span>
50
49
  <% end %>
51
50
  <% end %>
52
51
  <% end %>
@@ -1,18 +1,15 @@
1
1
  <% if !current_settings.votes_hidden? && current_component.participatory_space.can_participate?(current_user) %>
2
2
  <% if component_settings.participatory_texts_enabled? && from_proposals_list %>
3
- <%= render partial: "decidim/proposals/proposals/participatory_texts/proposal_votes_count", locals: { proposal: proposal, from_proposals_list: true } %>
3
+ <%= render partial: "decidim/proposals/proposals/participatory_texts/proposal_votes_count", locals: { proposal:, from_proposals_list: true } %>
4
4
  <% else %>
5
5
  <% progress ||= proposal.proposal_votes_count || 0 %>
6
6
  <% total ||= proposal.maximum_votes || 0 %>
7
- <% subtitle_text = progress >= total ? t("decidim.proposals.proposals.votes_count.most_popular_proposal") : t("decidim.proposals.proposals.votes_count.need_more_votes") %>
8
7
  <%= cell(
9
8
  "decidim/progress_bar",
10
9
  progress,
11
- total: total,
10
+ total:,
12
11
  units_name: "decidim.proposals.proposals.votes_count.count",
13
- element_id: "proposal-#{proposal.id}-votes-count",
14
- subtitle_text: subtitle_text,
15
- small: from_proposals_list
12
+ element_id: "proposal-#{proposal.id}-votes-count"
16
13
  ) %>
17
14
  <% end %>
18
15
  <% end %>
@@ -1,50 +1,37 @@
1
1
  <% if show_voting_rules? %>
2
- <div class="row column voting-rules">
3
- <div class="callout secondary">
4
- <div class="row">
5
- <div class="columns medium-8 large-9">
6
- <h3 class="heading3"><%= t(".title") %></h3>
7
- <ul>
8
- <% if vote_limit_enabled? %>
9
- <li><%= t(".vote_limit.description", limit: component_settings.vote_limit) %></li>
10
- <% end %>
2
+ <% announcement_body = capture do %>
3
+ <div class="editor-content">
4
+ <ul>
5
+ <% if vote_limit_enabled? %>
6
+ <li><%= t(".vote_limit.description", limit: component_settings.vote_limit) %></li>
7
+ <% end %>
11
8
 
12
- <% if proposal_limit_enabled? %>
13
- <li><%= t(".proposal_limit.description", limit: proposal_limit) %></li>
14
- <% end %>
9
+ <% if proposal_limit_enabled? %>
10
+ <li><%= t(".proposal_limit.description", limit: proposal_limit) %></li>
11
+ <% end %>
15
12
 
16
- <% if threshold_per_proposal_enabled? %>
17
- <li><%= t(".threshold_per_proposal.description", limit: threshold_per_proposal) %></li>
18
- <% end %>
13
+ <% if threshold_per_proposal_enabled? %>
14
+ <li><%= t(".threshold_per_proposal.description", limit: threshold_per_proposal) %></li>
15
+ <% end %>
19
16
 
20
- <% if can_accumulate_supports_beyond_threshold? %>
21
- <li><%= t(".can_accumulate_supports_beyond_threshold.description", limit: threshold_per_proposal) %></li>
22
- <% end %>
17
+ <% if can_accumulate_supports_beyond_threshold? %>
18
+ <li><%= t(".can_accumulate_supports_beyond_threshold.description", limit: threshold_per_proposal) %></li>
19
+ <% end %>
23
20
 
24
- <% if minimum_votes_per_user_enabled? %>
25
- <li>
26
- <%= t(".minimum_votes_per_user.description", votes: minimum_votes_per_user) %>
27
- <% if votes_given >= minimum_votes_per_user %>
28
- <%= t(".minimum_votes_per_user.given_enough_votes") %>
29
- <% else %>
30
- <%= t(".minimum_votes_per_user.supports_remaining", remaining_votes: minimum_votes_per_user - votes_given) %>
31
- <% end %>
32
- </li>
21
+ <% if minimum_votes_per_user_enabled? %>
22
+ <li>
23
+ <%= t(".minimum_votes_per_user.description", votes: minimum_votes_per_user) %>
24
+ <% if votes_given >= minimum_votes_per_user %>
25
+ <%= t(".minimum_votes_per_user.given_enough_votes") %>
26
+ <% else %>
27
+ <%= t(".minimum_votes_per_user.supports_remaining", remaining_votes: minimum_votes_per_user - votes_given) %>
33
28
  <% end %>
34
- </ul>
35
- </div>
36
- <% if current_user_can_vote? %>
37
- <div class="columns medium-4 large-3">
38
- <div class="card card--nomargin text-center remaining-votes-counter">
39
- <div class="card__content">
40
- <span class="definition-data__title"><%= t(".vote_limit.left", limit: component_settings.vote_limit) %></span>
41
- <%= render partial: "decidim/proposals/proposals/remaining_votes_count" %>
42
- <span class="extra__suport-text"><%= t(".vote_limit.votes") %></span>
43
- </div>
44
- </div>
45
- </div>
29
+ </li>
46
30
  <% end %>
47
- </div>
31
+ </ul>
32
+ <%= render partial: "decidim/proposals/proposals/remaining_votes_count" if current_user_can_vote? %>
48
33
  </div>
49
- </div>
34
+ <% end %>
35
+
36
+ <%= cell("decidim/announcement", { title: t(".title"), body: announcement_body }, id: "voting-rules") %>
50
37
  <% end %>
@@ -1,8 +1,17 @@
1
+ <div class="flex justify-center">
2
+ <h1 class="title-decorator my-12">
3
+ <%= proposal_wizard_step_title action_name %>
4
+ <%= "(#{@similar_proposals.count})" if @similar_proposals.present? %>
5
+ </h1>
6
+ </div>
7
+
8
+ <%= wizard_steps(@step) %>
9
+
1
10
  <% if @step == :step_4 %>
2
11
  <% body_messages = [t("decidim.proposals.proposals.preview.announcement_body")]
3
- if component_settings.proposal_edit_time == "limited"
4
- body_messages << t("decidim.proposals.proposals.preview.proposal_edit_before_minutes", count: component_settings.proposal_edit_before_minutes)
5
- end %>
12
+ if component_settings.proposal_edit_time == "limited"
13
+ body_messages << t("decidim.proposals.proposals.preview.proposal_edit_before_minutes", count: component_settings.proposal_edit_before_minutes)
14
+ end %>
6
15
 
7
16
  <%= cell(
8
17
  "decidim/announcement",
@@ -17,26 +26,11 @@
17
26
  <% end %>
18
27
 
19
28
  <% if proposal_wizard_step_help_text?(@step) %>
20
- <div class="proposal_wizard_help_text">
21
- <% callout_step_help_text_class ||= nil %>
22
- <%= cell(
23
- "decidim/announcement",
24
- component_settings.try("proposal_wizard_#{@step}_help_text"),
25
- callout_class: callout_step_help_text_class
26
- ) %>
27
- </div>
29
+ <% callout_step_help_text_class ||= nil %>
30
+ <%= cell(
31
+ "decidim/announcement",
32
+ component_settings.try("proposal_wizard_#{@step}_help_text"),
33
+ callout_class: callout_step_help_text_class,
34
+ id: "proposal_wizard_help_text"
35
+ ) %>
28
36
  <% end %>
29
-
30
- <h2 class="section-heading">
31
- <%= proposal_wizard_step_title action_name %>
32
- <%= "(#{@similar_proposals.count})" if @similar_proposals.present? %>
33
- </h2>
34
-
35
- <div class="hide-for-large m-bottom">
36
- <div><%= proposal_wizard_steps_title %></div>
37
- <div><%= proposal_wizard_current_step_of(@step) %></div>
38
-
39
- <div id="steps" class="wizard__steps steps-toggle is-hidden" data-toggler=".is-hidden">
40
- <%= proposal_wizard_stepper(@step) %>
41
- </div>
42
- </div>
@@ -1,23 +1,24 @@
1
1
  <% add_decidim_page_title(proposal_wizard_step_title(action_name)) %>
2
2
 
3
- <div class="row">
4
- <%= render partial: "wizard_aside" %>
3
+ <% append_stylesheet_pack_tag "decidim_proposals", media: "all" %>
4
+ <% append_javascript_pack_tag "decidim_proposals" %>
5
5
 
6
- <div class="columns large-6">
7
- <%= render partial: "wizard_header", locals: { callout_step_help_text_class: "warning" } %>
6
+ <%= render layout: "layouts/decidim/shared/layout_center" do %>
8
7
 
9
- <% if @similar_proposals.presence %>
10
- <div class="row small-up-1 card-grid">
11
- <% @similar_proposals.each do |proposal| %>
12
- <%= render partial: "proposal_similar", locals: { proposal: proposal } %>
13
- <% end %>
14
- </div>
15
- <% end %>
8
+ <%= render partial: "wizard_header", locals: { callout_step_help_text_class: "warning" } %>
16
9
 
17
- <div class="row column text-center">
18
- <%= link_to t(".continue"), complete_proposal_path(@proposal), class: "button small" %>
10
+ <% if @similar_proposals.present? %>
11
+ <div class="proposal__container my-10">
12
+ <% @similar_proposals.each do |proposal| %>
13
+ <%= card_for @proposal %>
14
+ <% end %>
19
15
  </div>
20
- </div>
16
+ <% end %>
21
17
 
22
- <div class="columns large-3"></div>
23
- </div>
18
+ <div class="form__wrapper-block flex-col-reverse md:flex-row justify-between">
19
+ <%= link_to complete_proposal_path(@proposal), class: "button button__sm md:button__lg button__secondary ml-auto" do %>
20
+ <span><%= t("continue", scope: "decidim.proposals.proposals.compare") %></span>
21
+ <%= icon "arrow-right-line" %>
22
+ <% end %>
23
+ </div>
24
+ <% end %>
@@ -1,26 +1,31 @@
1
1
  <% add_decidim_page_title(proposal_wizard_step_title(action_name)) %>
2
2
 
3
- <div class="row">
4
- <%= render partial: "wizard_aside" %>
5
-
6
- <div class="columns large-6">
7
- <%= render partial: "wizard_header" %>
8
-
9
- <div class="card">
10
- <div class="card__content">
11
- <%= decidim_form_for(@form, url: update_draft_proposal_path(@proposal), method: :patch) do |form| %>
12
- <%= render partial: "edit_form_fields", locals: { form: form } %>
13
-
14
- <div class="actions">
15
- <%= form.submit t(".send"), class: "button expanded mt-s mb-none", data: { disable: true } %>
16
- </div>
17
- <% end %>
18
- </div>
3
+ <%= append_stylesheet_pack_tag "decidim_proposals", media: "all" %>
4
+ <%= append_javascript_pack_tag "decidim_proposals" %>
5
+
6
+ <%= render layout: "layouts/decidim/shared/layout_center" do %>
7
+
8
+ <%= render partial: "wizard_header" %>
9
+
10
+ <%= decidim_form_for(@form, url: update_draft_proposal_path(@proposal), method: :patch) do |form| %>
11
+
12
+ <%= form_required_explanation %>
13
+
14
+ <div class="form__wrapper">
15
+ <%= render partial: "edit_form_fields", locals: { form: } %>
16
+ </div>
17
+
18
+ <div class="form__wrapper-block flex-col-reverse md:flex-row justify-between">
19
+ <%= link_to proposal_wizard_aside_link_to_back(@step), class: "button button__sm md:button__lg button__text-secondary" do %>
20
+ <%= icon "arrow-left-line" %>
21
+ <%= wizard_aside_back_text(@step) %>
22
+ <% end %>
23
+
24
+ <button type="submit" class="button button__sm md:button__lg button__secondary">
25
+ <span><%= t("send", scope: "decidim.proposals.proposals.complete") %></span>
26
+ <%= icon "arrow-right-line" %>
27
+ </button>
19
28
  </div>
20
- </div>
21
- <div class="columns large-3"></div>
22
- </div>
29
+ <% end %>
23
30
 
24
- <% content_for :js_content do %>
25
- <%= javascript_pack_tag "decidim_proposals" %>
26
31
  <% end %>