decidim-proposals 0.27.6 → 0.28.0.rc4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (278) 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 +79 -27
  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 +2 -2
  114. data/app/presenters/decidim/proposals/admin_log/valuation_assignment_presenter.rb +2 -2
  115. data/app/presenters/decidim/proposals/proposal_presenter.rb +6 -2
  116. data/app/services/decidim/proposals/diff_renderer.rb +3 -3
  117. data/app/services/decidim/proposals/proposal_builder.rb +6 -6
  118. data/app/views/decidim/proposals/admin/participatory_texts/_article-preview.html.erb +2 -4
  119. data/app/views/decidim/proposals/admin/participatory_texts/_bulk-actions.html.erb +2 -2
  120. data/app/views/decidim/proposals/admin/participatory_texts/index.html.erb +58 -46
  121. data/app/views/decidim/proposals/admin/participatory_texts/new_import.html.erb +31 -33
  122. data/app/views/decidim/proposals/admin/proposal_answers/_form.html.erb +17 -11
  123. data/app/views/decidim/proposals/admin/proposal_notes/_form.html.erb +5 -6
  124. data/app/views/decidim/proposals/admin/proposal_notes/_proposal_notes.html.erb +28 -36
  125. data/app/views/decidim/proposals/admin/proposals/_bulk-actions.html.erb +27 -30
  126. data/app/views/decidim/proposals/admin/proposals/_documents.html.erb +13 -0
  127. data/app/views/decidim/proposals/admin/proposals/_endorsers.html.erb +25 -0
  128. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +70 -90
  129. data/app/views/decidim/proposals/admin/proposals/_meetings.html.erb +13 -0
  130. data/app/views/decidim/proposals/admin/proposals/_photos.html.erb +13 -0
  131. data/app/views/decidim/proposals/admin/proposals/_proposal-tr.html.erb +31 -25
  132. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_assign_to_valuator.html.erb +3 -3
  133. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_dropdown.html.erb +3 -2
  134. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_merge.html.erb +4 -4
  135. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_publish_answers.html.erb +3 -3
  136. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_recategorize.html.erb +3 -3
  137. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_scope-change.html.erb +4 -8
  138. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_split.html.erb +3 -3
  139. data/app/views/decidim/proposals/admin/proposals/bulk_actions/_unassign_from_valuator.html.erb +3 -3
  140. data/app/views/decidim/proposals/admin/proposals/edit.html.erb +17 -7
  141. data/app/views/decidim/proposals/admin/proposals/index.html.erb +50 -63
  142. data/app/views/decidim/proposals/admin/proposals/new.html.erb +16 -6
  143. data/app/views/decidim/proposals/admin/proposals/publish_answers.js.erb +2 -2
  144. data/app/views/decidim/proposals/admin/proposals/show.html.erb +204 -162
  145. data/app/views/decidim/proposals/admin/proposals/update_attribute.js.erb +5 -6
  146. data/app/views/decidim/proposals/admin/proposals_imports/new.html.erb +48 -34
  147. data/app/views/decidim/proposals/collaborative_drafts/_accept_request_access_form.html.erb +1 -1
  148. data/app/views/decidim/proposals/collaborative_drafts/_actions.html.erb +7 -0
  149. data/app/views/decidim/proposals/collaborative_drafts/_collaborative_draft_aside.html.erb +53 -0
  150. data/app/views/decidim/proposals/collaborative_drafts/_collaborative_drafts.html.erb +12 -13
  151. data/app/views/decidim/proposals/collaborative_drafts/_collaborator_requests.html.erb +8 -12
  152. data/app/views/decidim/proposals/collaborative_drafts/_edit_form_fields.html.erb +26 -54
  153. data/app/views/decidim/proposals/collaborative_drafts/_reject_request_access_form.html.erb +1 -3
  154. data/app/views/decidim/proposals/collaborative_drafts/_request_access_form.html.erb +1 -1
  155. data/app/views/decidim/proposals/collaborative_drafts/edit.html.erb +23 -25
  156. data/app/views/decidim/proposals/collaborative_drafts/index.html.erb +30 -22
  157. data/app/views/decidim/proposals/collaborative_drafts/index.js.erb +0 -5
  158. data/app/views/decidim/proposals/collaborative_drafts/new.html.erb +22 -18
  159. data/app/views/decidim/proposals/collaborative_drafts/show.html.erb +39 -109
  160. data/app/views/decidim/proposals/proposal_votes/update_buttons_and_counters.js.erb +2 -2
  161. data/app/views/decidim/proposals/proposals/_actions.html.erb +13 -0
  162. data/app/views/decidim/proposals/proposals/_edit_form_fields.html.erb +31 -70
  163. data/app/views/decidim/proposals/proposals/_linked_proposals.html.erb +3 -35
  164. data/app/views/decidim/proposals/proposals/_proposal_aside.html.erb +40 -0
  165. data/app/views/decidim/proposals/proposals/_proposals.html.erb +18 -39
  166. data/app/views/decidim/proposals/proposals/_proposals_picker.html.erb +5 -0
  167. data/app/views/decidim/proposals/proposals/_remaining_votes_count.html.erb +3 -3
  168. data/app/views/decidim/proposals/proposals/_vote_button.html.erb +16 -17
  169. data/app/views/decidim/proposals/proposals/_votes_count.html.erb +3 -6
  170. data/app/views/decidim/proposals/proposals/_voting_rules.html.erb +28 -41
  171. data/app/views/decidim/proposals/proposals/_wizard_header.html.erb +19 -25
  172. data/app/views/decidim/proposals/proposals/compare.html.erb +17 -16
  173. data/app/views/decidim/proposals/proposals/complete.html.erb +26 -21
  174. data/app/views/decidim/proposals/proposals/edit.html.erb +32 -27
  175. data/app/views/decidim/proposals/proposals/edit_draft.html.erb +21 -19
  176. data/app/views/decidim/proposals/proposals/index.html.erb +56 -47
  177. data/app/views/decidim/proposals/proposals/index.js.erb +0 -5
  178. data/app/views/decidim/proposals/proposals/new.html.erb +30 -35
  179. data/app/views/decidim/proposals/proposals/participatory_texts/_proposal_vote_button.html.erb +5 -5
  180. data/app/views/decidim/proposals/proposals/participatory_texts/_view_index.html.erb +15 -8
  181. data/app/views/decidim/proposals/proposals/participatory_texts/participatory_text.html.erb +32 -15
  182. data/app/views/decidim/proposals/proposals/preview.html.erb +37 -34
  183. data/app/views/decidim/proposals/proposals/show.html.erb +90 -108
  184. data/app/views/decidim/proposals/versions/show.html.erb +13 -5
  185. data/config/assets.rb +0 -1
  186. data/config/brakeman.ignore +31 -56
  187. data/config/locales/ar.yml +21 -157
  188. data/config/locales/bg.yml +2 -184
  189. data/config/locales/ca.yml +87 -145
  190. data/config/locales/cs.yml +74 -134
  191. data/config/locales/de.yml +71 -129
  192. data/config/locales/el.yml +57 -121
  193. data/config/locales/en.yml +76 -134
  194. data/config/locales/es-MX.yml +75 -133
  195. data/config/locales/es-PY.yml +75 -133
  196. data/config/locales/es.yml +82 -140
  197. data/config/locales/eu.yml +74 -132
  198. data/config/locales/fi-plain.yml +68 -126
  199. data/config/locales/fi.yml +67 -125
  200. data/config/locales/fr-CA.yml +72 -131
  201. data/config/locales/fr.yml +76 -135
  202. data/config/locales/ga-IE.yml +0 -39
  203. data/config/locales/gl.yml +10 -130
  204. data/config/locales/hu.yml +43 -148
  205. data/config/locales/id-ID.yml +8 -114
  206. data/config/locales/is-IS.yml +3 -60
  207. data/config/locales/it.yml +12 -145
  208. data/config/locales/ja.yml +78 -141
  209. data/config/locales/lb.yml +0 -5
  210. data/config/locales/lt.yml +64 -126
  211. data/config/locales/lv.yml +12 -144
  212. data/config/locales/nl.yml +14 -147
  213. data/config/locales/no.yml +10 -134
  214. data/config/locales/pl.yml +15 -177
  215. data/config/locales/pt-BR.yml +13 -199
  216. data/config/locales/pt.yml +10 -142
  217. data/config/locales/ro-RO.yml +12 -146
  218. data/config/locales/ru.yml +4 -70
  219. data/config/locales/sk.yml +18 -145
  220. data/config/locales/sr-CS.yml +0 -23
  221. data/config/locales/sv.yml +25 -145
  222. data/config/locales/tr-TR.yml +14 -148
  223. data/config/locales/uk.yml +4 -70
  224. data/config/locales/zh-CN.yml +8 -135
  225. data/config/locales/zh-TW.yml +34 -107
  226. data/db/migrate/20170307085300_migrate_proposal_reports_data_to_reports.rb +1 -1
  227. data/db/migrate/20230427105700_change_states_on_collaborative_drafts.rb +34 -0
  228. data/db/migrate/20230427105700_change_states_on_proposals.rb +34 -0
  229. data/lib/decidim/api/proposals_type.rb +2 -2
  230. data/lib/decidim/proposals/component.rb +11 -289
  231. data/lib/decidim/proposals/doc_to_markdown.rb +0 -4
  232. data/lib/decidim/proposals/engine.rb +43 -7
  233. data/lib/decidim/proposals/import/proposal_answer_creator.rb +1 -1
  234. data/lib/decidim/proposals/import/proposal_creator.rb +10 -10
  235. data/lib/decidim/proposals/markdown_to_proposals.rb +8 -2
  236. data/lib/decidim/proposals/proposal_serializer.rb +4 -5
  237. data/lib/decidim/proposals/seeds.rb +278 -0
  238. data/lib/decidim/proposals/test/factories.rb +105 -72
  239. data/lib/decidim/proposals/valuatable.rb +1 -2
  240. data/lib/decidim/proposals/version.rb +1 -1
  241. metadata +57 -69
  242. data/app/cells/decidim/proposals/collaborative_draft_m/footer.erb +0 -6
  243. data/app/cells/decidim/proposals/collaborative_draft_m/tags.erb +0 -1
  244. data/app/cells/decidim/proposals/collaborative_draft_m_cell.rb +0 -44
  245. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals/elements.erb +0 -5
  246. data/app/cells/decidim/proposals/content_blocks/highlighted_proposals/heading.erb +0 -1
  247. data/app/cells/decidim/proposals/proposal_link_to_rejected_emendation/show.erb +0 -9
  248. data/app/cells/decidim/proposals/proposal_m/footer.erb +0 -26
  249. data/app/cells/decidim/proposals/proposal_m/tags.erb +0 -1
  250. data/app/cells/decidim/proposals/proposal_m_cell.rb +0 -151
  251. data/app/cells/decidim/proposals/proposal_tags/show.erb +0 -33
  252. data/app/cells/decidim/proposals/proposal_tags_cell.rb +0 -35
  253. data/app/cells/decidim/proposals/proposals_picker/proposals.erb +0 -12
  254. data/app/controllers/concerns/decidim/proposals/admin/picker.rb +0 -21
  255. data/app/controllers/decidim/proposals/widgets_controller.rb +0 -29
  256. data/app/helpers/decidim/proposals/admin/filterable_helper.rb +0 -17
  257. data/app/helpers/decidim/proposals/admin/proposals_picker_helper.rb +0 -30
  258. data/app/packs/src/decidim/proposals/admin/proposals_picker.js +0 -50
  259. data/app/packs/stylesheets/decidim/proposals/_proposals.scss +0 -1
  260. data/app/packs/stylesheets/decidim/proposals/proposals/_preview.scss +0 -3
  261. data/app/views/decidim/proposals/collaborative_drafts/_count.html.erb +0 -1
  262. data/app/views/decidim/proposals/collaborative_drafts/_filters.html.erb +0 -32
  263. data/app/views/decidim/proposals/collaborative_drafts/_filters_small_view.html.erb +0 -18
  264. data/app/views/decidim/proposals/collaborative_drafts/_new_collaborative_draft_button.html.erb +0 -11
  265. data/app/views/decidim/proposals/collaborative_drafts/_wizard_aside.html.erb +0 -13
  266. data/app/views/decidim/proposals/collaborative_drafts/_wizard_header.html.erb +0 -14
  267. data/app/views/decidim/proposals/proposals/_count.html.erb +0 -1
  268. data/app/views/decidim/proposals/proposals/_dynamic_map_instructions.html.erb +0 -4
  269. data/app/views/decidim/proposals/proposals/_filters.html.erb +0 -48
  270. data/app/views/decidim/proposals/proposals/_filters_small_view.html.erb +0 -18
  271. data/app/views/decidim/proposals/proposals/_proposal_similar.html.erb +0 -22
  272. data/app/views/decidim/proposals/proposals/_wizard_aside.html.erb +0 -20
  273. data/app/views/decidim/proposals/proposals/participatory_texts/_index.html.erb +0 -19
  274. data/app/views/decidim/proposals/versions/index.html.erb +0 -16
  275. data/config/locales/he-IL.yml +0 -1
  276. data/db/migrate/20240404202756_add_valuation_assignments_count_to_decidim_proposals_proposals.rb +0 -16
  277. data/decidim-proposals.gemspec +0 -40
  278. data/lib/decidim/proposals/test/capybara_proposals_picker.rb +0 -59
@@ -1,128 +1,58 @@
1
- <% add_decidim_page_title(Decidim::Proposals::CollaborativeDraft.model_name.human(count: 2)) %>
1
+ <% add_decidim_page_title(t("name", scope: "decidim.proposals.collaborative_drafts")) %>
2
2
  <% add_decidim_meta_tags({
3
- description: present(@collaborative_draft).body,
4
- title: present(@collaborative_draft).title,
5
- url: collaborative_draft_url(@collaborative_draft.id)
6
- }) %>
3
+ description: present(@collaborative_draft).body,
4
+ title: present(@collaborative_draft).title,
5
+ url: collaborative_draft_url(@collaborative_draft.id)
6
+ }) %>
7
7
 
8
- <% if current_user.nil? || allowed_to?(:request_access, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
9
- <div class="row">
10
- <div class="columns">
11
- <div class="callout secondary"><%= t(".info-message").html_safe %></div>
12
- </div>
13
- </div>
14
- <% end %>
8
+ <%= append_stylesheet_pack_tag "decidim_proposals", media: "all" %>
9
+ <%= append_javascript_pack_tag "decidim_proposals" %>
15
10
 
16
- <div class="row column view-header">
17
- <div class="m-bottom">
18
- <%= link_to collaborative_drafts_path do %>
19
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
20
- <%= t(".back") %>
21
- <% end %>
22
- </div>
23
-
24
- <h2 class="heading2">
25
- <%= present(@collaborative_draft).title(links: true, html_escape: true) %>
26
- </h2>
11
+ <% content_for :aside do %>
12
+ <%= render partial: "collaborative_draft_aside" %>
13
+ <% end %>
27
14
 
28
- <%= cell("decidim/coauthorships", @collaborative_draft, has_actions: true, size: 3, context: { current_user: current_user }) %>
29
- </div>
15
+ <%= render layout: "layouts/decidim/shared/layout_item", locals: { back_path: collaborative_drafts_path } do %>
30
16
 
31
- <div class="row">
32
- <div class="columns mediumlarge-8 large-9">
33
- <div class="section">
34
- <%== cell("decidim/proposals/collaborative_draft_m", @collaborative_draft, full_badge: true).badge %>
17
+ <section class="layout-main__section layout-main__heading">
18
+ <%= cell("decidim/announcement", t("info-message", scope: "decidim.proposals.collaborative_drafts.show").html_safe) if current_user.nil? || allowed_to?(:request_access, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
35
19
 
36
- <%= decidim_sanitize_editor present(@collaborative_draft).body(links: true) %>
20
+ <h1 class="h2 decorator"><%= present(@collaborative_draft).title(links: true, html_escape: true) %></h1>
37
21
 
38
- <% if component_settings.geocoding_enabled? %>
22
+ <% if component_settings.geocoding_enabled? %>
23
+ <div class="static-map__container">
39
24
  <%= render partial: "decidim/shared/static_map", locals: { icon_name: "proposals", geolocalizable: @collaborative_draft } %>
40
- <% end %>
41
-
42
- <%= cell "decidim/tags", @collaborative_draft, context: { extra_classes: ["tags--collaborative-draft"] } %>
43
- </div>
44
- </div>
45
-
46
- <div class="columns section view-side mediumlarge-4 large-3">
47
- <% if allowed_to?(:publish, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
48
- <div class="card text-center" id="collaborative_draft_publish">
49
- <div class="card__content">
50
- <%= cell "decidim/proposals/irreversible_action_modal", @collaborative_draft, action: :publish %>
51
- <div class="text-small">
52
- <%= t("publish_info", scope:"decidim.proposals.collaborative_drafts.show") %>
53
- <%= cell "decidim/proposals/irreversible_action_modal", @collaborative_draft, action: :withdraw %>
54
- </div>
55
- </div>
56
25
  </div>
57
26
  <% end %>
58
27
 
59
- <div class="card text-center">
60
- <div class="card__content">
61
- <% if @collaborative_draft.published? %>
62
- <%= cell "decidim/proposals/collaborative_draft_link_to_proposal", @collaborative_draft %>
63
- <% else %>
64
- <div>
65
- <%= resource_version_number(@collaborative_draft.versions_count, "text-large") %>
66
- <div class="text-medium">
67
- <%= resource_version_of(@collaborative_draft.versions_count) %>
68
- </div>
69
- </div>
28
+ <div class="layout-author">
29
+ <%= cell "decidim/coauthorships", @collaborative_draft %>
70
30
 
71
- <div>
72
- <span class="text-medium">
73
- <%= link_to_other_resource_versions(collaborative_draft_versions_path(@collaborative_draft)) %>
74
- </span>
75
- </div>
76
- <% end %>
77
-
78
- <% if allowed_to?(:edit, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
79
- <%= link_to t("edit", scope:"decidim.proposals.collaborative_drafts.show"), edit_collaborative_draft_path(@collaborative_draft), class: "button hollow expanded button--sc mt-s", id: "collaborative_draft_edit" %>
80
- <% end %>
81
-
82
- <%= render "request_access_form" %>
83
-
84
- <% if @collaborative_draft.requesters.include? current_user %>
85
- <button type="button" class="button expanded button--sc mt-s">
86
- <%= t("requested_access", scope:"decidim.proposals.collaborative_drafts.show") %>
87
- </button>
88
- <% end %>
89
- </div>
90
-
91
- <div class="card__status">
92
- <ul class="card-data">
93
- <li class="card-data__item authors_status">
94
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.authors") do %>
95
- <%= icon("people", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.versions.group_by(&:whodunnit).size}" %>
96
- <% end %>
97
- </li>
31
+ <% if @collaborative_draft.state %>
32
+ <span class="<%= collaborative_drafts_state_class(@collaborative_draft.state) %> label">
33
+ <%= humanize_collaborative_draft_state(@collaborative_draft.state) %>
34
+ </span>
35
+ <% end %>
36
+ </div>
37
+ </section>
98
38
 
99
- <li class="card-data__item versions_status">
100
- <%= link_to collaborative_draft_versions_path(@collaborative_draft) do %>
101
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.contributions") do %>
102
- <%= icon("pencil", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.versions.count}" %>
103
- <% end %>
104
- <% end %>
105
- </li>
106
- <li class="card-data__item">
107
- <%= link_to "#comments" do %>
108
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.comments") do %>
109
- <%= icon("comment-square", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.comments_count}" %>
110
- <% end %>
111
- <% end %>
112
- </li>
113
- </ul>
114
- </div>
39
+ <section class="layout-main__section">
40
+ <div class="editor-content">
41
+ <%= decidim_sanitize_editor present(@collaborative_draft).body(links: true) %>
115
42
  </div>
43
+ </section>
116
44
 
117
- <%= render partial: "collaborator_requests" %>
45
+ <%= attachments_for @collaborative_draft %>
118
46
 
119
- <%= resource_reference(@collaborative_draft) %>
47
+ <%= render partial: "actions" %>
120
48
 
121
- <%= render partial: "decidim/shared/share_modal" %>
122
- </div>
123
- </div>
49
+ <% content_for :item_footer do %>
50
+ <%= comments_for @collaborative_draft %>
124
51
 
125
- <%= attachments_for @collaborative_draft %>
126
- <%= comments_for @collaborative_draft %>
52
+ <ul class="metadata__container layout-main__section" data-metadata-footer>
53
+ <%= content_tag :li, resource_reference(@collaborative_draft), class: "metadata__item" %>
54
+ <%= content_tag :li, resource_version(@collaborative_draft, versions_path: collaborative_draft_version_path(@collaborative_draft, @collaborative_draft.versions.count)), class: "metadata__item" %>
55
+ </ul>
56
+ <% end %>
127
57
 
128
- <%= cell("decidim/flag_modal", @collaborative_draft) %>
58
+ <% end %>
@@ -3,13 +3,13 @@
3
3
  var $proposalVotesCount = $('#proposal-<%= proposal.id %>-votes-count');
4
4
 
5
5
  if($proposalVotesCount[0]) {
6
- morphdom($proposalVotesCount[0], '<%= j(render partial: "decidim/proposals/proposals/votes_count", locals: { proposal: proposal, from_proposals_list: @from_proposals_list }).strip.html_safe %>');
6
+ morphdom($proposalVotesCount[0], '<%= j(render partial: "decidim/proposals/proposals/votes_count", locals: { proposal:, from_proposals_list: @from_proposals_list }).strip.html_safe %>');
7
7
  }
8
8
 
9
9
  var $proposalVoteButton = $('#proposal-<%= proposal.id %>-vote-button');
10
10
 
11
11
  if($proposalVoteButton[0]) {
12
- morphdom($proposalVoteButton[0], '<%= j(render partial: "decidim/proposals/proposals/vote_button", locals: { proposal: proposal, from_proposals_list: @from_proposals_list }).strip.html_safe %>');
12
+ morphdom($proposalVoteButton[0], '<%= j(render partial: "decidim/proposals/proposals/vote_button", locals: { proposal:, from_proposals_list: @from_proposals_list }).strip.html_safe %>');
13
13
  }
14
14
  })();
15
15
  <% end %>
@@ -0,0 +1,13 @@
1
+ <section class="layout-main__section layout-main__buttons" data-buttons>
2
+ <% if endorsements_enabled? %>
3
+ <%= endorsement_buttons_cell(@proposal) %>
4
+ <% end %>
5
+
6
+ <%= cell "decidim/comments_button", nil %>
7
+
8
+ <div class="ml-auto">
9
+ <%= cell "decidim/tags", @proposal %>
10
+ </div>
11
+ </section>
12
+
13
+ <%= cell "decidim/endorsers_list", @proposal, layout: :full %>
@@ -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 %>