decidim-elections 0.24.3 → 0.25.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (433) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -0
  3. data/app/cells/decidim/elections/election_m/tags.erb +3 -0
  4. data/app/cells/decidim/elections/election_m_cell.rb +1 -8
  5. data/app/cells/decidim/elections/election_preview/show.erb +28 -0
  6. data/app/cells/decidim/elections/election_preview_cell.rb +13 -0
  7. data/app/cells/decidim/elections/election_results/blank_votes.erb +7 -0
  8. data/app/cells/decidim/elections/election_results/progress_bar.erb +16 -0
  9. data/app/cells/decidim/elections/election_results/show.erb +40 -0
  10. data/app/cells/decidim/elections/election_results_cell.rb +13 -0
  11. data/app/cells/decidim/elections/election_vote_cta/show.erb +35 -0
  12. data/app/cells/decidim/elections/election_vote_cta_cell.rb +83 -0
  13. data/app/cells/decidim/elections/remaining_time_callout/show.erb +5 -0
  14. data/app/cells/decidim/elections/remaining_time_callout_cell.rb +28 -0
  15. data/app/cells/decidim/elections/voting_step_navigation/show.erb +1 -1
  16. data/app/cells/decidim/elections/voting_step_navigation_cell.rb +1 -1
  17. data/app/cells/decidim/votings/content_blocks/highlighted_votings/show.erb +1 -1
  18. data/app/cells/decidim/votings/content_blocks/landing_page/attachments_and_folders_cell.rb +8 -1
  19. data/app/cells/decidim/votings/content_blocks/landing_page/description/show.erb +25 -0
  20. data/app/cells/decidim/votings/content_blocks/landing_page/description_cell.rb +20 -2
  21. data/app/cells/decidim/votings/content_blocks/landing_page/elections/show.erb +15 -0
  22. data/app/cells/decidim/votings/content_blocks/landing_page/elections/single.erb +11 -0
  23. data/app/cells/decidim/votings/content_blocks/landing_page/elections_cell.rb +33 -1
  24. data/app/cells/decidim/votings/content_blocks/landing_page/header/show.erb +29 -0
  25. data/app/cells/decidim/votings/content_blocks/landing_page/header_cell.rb +95 -2
  26. data/app/cells/decidim/votings/content_blocks/landing_page/header_settings_form/show.erb +4 -0
  27. data/app/cells/decidim/votings/content_blocks/landing_page/{stats_cell.rb → header_settings_form_cell.rb} +5 -3
  28. data/app/cells/decidim/votings/content_blocks/landing_page/metrics/show.erb +12 -0
  29. data/app/cells/decidim/votings/content_blocks/landing_page/metrics_cell.rb +6 -2
  30. data/app/cells/decidim/votings/content_blocks/landing_page/polling_stations/address.erb +14 -0
  31. data/app/cells/decidim/votings/content_blocks/landing_page/polling_stations/map.erb +18 -0
  32. data/app/cells/decidim/votings/content_blocks/landing_page/polling_stations/show.erb +25 -0
  33. data/app/cells/decidim/votings/content_blocks/landing_page/polling_stations_cell.rb +42 -1
  34. data/app/cells/decidim/votings/content_blocks/landing_page/statistics_cell.rb +24 -0
  35. data/app/cells/decidim/votings/content_blocks/landing_page/timeline/show.erb +7 -0
  36. data/app/cells/decidim/votings/content_blocks/landing_page/timeline_cell.rb +4 -2
  37. data/app/cells/decidim/votings/polling_officers/polling_officers_picker/show.erb +1 -1
  38. data/app/cells/decidim/votings/polling_station_closure_certificate/show.erb +9 -0
  39. data/app/cells/decidim/votings/polling_station_closure_certificate_cell.rb +12 -0
  40. data/app/cells/decidim/votings/polling_station_closure_recount/show.erb +74 -0
  41. data/app/cells/decidim/votings/polling_station_closure_recount_cell.rb +9 -0
  42. data/app/cells/decidim/votings/voting_m_cell.rb +2 -2
  43. data/app/commands/decidim/elections/admin/add_user_as_trustee.rb +2 -1
  44. data/app/commands/decidim/elections/admin/create_election.rb +2 -1
  45. data/app/commands/decidim/elections/admin/publish_results.rb +10 -6
  46. data/app/commands/decidim/elections/admin/setup_election.rb +73 -67
  47. data/app/commands/decidim/elections/admin/update_answer_selection.rb +1 -1
  48. data/app/commands/decidim/elections/trustee_zone/update_election_bulletin_board_status.rb +61 -2
  49. data/app/commands/decidim/elections/trustee_zone/update_trustee.rb +3 -0
  50. data/app/commands/decidim/elections/voter/cast_vote.rb +4 -7
  51. data/app/commands/decidim/elections/voter/update_vote_status.rb +23 -7
  52. data/app/commands/decidim/votings/admin/create_ballot_style.rb +58 -0
  53. data/app/commands/decidim/votings/admin/create_voting.rb +2 -1
  54. data/app/commands/decidim/votings/admin/destroy_ballot_style.rb +33 -0
  55. data/app/commands/decidim/votings/admin/monitoring_committee_validate_polling_station_closure.rb +37 -0
  56. data/app/commands/decidim/votings/admin/update_ballot_style.rb +70 -0
  57. data/app/commands/decidim/votings/admin/update_voting.rb +5 -14
  58. data/app/commands/decidim/votings/census/admin/create_dataset.rb +82 -0
  59. data/app/commands/decidim/votings/census/admin/create_datum.rb +55 -0
  60. data/app/commands/decidim/votings/census/admin/destroy_dataset.rb +45 -0
  61. data/app/commands/decidim/votings/census/admin/increment_dataset_processed_rows.rb +43 -0
  62. data/app/commands/decidim/votings/census/admin/launch_access_codes_export.rb +38 -0
  63. data/app/commands/decidim/votings/census/admin/launch_access_codes_generation.rb +44 -0
  64. data/app/commands/decidim/votings/census/admin/update_dataset.rb +51 -0
  65. data/app/commands/decidim/votings/certify_polling_station_closure.rb +46 -0
  66. data/app/commands/decidim/votings/check_census.rb +35 -0
  67. data/app/commands/decidim/votings/create_polling_station_closure.rb +53 -0
  68. data/app/commands/decidim/votings/create_polling_station_results.rb +83 -0
  69. data/app/commands/decidim/votings/send_access_code.rb +48 -0
  70. data/app/commands/decidim/votings/sign_polling_station_closure.rb +41 -0
  71. data/app/commands/decidim/votings/voter/in_person_vote.rb +55 -0
  72. data/app/commands/decidim/votings/voter/update_in_person_vote_status.rb +52 -0
  73. data/app/controllers/concerns/decidim/elections/has_vote_flow.rb +43 -0
  74. data/app/controllers/concerns/decidim/monitoring_committee_polling_station_closures/admin/filterable.rb +72 -0
  75. data/app/controllers/concerns/decidim/votings/needs_voting.rb +5 -5
  76. data/app/controllers/decidim/elections/admin/steps_controller.rb +5 -2
  77. data/app/controllers/decidim/elections/elections_controller.rb +18 -5
  78. data/app/controllers/decidim/elections/feedbacks_controller.rb +37 -3
  79. data/app/controllers/decidim/elections/trustee_zone/elections_controller.rb +15 -1
  80. data/app/controllers/decidim/elections/votes_controller.rb +101 -41
  81. data/app/controllers/decidim/votings/admin/ballot_styles_controller.rb +93 -0
  82. data/app/controllers/decidim/votings/admin/monitoring_committee_election_results_controller.rb +69 -0
  83. data/app/controllers/decidim/votings/admin/monitoring_committee_members_controller.rb +4 -0
  84. data/app/controllers/decidim/votings/admin/monitoring_committee_polling_station_closures_controller.rb +73 -0
  85. data/app/controllers/decidim/votings/admin/monitoring_committee_verify_elections_controller.rb +24 -0
  86. data/app/controllers/decidim/votings/admin/polling_stations_controller.rb +4 -0
  87. data/app/controllers/decidim/votings/admin/votings_controller.rb +1 -1
  88. data/app/controllers/decidim/votings/census/admin/application_controller.rb +19 -0
  89. data/app/controllers/decidim/votings/census/admin/census_controller.rb +191 -0
  90. data/app/controllers/decidim/votings/polling_officer_zone/closures_controller.rb +131 -0
  91. data/app/controllers/decidim/votings/polling_officer_zone/in_person_votes_controller.rb +149 -0
  92. data/app/controllers/decidim/votings/polling_officer_zone/polling_officers_controller.rb +10 -2
  93. data/app/controllers/decidim/votings/votings_controller.rb +91 -4
  94. data/app/events/decidim/elections/votes/vote_accepted_event.rb +1 -1
  95. data/app/forms/decidim/elections/admin/action_form.rb +5 -0
  96. data/app/forms/decidim/elections/admin/question_form.rb +1 -1
  97. data/app/forms/decidim/elections/admin/trustees_participatory_space_form.rb +1 -1
  98. data/app/forms/decidim/elections/{ballot → voter}/verify_vote_form.rb +1 -5
  99. data/app/forms/decidim/elections/voter/vote_form.rb +50 -0
  100. data/app/forms/decidim/votings/admin/ballot_style_form.rb +19 -0
  101. data/app/forms/decidim/votings/admin/monitoring_committee_polling_station_closure_form.rb +11 -0
  102. data/app/forms/decidim/votings/admin/publish_results_form.rb +64 -0
  103. data/app/forms/decidim/votings/admin/voting_form.rb +3 -2
  104. data/app/forms/decidim/votings/answer_result_form.rb +24 -0
  105. data/app/forms/decidim/votings/ballot_result_form.rb +28 -0
  106. data/app/forms/decidim/votings/census/admin/dataset_form.rb +25 -0
  107. data/app/forms/decidim/votings/census/admin/datum_form.rb +30 -0
  108. data/app/forms/decidim/votings/census/check_fields.rb +28 -0
  109. data/app/forms/decidim/votings/census/check_form.rb +13 -0
  110. data/app/forms/decidim/votings/census/frontend_fields.rb +42 -0
  111. data/app/forms/decidim/votings/census/in_person_fields.rb +48 -0
  112. data/app/forms/decidim/votings/census/in_person_form.rb +13 -0
  113. data/app/forms/decidim/votings/census/login_form.rb +13 -0
  114. data/app/forms/decidim/votings/census/online_fields.rb +28 -0
  115. data/app/forms/decidim/votings/closure_certify_form.rb +20 -0
  116. data/app/forms/decidim/votings/closure_result_form.rb +37 -0
  117. data/app/forms/decidim/votings/closure_sign_form.rb +11 -0
  118. data/app/forms/decidim/votings/envelopes_result_form.rb +34 -0
  119. data/app/forms/decidim/votings/question_result_form.rb +24 -0
  120. data/app/forms/decidim/votings/voter/in_person_vote_form.rb +40 -0
  121. data/app/jobs/decidim/votings/census/admin/create_datum_job.rb +41 -0
  122. data/app/jobs/decidim/votings/census/admin/export_access_codes_job.rb +39 -0
  123. data/app/jobs/decidim/votings/census/admin/generate_access_codes_job.rb +44 -0
  124. data/app/mailers/decidim/elections/vote_accepted_mailer.rb +29 -0
  125. data/app/mailers/decidim/votings/access_code_mailer.rb +34 -0
  126. data/app/mailers/decidim/votings/census/export_mailer.rb +44 -0
  127. data/app/models/decidim/elections/action.rb +1 -1
  128. data/app/models/decidim/elections/answer.rb +21 -0
  129. data/app/models/decidim/elections/bulletin_board_closure.rb +19 -0
  130. data/app/models/decidim/elections/election.rb +5 -4
  131. data/app/models/decidim/elections/question.rb +24 -13
  132. data/app/models/decidim/elections/result.rb +22 -0
  133. data/app/models/decidim/elections/trustee.rb +10 -1
  134. data/app/models/decidim/elections/vote.rb +2 -2
  135. data/app/models/decidim/votings/ballot_style.rb +29 -0
  136. data/app/models/decidim/votings/ballot_style_question.rb +11 -0
  137. data/app/models/decidim/votings/census/dataset.rb +32 -0
  138. data/app/models/decidim/votings/census/datum.rb +34 -0
  139. data/app/models/decidim/votings/in_person_vote.rb +22 -0
  140. data/app/models/decidim/votings/polling_station.rb +18 -1
  141. data/app/models/decidim/votings/polling_station_closure.rb +43 -0
  142. data/app/models/decidim/votings/voting.rb +38 -15
  143. data/app/packs/entrypoints/decidim_elections.js +2 -0
  144. data/app/packs/entrypoints/decidim_elections_admin_pending_action.js +1 -0
  145. data/app/packs/entrypoints/decidim_elections_admin_vote_statistics.js +1 -0
  146. data/app/packs/entrypoints/decidim_elections_election_log.js +1 -0
  147. data/app/packs/entrypoints/decidim_elections_onboarding.js +1 -0
  148. data/app/packs/entrypoints/decidim_elections_trustee_key_ceremony.js +1 -0
  149. data/app/packs/entrypoints/decidim_elections_trustee_tally.js +1 -0
  150. data/app/packs/entrypoints/decidim_elections_trustee_trustee_zone.js +1 -0
  151. data/app/packs/entrypoints/decidim_elections_trustee_zone.js +1 -0
  152. data/app/packs/entrypoints/decidim_elections_trustee_zone.scss +1 -0
  153. data/app/packs/entrypoints/decidim_elections_voter_casting-vote.js +1 -0
  154. data/app/packs/entrypoints/decidim_elections_voter_new-vote.js +1 -0
  155. data/app/packs/entrypoints/decidim_elections_voter_setup-preview.js +1 -0
  156. data/app/packs/entrypoints/decidim_elections_voter_setup-vote.js +1 -0
  157. data/app/packs/entrypoints/decidim_elections_voter_verify-vote.js +1 -0
  158. data/app/packs/entrypoints/decidim_votings_admin_monitoring_committee_members_form.js +1 -0
  159. data/app/packs/entrypoints/decidim_votings_admin_polling_officers_form.js +1 -0
  160. data/app/packs/entrypoints/decidim_votings_admin_polling_officers_picker.js +1 -0
  161. data/app/packs/entrypoints/decidim_votings_admin_polling_stations_form.js +1 -0
  162. data/app/packs/entrypoints/decidim_votings_admin_update_census_dataset_status.js +1 -0
  163. data/app/packs/entrypoints/decidim_votings_admin_votings.js +1 -0
  164. data/app/packs/entrypoints/decidim_votings_admin_votings.scss +1 -0
  165. data/app/packs/entrypoints/decidim_votings_in-person-vote.js +1 -0
  166. data/app/packs/entrypoints/decidim_votings_voting-description-cell.js +1 -0
  167. data/app/packs/entrypoints/decidim_votings_voting_polling_officer_zone-edit-closure.js +1 -0
  168. data/app/packs/entrypoints/decidim_votings_voting_polling_officer_zone-in-person-vote.js +1 -0
  169. data/app/packs/entrypoints/decidim_votings_voting_polling_officer_zone-new-closure.js +1 -0
  170. data/app/packs/entrypoints/decidim_votings_voting_polling_officer_zone-sign-closure.js +1 -0
  171. data/app/{assets/images/decidim/elections/icon.svg → packs/images/decidim/elections/decidim_elections.svg} +0 -0
  172. data/app/{assets/images/decidim/votings/icon.svg → packs/images/decidim/votings/decidim_votings.svg} +0 -0
  173. data/app/{assets/javascripts/decidim/elections/admin/pending_action.js.es6 → packs/src/decidim/elections/admin/pending_action.js} +4 -6
  174. data/app/{assets/javascripts/decidim/elections/admin/vote_statistics.js.es6 → packs/src/decidim/elections/admin/vote_statistics.js} +0 -0
  175. data/app/packs/src/decidim/elections/election_log.js +145 -0
  176. data/app/packs/src/decidim/elections/onboarding.js +5 -0
  177. data/app/{assets/javascripts/decidim/elections/trustee_zone/key_ceremony.js.es6 → packs/src/decidim/elections/trustee/key_ceremony.js} +59 -22
  178. data/app/{assets/javascripts/decidim/elections/trustee_zone/tally.js.es6 → packs/src/decidim/elections/trustee/tally.js} +48 -12
  179. data/app/{assets/javascripts/decidim/elections/trustee_zone.js.es6 → packs/src/decidim/elections/trustee/trustee_zone.js} +3 -6
  180. data/app/packs/src/decidim/elections/voter/casting-vote.js +14 -0
  181. data/app/packs/src/decidim/elections/voter/new-vote.js +83 -0
  182. data/app/packs/src/decidim/elections/voter/setup-preview.js +79 -0
  183. data/app/packs/src/decidim/elections/voter/setup-vote.js +50 -0
  184. data/app/{assets/javascripts/decidim/elections/vote_verify.js.es6 → packs/src/decidim/elections/voter/verify-vote.js} +22 -21
  185. data/app/packs/src/decidim/elections/voter/vote_questions.component.js +124 -0
  186. data/app/{assets/javascripts/decidim/votings/admin/monitoring_committee_members_form.js.es6 → packs/src/decidim/votings/admin/monitoring_committee_members_form.js} +3 -3
  187. data/app/{assets/javascripts/decidim/votings/admin/polling_officers_form.js.es6 → packs/src/decidim/votings/admin/polling_officers_form.js} +3 -3
  188. data/app/{assets/javascripts/decidim/votings/admin/polling_officers_picker.js.es6 → packs/src/decidim/votings/admin/polling_officers_picker.js} +0 -0
  189. data/app/{assets/javascripts/decidim/votings/admin/polling_stations_form.js.es6 → packs/src/decidim/votings/admin/polling_stations_form.js} +4 -3
  190. data/app/packs/src/decidim/votings/admin/update_census_dataset_status.js +13 -0
  191. data/app/packs/src/decidim/votings/in-person-vote.js +20 -0
  192. data/app/packs/src/decidim/votings/polling_officer_zone/edit-closure.js +26 -0
  193. data/app/packs/src/decidim/votings/polling_officer_zone/in-person-vote.js +5 -0
  194. data/app/packs/src/decidim/votings/polling_officer_zone/new-closure.js +35 -0
  195. data/app/packs/src/decidim/votings/polling_officer_zone/sign-closure.js +13 -0
  196. data/app/packs/src/decidim/votings/voting-description-cell.js +41 -0
  197. data/app/packs/stylesheets/decidim/elections/elections.scss +8 -0
  198. data/app/{assets → packs}/stylesheets/decidim/elections/focus/_accordion.scss +0 -0
  199. data/app/{assets → packs}/stylesheets/decidim/elections/focus/_evote.scss +8 -1
  200. data/app/{assets → packs}/stylesheets/decidim/elections/focus/_focus.scss +0 -0
  201. data/app/{assets → packs}/stylesheets/decidim/elections/trustee_zone.scss +0 -0
  202. data/app/packs/stylesheets/decidim/votings/admin/votings.scss +3 -0
  203. data/app/packs/stylesheets/decidim/votings/admin/votings/_ballot-styles.scss +16 -0
  204. data/app/packs/stylesheets/decidim/votings/admin/votings/_monitoring-committee-polling-station-closures.scss +9 -0
  205. data/app/packs/stylesheets/decidim/votings/admin/votings/_results.scss +3 -0
  206. data/app/packs/stylesheets/decidim/votings/votings.scss +2 -0
  207. data/app/packs/stylesheets/decidim/votings/votings/_polling-stations-cell.scss +6 -0
  208. data/app/packs/stylesheets/decidim/votings/votings/_voting-description-cell.scss +29 -0
  209. data/app/permissions/decidim/elections/admin/permissions.rb +5 -0
  210. data/app/permissions/decidim/elections/permissions.rb +18 -33
  211. data/app/permissions/decidim/votings/admin/permissions.rb +87 -27
  212. data/app/permissions/decidim/votings/permissions.rb +5 -1
  213. data/app/permissions/decidim/votings/polling_officer_zone/permissions.rb +8 -2
  214. data/app/presenters/decidim/votings/census/admin_log/dataset_presenter.rb +30 -0
  215. data/app/presenters/decidim/votings/voting_presenter.rb +2 -11
  216. data/app/presenters/decidim/votings/voting_stats_presenter.rb +52 -0
  217. data/app/queries/decidim/elections/admin/votes_for_statistics.rb +1 -1
  218. data/app/queries/decidim/elections/votes/last_vote_for_voter.rb +29 -0
  219. data/app/queries/decidim/votings/admin/admin_users.rb +15 -10
  220. data/app/queries/decidim/votings/admin/ballot_style_by_voting_code.rb +31 -0
  221. data/app/queries/decidim/votings/votes/in_person_vote_for_voter.rb +27 -0
  222. data/app/queries/decidim/votings/votes/pending_in_person_votes.rb +20 -0
  223. data/app/serializers/decidim/votings/census/datum_serializer.rb +29 -0
  224. data/app/services/decidim/elections/current_user_vote_flow.rb +68 -0
  225. data/app/services/decidim/elections/vote_flow.rb +109 -0
  226. data/app/services/decidim/votings/census/access_codes_exporter.rb +50 -0
  227. data/app/services/decidim/votings/census_vote_flow.rb +106 -0
  228. data/app/uploaders/decidim/cw/votings/census/voting_census_uploader.rb +19 -0
  229. data/app/views/decidim/elections/admin/answers/index.html.erb +23 -4
  230. data/app/views/decidim/elections/admin/elections/index.html.erb +5 -5
  231. data/app/views/decidim/elections/admin/questions/index.html.erb +2 -2
  232. data/app/views/decidim/elections/admin/steps/_results_published.html.erb +62 -0
  233. data/app/views/decidim/elections/admin/steps/_tally_ended.html.erb +49 -3
  234. data/app/views/decidim/elections/admin/steps/_vote.html.erb +1 -1
  235. data/app/views/decidim/elections/admin/steps/_vote_ended.html.erb +4 -0
  236. data/app/views/decidim/elections/admin/steps/index.html.erb +2 -2
  237. data/app/views/decidim/elections/admin/trustees_participatory_spaces/index.html.erb +7 -3
  238. data/app/views/decidim/elections/elections/_filters.html.erb +1 -0
  239. data/app/views/decidim/elections/elections/election_log.html.erb +182 -0
  240. data/app/views/decidim/elections/elections/index.html.erb +0 -2
  241. data/app/views/decidim/elections/elections/show.html.erb +11 -37
  242. data/app/views/decidim/elections/trustee_zone/elections/_key_ceremony_steps.html.erb +41 -39
  243. data/app/views/decidim/elections/trustee_zone/elections/show.html.erb +11 -27
  244. data/app/views/decidim/elections/trustee_zone/elections/update.js.erb +1 -1
  245. data/app/views/decidim/elections/trustee_zone/trustees/show.html.erb +7 -7
  246. data/app/views/decidim/elections/vote_accepted_mailer/notification.html.erb +3 -0
  247. data/app/views/decidim/elections/votes/{_election_votes_header.html.erb → _focus_header.html.erb} +0 -0
  248. data/app/views/decidim/elections/votes/_new_ballot_decision_step.html.erb +30 -0
  249. data/app/views/decidim/elections/votes/{_election_votes_confirm.html.erb → _new_confirm_step.html.erb} +5 -5
  250. data/app/views/decidim/elections/votes/{_election_votes_confirm_footer.html.erb → _new_confirm_step_footer.html.erb} +2 -3
  251. data/app/views/decidim/elections/votes/{_election_votes_encrypting.html.erb → _new_encrypting_step.html.erb} +1 -1
  252. data/app/views/decidim/elections/votes/{_election_votes_question.html.erb → _new_question.html.erb} +7 -7
  253. data/app/views/decidim/elections/votes/{_election_votes_modal.html.erb → _new_question_modal.html.erb} +1 -1
  254. data/app/views/decidim/elections/votes/_onboarding_modal.html.erb +23 -0
  255. data/app/views/decidim/elections/votes/_show_casted.html.erb +36 -0
  256. data/app/views/decidim/elections/votes/_show_casting.html.erb +25 -0
  257. data/app/views/decidim/elections/votes/{_election_votes_failed.html.erb → _show_failed.html.erb} +6 -4
  258. data/app/views/decidim/elections/votes/new.html.erb +29 -16
  259. data/app/views/decidim/elections/votes/show.html.erb +11 -0
  260. data/app/views/decidim/elections/votes/verify.html.erb +6 -9
  261. data/app/views/decidim/votings/access_code_mailer/send_access_code.html.erb +5 -0
  262. data/app/views/decidim/votings/admin/ballot_styles/_form.html.erb +24 -0
  263. data/app/views/decidim/votings/admin/ballot_styles/edit.html.erb +7 -0
  264. data/app/views/decidim/votings/admin/ballot_styles/index.html.erb +68 -0
  265. data/app/views/decidim/votings/admin/ballot_styles/new.html.erb +7 -0
  266. data/app/views/decidim/votings/admin/monitoring_committee_election_results/_results.html.erb +53 -0
  267. data/app/views/decidim/votings/admin/monitoring_committee_election_results/index.html.erb +32 -0
  268. data/app/views/decidim/votings/admin/monitoring_committee_election_results/show.html.erb +24 -0
  269. data/app/views/decidim/votings/admin/monitoring_committee_members/_form.html.erb +1 -1
  270. data/app/views/decidim/votings/admin/monitoring_committee_members/index.html.erb +1 -1
  271. data/app/views/decidim/votings/admin/monitoring_committee_polling_station_closures/_closure_certificate_results.erb +9 -0
  272. data/app/views/decidim/votings/admin/monitoring_committee_polling_station_closures/_closures.html.erb +71 -0
  273. data/app/views/decidim/votings/admin/monitoring_committee_polling_station_closures/_elections.html.erb +32 -0
  274. data/app/views/decidim/votings/admin/monitoring_committee_polling_station_closures/edit.html.erb +29 -0
  275. data/app/views/decidim/votings/admin/monitoring_committee_polling_station_closures/index.html.erb +5 -0
  276. data/app/views/decidim/votings/admin/monitoring_committee_polling_station_closures/show.html.erb +10 -0
  277. data/app/views/decidim/votings/admin/monitoring_committee_verify_elections/index.html.erb +59 -0
  278. data/app/views/decidim/votings/admin/polling_officers/_form.html.erb +1 -1
  279. data/app/views/decidim/votings/admin/polling_officers/index.html.erb +1 -1
  280. data/app/views/decidim/votings/admin/polling_stations/_form.html.erb +1 -1
  281. data/app/views/decidim/votings/admin/polling_stations/index.html.erb +2 -2
  282. data/app/views/decidim/votings/admin/votings/_form.html.erb +9 -2
  283. data/app/views/decidim/votings/admin/votings/edit.html.erb +1 -1
  284. data/app/views/decidim/votings/admin/votings/index.html.erb +3 -2
  285. data/app/views/decidim/votings/census/admin/census/_creating_data.html.erb +10 -0
  286. data/app/views/decidim/votings/census/admin/census/_export_codes.html.erb +8 -0
  287. data/app/views/decidim/votings/census/admin/census/_exporting_codes.html.erb +3 -0
  288. data/app/views/decidim/votings/census/admin/census/_freeze.html.erb +3 -0
  289. data/app/views/decidim/votings/census/admin/census/_generate_codes.html.erb +25 -0
  290. data/app/views/decidim/votings/census/admin/census/_generating_codes.html.erb +3 -0
  291. data/app/views/decidim/votings/census/admin/census/_new_census.html.erb +22 -0
  292. data/app/views/decidim/votings/census/admin/census/_upload_info.html.erb +17 -0
  293. data/app/views/decidim/votings/census/admin/census/show.html.erb +23 -0
  294. data/app/views/decidim/votings/census/admin/census/status.js.erb +1 -0
  295. data/app/views/decidim/votings/census/export_mailer/access_codes_export.erb +7 -0
  296. data/app/views/decidim/votings/polling_officer_zone/closures/_answer_results_form_fields.html.erb +12 -0
  297. data/app/views/decidim/votings/polling_officer_zone/closures/_ballot_results_form_fields.html.erb +40 -0
  298. data/app/views/decidim/votings/polling_officer_zone/closures/_certify_form.html.erb +15 -0
  299. data/app/views/decidim/votings/polling_officer_zone/closures/_modal_ballots_count_error.html.erb +60 -0
  300. data/app/views/decidim/votings/polling_officer_zone/closures/_modal_ballots_results_count_error.html.erb +19 -0
  301. data/app/views/decidim/votings/polling_officer_zone/closures/_question_results_form_fields.html.erb +22 -0
  302. data/app/views/decidim/votings/polling_officer_zone/closures/_sign_form.html.erb +55 -0
  303. data/app/views/decidim/votings/polling_officer_zone/closures/edit.html.erb +48 -0
  304. data/app/views/decidim/votings/polling_officer_zone/closures/new.html.erb +62 -0
  305. data/app/views/decidim/votings/polling_officer_zone/closures/show.html.erb +35 -0
  306. data/app/views/decidim/votings/polling_officer_zone/in_person_votes/_complete_voting.html.erb +59 -0
  307. data/app/views/decidim/votings/polling_officer_zone/in_person_votes/_in_person_form.html.erb +50 -0
  308. data/app/views/decidim/votings/polling_officer_zone/in_person_votes/_verify_document.html.erb +23 -0
  309. data/app/views/decidim/votings/polling_officer_zone/in_person_votes/new.html.erb +21 -0
  310. data/app/views/decidim/votings/polling_officer_zone/in_person_votes/show.html.erb +25 -0
  311. data/app/views/decidim/votings/polling_officer_zone/polling_officers/_polling_station.html.erb +60 -0
  312. data/app/views/decidim/votings/polling_officer_zone/polling_officers/index.html.erb +15 -0
  313. data/app/views/decidim/votings/votings/_access_code_modal.html.erb +33 -0
  314. data/app/views/decidim/votings/votings/_check_fields.html.erb +31 -0
  315. data/app/views/decidim/votings/votings/_filters.html.erb +1 -0
  316. data/app/views/decidim/votings/votings/_promoted_voting.html.erb +1 -1
  317. data/app/views/decidim/votings/votings/check_census.html.erb +64 -0
  318. data/app/views/decidim/votings/votings/elections_log.html.erb +34 -0
  319. data/app/views/decidim/votings/votings/index.html.erb +0 -2
  320. data/app/views/decidim/votings/votings/login.html.erb +50 -0
  321. data/app/views/decidim/votings/votings/show.html.erb +11 -11
  322. data/app/views/layouts/decidim/_election_votes_header.html.erb +3 -3
  323. data/app/views/layouts/decidim/admin/voting.html.erb +5 -83
  324. data/app/views/layouts/decidim/election_votes.html.erb +1 -0
  325. data/app/views/layouts/decidim/voting_landing.html.erb +13 -0
  326. data/app/views/layouts/decidim/{voting.html.erb → votings.html.erb} +3 -1
  327. data/config/assets.rb +35 -0
  328. data/config/initializers/decidim_bulletin_board.rb +17 -11
  329. data/config/initializers/rack_attack.rb +15 -0
  330. data/config/locales/ca.yml +496 -49
  331. data/config/locales/cs.yml +498 -43
  332. data/config/locales/de.yml +469 -44
  333. data/config/locales/el.yml +0 -14
  334. data/config/locales/en.yml +491 -42
  335. data/config/locales/es-MX.yml +338 -42
  336. data/config/locales/es-PY.yml +338 -42
  337. data/config/locales/es.yml +338 -42
  338. data/config/locales/fi-plain.yml +489 -42
  339. data/config/locales/fi.yml +489 -42
  340. data/config/locales/fr-CA.yml +241 -39
  341. data/config/locales/fr-LU.yml +890 -0
  342. data/config/locales/fr.yml +241 -39
  343. data/config/locales/gl.yml +418 -34
  344. data/config/locales/hu.yml +29 -0
  345. data/config/locales/it.yml +1027 -17
  346. data/config/locales/ja.yml +578 -17
  347. data/config/locales/lb-LU.yml +1 -0
  348. data/config/locales/lv.yml +0 -14
  349. data/config/locales/nl.yml +308 -42
  350. data/config/locales/no.yml +12 -36
  351. data/config/locales/pl.yml +670 -215
  352. data/config/locales/pt-BR.yml +1338 -0
  353. data/config/locales/pt.yml +0 -19
  354. data/config/locales/ro-RO.yml +99 -19
  355. data/config/locales/sv.yml +49 -22
  356. data/config/locales/tr-TR.yml +3 -24
  357. data/config/locales/zh-CN.yml +0 -19
  358. data/db/migrate/20210308104024_add_decidim_votings_census_datasets.rb +17 -0
  359. data/db/migrate/20210308104154_add_decidim_votings_census_data.rb +23 -0
  360. data/db/migrate/20210326090435_create_elections_results.rb +16 -0
  361. data/db/migrate/20210330102348_remove_votes_count_from_answer.rb +7 -0
  362. data/db/migrate/20210330123606_add_voting_ballot_style.rb +19 -0
  363. data/db/migrate/20210330183204_add_email_to_votes.rb +10 -0
  364. data/db/migrate/20210331152729_add_census_contact_information_to_votings.rb +7 -0
  365. data/db/migrate/20210401095507_add_organization_to_decidim_elections_trustee.rb +11 -0
  366. data/db/migrate/20210402102215_add_ballot_style_to_decidim_votings_census_data.rb +7 -0
  367. data/db/migrate/20210402140402_add_salt_to_elections.rb +22 -0
  368. data/db/migrate/20210412144721_change_elections_results.rb +24 -0
  369. data/db/migrate/20210412144740_create_elections_bulletin_board_closures.rb +13 -0
  370. data/db/migrate/20210412144741_create_votings_polling_station_closures.rb +22 -0
  371. data/db/migrate/20210420112721_create_decidim_votings_in_person_votes.rb +21 -0
  372. data/db/migrate/20210422124826_add_verifiable_results_to_decidim_elections_election.rb +8 -0
  373. data/db/migrate/20210426072845_add_signed_at_to_polling_station_closure.rb +7 -0
  374. data/db/migrate/20210427131742_add_validated_at_to_votings_polling_station_closures.rb +8 -0
  375. data/db/seeds/Exampledocument.pdf +0 -0
  376. data/db/seeds/city2.jpeg +0 -0
  377. data/lib/decidim/api/bulletin_board_closure_type.rb +16 -0
  378. data/lib/decidim/api/election_answer_type.rb +3 -2
  379. data/lib/decidim/api/election_result_type.rb +19 -0
  380. data/lib/decidim/api/polling_station_closure_type.rb +19 -0
  381. data/lib/decidim/api/polling_station_type.rb +24 -0
  382. data/lib/decidim/elections.rb +8 -0
  383. data/lib/decidim/elections/admin_engine.rb +14 -15
  384. data/lib/decidim/elections/answer_serializer.rb +2 -1
  385. data/lib/decidim/elections/api.rb +2 -0
  386. data/lib/decidim/elections/component.rb +85 -19
  387. data/lib/decidim/elections/engine.rb +4 -6
  388. data/lib/decidim/elections/test/factories.rb +76 -11
  389. data/lib/decidim/elections/trustee_zone_engine.rb +5 -4
  390. data/lib/decidim/elections/version.rb +1 -1
  391. data/lib/decidim/votings.rb +17 -0
  392. data/lib/decidim/votings/admin_engine.rb +134 -8
  393. data/lib/decidim/votings/api.rb +2 -0
  394. data/lib/decidim/votings/census.rb +16 -0
  395. data/lib/decidim/votings/census_admin.rb +12 -0
  396. data/lib/decidim/votings/census_admin_engine.rb +22 -0
  397. data/lib/decidim/votings/census_engine.rb +19 -0
  398. data/lib/decidim/votings/engine.rb +25 -20
  399. data/lib/decidim/votings/participatory_space.rb +149 -2
  400. data/lib/decidim/votings/polling_officer_zone_engine.rb +15 -6
  401. data/lib/decidim/votings/test/factories.rb +163 -0
  402. data/lib/decidim/votings/voting_serializer.rb +1 -0
  403. data/lib/tasks/decidim_voting_census.rake +26 -0
  404. metadata +326 -72
  405. data/app/assets/config/admin/decidim_votings_manifest.css +0 -0
  406. data/app/assets/config/admin/decidim_votings_manifest.js +0 -4
  407. data/app/assets/config/decidim_elections_manifest.css +0 -3
  408. data/app/assets/config/decidim_elections_manifest.js +0 -8
  409. data/app/assets/config/decidim_votings_manifest.css +0 -3
  410. data/app/assets/config/decidim_votings_manifest.js +0 -0
  411. data/app/assets/javascripts/decidim/elections/vote.js.es6 +0 -117
  412. data/app/assets/javascripts/decidim/elections/vote_questions.component.js.es6 +0 -129
  413. data/app/assets/stylesheets/decidim/elections/elections.scss +0 -6
  414. data/app/assets/stylesheets/decidim/votings/votings.scss +0 -1
  415. data/app/assets/stylesheets/decidim/votings/votings/_votings-header.scss +0 -99
  416. data/app/assets/stylesheets/decidim/votings/votings/_votings-home-banner.scss +0 -11
  417. data/app/controllers/decidim/votings/polling_officer_zone/polling_stations_controller.rb +0 -22
  418. data/app/forms/decidim/elections/voter/encrypted_vote_form.rb +0 -49
  419. data/app/helpers/decidim/elections/elections_helper.rb +0 -29
  420. data/app/queries/decidim/elections/votes/election_votes.rb +0 -19
  421. data/app/queries/decidim/elections/votes/user_election_last_vote.rb +0 -26
  422. data/app/queries/decidim/elections/votes/user_votes.rb +0 -19
  423. data/app/views/decidim/elections/elections/_preview.html.erb +0 -26
  424. data/app/views/decidim/elections/elections/_results.html.erb +0 -47
  425. data/app/views/decidim/elections/votes/_election_votes_confirmed.html.erb +0 -47
  426. data/app/views/decidim/elections/votes/_election_votes_steps_header.html.erb +0 -12
  427. data/app/views/decidim/elections/votes/cast_failed.js.erb +0 -1
  428. data/app/views/decidim/elections/votes/cast_success.js.erb +0 -1
  429. data/app/views/decidim/votings/polling_officer_zone/polling_officers/show.html.erb +0 -42
  430. data/app/views/decidim/votings/polling_officer_zone/polling_stations/show.html.erb +0 -1
  431. data/app/views/decidim/votings/votings/_voting_details.html.erb +0 -7
  432. data/app/views/layouts/decidim/_voting_header.html.erb +0 -16
  433. data/config/locales/ja-JP.yml +0 -216
@@ -58,6 +58,12 @@ es-PY:
58
58
  decidim/elections/question:
59
59
  one: Pregunta
60
60
  other: Preguntas
61
+ decidim/votings/census/dataset:
62
+ one: Conjunto de datos
63
+ other: Conjuntos de datos
64
+ decidim/votings/census/datum:
65
+ one: Dato
66
+ other: Datos
61
67
  decidim/votings/polling_officer:
62
68
  one: Gestor de mesa
63
69
  other: Gestores de mesa
@@ -127,11 +133,13 @@ es-PY:
127
133
  new:
128
134
  create: Crear respuesta
129
135
  title: Nueva respuesta
136
+ not_selected: No seleccionada
130
137
  select:
131
138
  disable: Deseleccionar respuesta
132
139
  enable: Marcar respuesta como seleccionada
133
140
  invalid: Hubo un problema al seleccionar esta respuesta
134
141
  success: Respuesta seleccionada con éxito
142
+ selected: Seleccionada
135
143
  unselect:
136
144
  invalid: Hubo un problema al deseleccionar esta respuesta
137
145
  success: Respuesta seleccionada correctamente
@@ -164,6 +172,8 @@ es-PY:
164
172
  exports:
165
173
  elections: Elecciones
166
174
  feedback_form_answers: Retorno de las respuestas
175
+ menu:
176
+ trustees: Garantes
167
177
  models:
168
178
  answer:
169
179
  name: Respuesta
@@ -246,12 +256,24 @@ es-PY:
246
256
  title: Listo para empezar
247
257
  processing: Procesando...
248
258
  results_published:
259
+ answer: Respuesta
260
+ not_selected: No seleccionada
261
+ question: Pregunta
262
+ result: Resultado
263
+ selected: Seleccionado
264
+ submit: Enviar
249
265
  title: Resultados publicados
250
266
  tally:
251
267
  title: Proceso de recuento
252
268
  trustees: Garantes
253
269
  tally_ended:
270
+ answer: Respuesta
271
+ not_selected: No seleccionado
272
+ question: Pregunta
273
+ result: Resultado
274
+ selected: Seleccionado
254
275
  submit: Publicar resultados
276
+ success: La solicitud de publicación de resultados se envió correctamente al Bulletin Board
255
277
  title: Resultados calculados
256
278
  vote:
257
279
  errors:
@@ -266,6 +288,7 @@ es-PY:
266
288
  invalid: Hubo un problema al iniciar el recuento
267
289
  submit: Comenzar recuento
268
290
  success: La solicitud de inicio del recuento se envió correctamente al Bulletin Board
291
+ text: La votación ha terminado. Puedes iniciar el recuento ahora.
269
292
  title: Periodo de votación finalizado
270
293
  vote_stats:
271
294
  no_vote_statistics_yet: Aún no hay estadísticas de voto
@@ -297,6 +320,7 @@ es-PY:
297
320
  election:
298
321
  end_vote: "%{user_name} terminó el período de votación para la elección %{resource_name} en el Bulletin Board"
299
322
  publish: "%{user_name} ha publicado la votación %{resource_name}"
323
+ publish_results: "%{user_name} publicó los resultados de la elección %{resource_name} en el Bulletin Board"
300
324
  setup: "%{user_name} creó la elección %{resource_name} en el Bulletin Board"
301
325
  start_key_ceremony: "%{user_name} comenzó la ceremonia de claves para las elecciones %{resource_name} en el Bulletin Board"
302
326
  start_tally: "%{user_name} comenzó el recuento para la elección %{resource_name} en el Bulletin Board"
@@ -309,6 +333,9 @@ es-PY:
309
333
  upcoming: Próximas
310
334
  end_date: Termina
311
335
  footer:
336
+ remaining_time:
337
+ one: "<strong>%{count} hora %{minutes} minutos</strong> restantes para votar."
338
+ other: "<strong>%{count} horas %{minutes} minutos</strong> restantes para votar."
312
339
  view: Ver
313
340
  vote: Votar
314
341
  label:
@@ -321,6 +348,51 @@ es-PY:
321
348
  elections_count:
322
349
  one: "%{count} votación"
323
350
  other: "%{count} votaciones"
351
+ election_log:
352
+ chained_hash: El Hash encadenado de este mensaje
353
+ complete: Completar
354
+ creation_description:
355
+ complete: La elección se creó y se configuró con éxito en el Bulletin Board.
356
+ not_created: La elección no se ha creado todavía.
357
+ creation_title: Elección creada
358
+ description: Este es el registro de la elección, donde puedes comprobar el estado de cada paso, por ejemplo, cuándo se ha creado, si se ha completado el proceso de recuento y cuándo se ha cerrado la elección.
359
+ download: Descargar
360
+ key_ceremony_description:
361
+ complete: La ceremonia de claves se ha completado. Cada garante tiene claves válidas y ha descargado las claves de copia de seguridad necesarias.
362
+ not_started: La ceremonia de claves aún no ha comenzado.
363
+ started: La ceremonia de claves ha comenzado, pero aún no ha terminado.
364
+ key_ceremony_title: Ceremonia de claves
365
+ not_available: No disponible todavía
366
+ not_created: No creado
367
+ not_published: No publicado
368
+ not_ready: No está listo
369
+ not_started: No iniciado
370
+ published: Publicado
371
+ results_description:
372
+ not_published: Los resultados aún no se han publicado.
373
+ published: Los resultados se han publicado.
374
+ results_title: Resultados
375
+ started: Iniciado
376
+ tally_description:
377
+ finished: El proceso de recuento ha terminado.
378
+ not_started: El proceso de recuento aún no ha comenzado.
379
+ started: El proceso de recuento ha comenzado.
380
+ tally_title: Proceso de recuento
381
+ title: Registro de la elección
382
+ verifiable_results:
383
+ checksum: 'Suma de comprobación SHA256 del archivo:'
384
+ description:
385
+ not_ready: El archivo verificable de la elección y la suma de comprobación SHA256 aún no están disponibles. En cuanto se publiquen los resultados, podrás verificar esta elección.
386
+ ready: 'Aquí tienes la opción de verificar la elección. En primer lugar, tienes que descargar el archivo y asegurarte de que no se ha corrompido. Para ello, ejecuta el siguiente comando y comprueba que la salida coincide con la suma de comprobación:'
387
+ how_to_verify: 'Una vez que hayas descargado el archivo y te hayas asegurado de que está bien, puedes proceder a ejecutar el verificador universal. Clona <a href=''https://github.com/decidim/decidim-bulletin-board''>este repositorio</a> y, desde la carpeta raíz, ejecuta el siguiente comando:'
388
+ title: Verificar resultados de la elección
389
+ verifiable_file: 'Archivo verificacle de la elección:'
390
+ verify: Verificar elección
391
+ vote_description:
392
+ finished: El proceso de votación ha concluido.
393
+ not_started: El proceso de votación aún no ha comenzado.
394
+ started: El proceso de votación ha comenzado.
395
+ vote_title: Proceso de votación
324
396
  filters:
325
397
  active: Activas
326
398
  all: Todas
@@ -334,31 +406,33 @@ es-PY:
334
406
  filter_by: Filtrar por
335
407
  unfold: Desplegar
336
408
  preview:
337
- available_answers: Respuestas disponibles
338
- description: Estas son las preguntas que encontrarás en el proceso de votación
409
+ available_answers: 'Respuestas disponibles:'
410
+ description: 'Estas son las preguntas que encontrarás en el proceso de votación:'
339
411
  title: Preguntas de la elección
340
412
  results:
341
- description: Estos son los resultados de la votación, para cada pregunta
413
+ description: 'Estos son los resultados de la votación, para cada pregunta:'
414
+ percentage: "%{count}%"
342
415
  selected: Seleccionado
343
416
  title: Resultados de la elección
344
417
  votes:
345
418
  one: "%{count} voto"
346
419
  other: "%{count} votos"
347
- zero: "%{count} votos"
348
420
  show:
349
- action-button:
350
- change-vote: Cambia tu voto
421
+ action_button:
422
+ change_vote: Cambia tu voto
351
423
  vote: Empezar a votar
352
- vote-again: Votar de nuevo
424
+ vote_again: Votar de nuevo
353
425
  back: Elecciones disponibles
354
426
  callout:
355
- already-voted: Ya has votado en esta elección. Puedes cambiar tu voto o verificarlo.
356
- vote-rejected: No ha sido posible verificar tu voto. Por favor, hazlo de nuevo.
427
+ already_voted: Ya has votado en esta elección. Puedes cambiar tu voto o verificarlo.
428
+ pending_vote: Se está emitiendo tu voto en el servidor.
429
+ vote_rejected: No ha sido posible verificar tu voto. Por favor, hazlo de nuevo.
430
+ election_log: Registro de la elección
357
431
  preview: Previsualizar
358
432
  verify:
359
- already-voted: '¿Ya has votado?'
360
- verify-here: Comprueba tu voto aquí.
361
- will-verify: Podrás verificar tu voto una vez que comience la elección.
433
+ already_voted: '¿Ya has votado?'
434
+ verify_here: Comprueba tu voto aquí.
435
+ will_verify: Podrás verificar tu voto una vez que comience la elección.
362
436
  voting_period_status:
363
437
  finished: La votación empezó el %{start_time} y terminó el %{end_time}
364
438
  ongoing: 'Votación activa hasta: %{end_time}'
@@ -372,7 +446,9 @@ es-PY:
372
446
  answer:
373
447
  fields:
374
448
  proposals: Propuestas
449
+ selected: Seleccionada
375
450
  title: Título
451
+ votes: Votos
376
452
  election:
377
453
  fields:
378
454
  bb_status: Estado del tBulletin Board
@@ -479,7 +555,7 @@ es-PY:
479
555
  generate_legend_4: Haz otra copia del archivo en un dispositivo externo diferente y guárdalo en un lugar muy seguro.
480
556
  submit: Enviar
481
557
  submit_legend: Después de seguir todos los pasos explicados anteriormente, completa el proceso enviando la clave de identificación pública al servidor de Decidim.
482
- submit_title: Enviar la clave de identificación pública
558
+ submit_title: Enviar la clave pública de identificación
483
559
  title: Claves de identificación del garante
484
560
  upload: Sube tus claves de identificación
485
561
  upload_error:
@@ -493,6 +569,16 @@ es-PY:
493
569
  update:
494
570
  success: Tu clave pública de identificación fue guardada con éxito.
495
571
  votes:
572
+ ballot_decision:
573
+ audit: "( Auditar papeleta )"
574
+ back: Comenzar de nuevo el proceso de votación
575
+ ballot_hash: 'El indentificador de la papeleta es:'
576
+ cast: Emitir papeleta
577
+ description: Aquí tienes las opciones de emitir tu papeleta para que sea debidamente contada o, alternativamente, puedes auditar que tu papeleta fue cifrada correctamente. Por razones de seguridad, la auditoría de su papeleta la estropeará, lo que significa, que para emitir tu voto tendrás que reiniciar el proceso de votación.
578
+ header: 'La papeleta se ha cifrado: envíala o audítala'
579
+ casting:
580
+ header: Se está emitiendo el voto...
581
+ text: Tu papeleta se está depositando en la urna.
496
582
  confirm:
497
583
  answer: Respuesta
498
584
  answer_number: respuesta %{number}
@@ -504,25 +590,29 @@ es-PY:
504
590
  question: Preguntas %{count}
505
591
  confirmed:
506
592
  back: Volver a las votaciones
507
- error: Lo sentimos, hubo un error al confirmar el voto. Por favor, vota de nuevo.
508
593
  experience: '¿Cómo valoras la experiencia?'
509
594
  feedback: Danos tu opinión
510
595
  header: Voto confirmado
511
- lead: '¡Tu voto ha sido emitido!'
596
+ lead: '¡Tu voto se ha emitido!'
512
597
  text: 'Puedes comprobar que tu voto se ha añadido correctamente a la urna con el siguiente identificador: <strong class="evote__poll-id">%{e_vote_poll_id}</strong>'
513
598
  verify_link: Para comprobarlo, copia el identificador y pégalo en la <a href="%{link}">página de verificación de voto</a>
514
599
  encrypting:
515
- header: Codificando voto...
516
- text: Tu voto está siendo cifrado para asegurar que se emite de forma anónima.
600
+ header: Se está cifrando el voto...
601
+ text: Se está cifrando tu papeleta para garantizar el secreto de voto.
517
602
  failed:
518
603
  header: Voto fallido
519
604
  lead: '¡Tu voto no ha sido emitido!'
520
605
  text: Algo salió mal, por favor inténtalo de nuevo.
606
+ try_again: Inténtalo de nuevo
521
607
  header:
608
+ ballot_decision: Emitir o auditar tu voto
609
+ casting: Emitiendo el voto
522
610
  confirm: Confirma tu voto
523
611
  confirmed: Voto confirmado
524
- encrypting: Confirmando voto
612
+ encrypting: Cifrando el voto
613
+ failed: Voto fallido
525
614
  messages:
615
+ invalid_token: Tu sesión en la cabina de votación no es válida. Intenta votar de nuevo.
526
616
  not_allowed: En este momento no puedes votar en esta votación.
527
617
  modal:
528
618
  close: Cerrar
@@ -534,12 +624,14 @@ es-PY:
534
624
  preview_alert: Esta es una vista previa de la cabina de votación.
535
625
  question_steps: Pregunta %{current_step} de %{total_steps}
536
626
  selections: "Seleccionada <br> %{selected} de %{max_selections}"
537
- processing:
538
- header: Procesando voto...
539
- text: Tu voto ha sido recibido y está siendo procesado. Por favor, espera.
627
+ onboarding_modal:
628
+ close: Cerrar modal
629
+ create_account: Crear Cuenta
630
+ description: '¿Quieres crear una nueva cuenta en Decidim? Así participarás en los procesos y ser parte activa de la organización.'
631
+ no_account: No, gracias.
632
+ title: '¿Es tu primera vez en Decidim?'
540
633
  update:
541
- error: Hubo un problema al actualizar el estado del voto
542
- success: Estado de voto actualizado correctamente
634
+ error: Ha habido un problema al actualizar el estado del voto. Vuelve a intentarlo.
543
635
  verify:
544
636
  content:
545
637
  heading: Verifica tu voto
@@ -593,6 +685,9 @@ es-PY:
593
685
  email_outro: Has recibido esta notificación porque has sido asignado como %{role} de %{polling_station_name}.
594
686
  email_subject: Eres %{role} del punto de votación %{polling_station_name}.
595
687
  notification_title: Eres %{role} del punto de votación %{polling_station_name} en la votación <a href="%{resource_path}">%{resource_title}</a>.
688
+ send_access_code:
689
+ instruction: 'Ya tienes el código de acceso que has pedido: %{access_code}. Con esto ya podrás participar en %{voting}.'
690
+ subject: Tu código de acceso para participar en %{voting}
596
691
  help:
597
692
  participatory_spaces:
598
693
  votings:
@@ -601,15 +696,42 @@ es-PY:
601
696
  title: '¿Qué son las votaciones?'
602
697
  menu:
603
698
  votings: Votaciones
604
- pages:
605
- home:
606
- statistics:
607
- elections_count: Votaciones
608
- participatory_processes:
609
- statistics:
610
- elections_count: Votaciones
699
+ statistics:
700
+ elections_count: Elecciones
701
+ votings_count: Votaciones
611
702
  votings:
612
703
  admin:
704
+ ballot_styles:
705
+ create:
706
+ error: Ha habido un problema al crear el estilo de papeleta
707
+ success: Se ha creado correctamente el estilo de papeleta
708
+ destroy:
709
+ invalid: Ha habido un problema al suprimir el estilo de papeleta
710
+ success: Se ha eliminado correctamente el estilo de papeleta
711
+ edit:
712
+ title: Editar el estilo de papeleta
713
+ update: Actualizar
714
+ form:
715
+ code_help: 'Pista: el código es el vínculo entre el censo y el estilo de papeleta. Al actualizar los datos del censo, a cada entrada se le asigna un estilo de papeleta que coincida con el código'
716
+ election: Elección
717
+ questions: Preguntas para el estilo de papeleta
718
+ questions_help: 'Pista: selecciona las preguntas del compoente de Elecciones para este estilo de papeleta, que se presentará a los votantes asignados a esta'
719
+ index:
720
+ actions:
721
+ confirm_destroy: '¿Estás segura?'
722
+ destroy: Eliminar
723
+ edit: Editar
724
+ new: Nueva
725
+ title: Acciones
726
+ associated_census_data: Entradas asociadas al censo
727
+ explanation_callout: Un estilo de papeleta especifica qué preguntas se presentarán al votante en la cabina. En un estilo de papeleta, puedes elegir qué preguntas del componente de elecciones pertenecen a esa papeleta. El código de estilo de la papeleta se utiliza para hacer coincidir a un votante del censo con la papeleta que se presentará en la cabina. No crees ningún estilo de papeleta si quieres mostrar siempre todas las preguntas.
728
+ title: Estilos de papeleta
729
+ new:
730
+ create: Crear
731
+ title: Crear estilo de papeleta
732
+ update:
733
+ invalid: Ha habido un problema al crear el estilo de papeleta
734
+ success: Se ha creado correctamente el estilo de papeleta
613
735
  content_blocks:
614
736
  highlighted_votings:
615
737
  max_results: Cantidad máxima de elementos a mostrar
@@ -652,13 +774,20 @@ es-PY:
652
774
  attachment_collections: Carpetas
653
775
  attachment_files: Archivos
654
776
  attachments: Archivos adjuntos
777
+ ballot_styles: Estilos de papeleta
778
+ census: Censo
655
779
  components: Componentes
656
780
  info: Información
657
781
  landing_page: Página de inicio
658
- monitoring_committee_members: Comité de seguimiento
782
+ monitoring_committee: Comité de seguimiento
783
+ monitoring_committee_members: Miembros
659
784
  polling_officers: Gestores de mesa
660
785
  polling_stations: Puntos de votación
661
786
  models:
787
+ ballot_style:
788
+ fields:
789
+ code: Código
790
+ name: Estilo de papeleta
662
791
  monitoring_committee_member:
663
792
  fields:
664
793
  email: Correo electrónico
@@ -766,6 +895,7 @@ es-PY:
766
895
  assign_missing_officers: Hay puntos de votación sin presidente y/o administradores. Asígnalos desde la sección de puntos de votación
767
896
  update: Actualizar
768
897
  form:
898
+ census_contact_information_help: Esta información de contacto es para una participante que quiere reportar problemas con el censo. Puede ser una dirección de correo electrónico, un formulario de contacto en otro sitio, una encuesta de Decidim para visitantes, etc.
769
899
  select_a_voting_type: Por favor, selecciona un tipo de votación
770
900
  slug_help: 'Los textos cortos de URL se utilizan para generar las URL que apuntan a esta votación. Sólo acepta letras, números y guiones, y debe comenzar con una letra. Ejemplo: %{url}'
771
901
  title: Título
@@ -788,9 +918,83 @@ es-PY:
788
918
  create: "%{user_name} creó la votación %{resource_name}"
789
919
  publish: "%{user_name} publicó la votación %{resource_name}"
790
920
  unpublish: "%{user_name} despublicó la votación %{resource_name}"
921
+ census:
922
+ admin:
923
+ census:
924
+ create:
925
+ invalid: Se ha producido un error al subir el censo, por favor inténtalo de nuevo más tarde.
926
+ invalid_csv_header: La cabecera CSV no tiene el número correcto de campos - por favor lee las instrucciones cuidadosamente
927
+ creating_data:
928
+ info_message: "<strong>Por favor espera</strong>, procesadas %{processed_count} de %{raw_count} filas del fichero %{file}."
929
+ delete:
930
+ button: Borrar todos los datos del censo
931
+ confirm: La eliminación de todo el censo no se puede deshacer. ¿Seguro que quieres continuar?
932
+ destroy:
933
+ error: Se ha producido un error al eliminar el censo, por favor inténtalo de nuevo más tarde.
934
+ success: Datos del censo eliminados
935
+ export_access_codes:
936
+ button: Exportar códigos de acceso de la votación
937
+ callout: Ahora puedes exportar los códigos de acceso. Esto sólo se puede hacer una vez. Una vez que inicies la exportación, recibirás un correo electrónico con las instrucciones en <strong>%{email}</strong>
938
+ confirm: Solo puedes exportar los códigos de acceso una vez. Asegúrate de tener acceso a la cuenta de correo electrónico <strong>%{email}</strong>.
939
+ file_not_exists: Este archivo no existe
940
+ launch_error: Problema al iniciar la exportación de códigos de acceso
941
+ launch_success: Se ha iniciado la exportación de los códigos de acceso. En breve recibirás un correo en %{email}
942
+ exporting_access_codes:
943
+ info_message: "<strong>Por favor, espera</strong>, se está preparando la exportación. La recibirás en breve en %{email}"
944
+ freeze:
945
+ callout: El censo está cerrado y no se puede modificar.
946
+ generate_access_codes:
947
+ button: Generar códigos de acceso de la votación
948
+ callout: Ahora puedes generar los códigos de acceso. Ten en cuenta que después de generarlos ya no podrás modificar más el censo.
949
+ confirm: Si continúas, ya no podrás modificar el censo.
950
+ info_message_all: "<strong>Se han importado las filas correctamente</strong> del fichero %{file} (%{raw_count} de %{data_count})."
951
+ info_message_warn: Por favor, comprueba que no falten datos, ya que se han creado %{data_count} registros, pero el fichero que se ha subido (%{file}) tenía %{raw_count} filas.
952
+ launch_error: Ha habido un problema al generar los códigos de acceso
953
+ launch_success: Se ha iniciado la generación de códigos.
954
+ generating_access_codes:
955
+ info_message: "<strong>Por favor espera</strong>, se están generando los códigos de acceso a la votación..."
956
+ new:
957
+ file_help:
958
+ explanation: 'Instrucciones para el archivo:'
959
+ message_1: Sólo se permiten archivos CSV (.csv).
960
+ message_2: El separador entre columnas debe ser un punto y coma (";").
961
+ has_ballot_styles_message: Has configurado los estilos de papeleta. Por favor, asegúrate de que el campo "%{ballot_style_code_header}" en el CSV corresponde al código de estilo de papeleta deseado.
962
+ info_message: "<strong>Aún no hay ningún censo.</strong> Por favor, utiliza el siguiente formulario para crearlo importando un archivo CSV."
963
+ missing_ballot_styles_message: 'No hay ningún estilo de papeleta para esta votación todavía. Si quieres tener preguntas condicionales (presentar al votante diferentes preguntas dependiendo de, p.ej. el distrito/región de residencia), debes configurar los <a href=%{ballot_styles_admin_path}>estilos de papeleta</a> <strong>antes de</strong> importar el censo. Si quieres presentar a todos los votantes las mismas preguntas, puedes continuar con el procedimiento de importación del censo.'
964
+ submit: Enviar csv
965
+ title: Crear el censo
966
+ show:
967
+ heading: Censo del espacio de votación
968
+ upload_info:
969
+ csv_example_with_ballot_style: 'Un ejemplo del archivo <strong>con</strong> estilos de papeleta:'
970
+ csv_example_without_ballot_style: 'Un ejemplo del archivo <strong>sin</strong> estilos de papeleta:'
971
+ csv_header_after: No incluyas el último campo ("%{ballot_style_code_header}") si no necesitas preguntas condicionales/estilos de papeleta
972
+ csv_header_before: 'El censo debe ser un archivo CSV con la siguiente cabecera:'
973
+ document_types:
974
+ dni: DNI
975
+ nie: NIE
976
+ passport: Pasaporte
977
+ export_mailer:
978
+ access_codes_export:
979
+ click_button: 'Haz clic en el siguiente enlace para descargar tus datos.<br/>El archivo estará disponible hasta %{date}.<br/>Necesitarás <a href="https://www.7-zip.org/">7-Zip</a> (para Windows), <a href="https://www.keka.io/en/">Keka</a> (para MacOS) o <a href="https://peazip.github.io">PeaZip</a> (para Linux) para abrirlo. Contraseña: %{password}'
980
+ download: Descargar
981
+ subject: La exportación de los códigos de acceso de votación para %{voting_title} está disponible
982
+ vote_flow:
983
+ datum_not_found: Los datos introducidos no coinciden con ningún votante.
791
984
  content_blocks:
792
985
  highlighted_votings:
793
986
  name: Votaciones destacadas
987
+ landing_page:
988
+ description:
989
+ show_less: Leer menos
990
+ show_more: Leer más
991
+ metrics:
992
+ heading: Métricas
993
+ polling_stations:
994
+ heading: Puntos de votación
995
+ no_polling_stations: Aún no hay puntos de votación.
996
+ timeline:
997
+ heading: Línea de tiempo
794
998
  monitoring_committee_members:
795
999
  actions:
796
1000
  confirm_destroy: '¿Estás segura?'
@@ -804,23 +1008,60 @@ es-PY:
804
1008
  see_all_votings: Ver todas las votaciones
805
1009
  votings_button_title: Enlace a la página de Votaciones que las muestra todas
806
1010
  polling_officer_zone:
1011
+ closures:
1012
+ back_to_polling_stations: Volver a los puntos de votación
1013
+ create:
1014
+ error: Se ha producido un error al crear el cierre, por favor inténtalo de nuevo más tarde.
1015
+ success: Cierre creado correctamente.
1016
+ edit:
1017
+ heading: Recuento de votos - recuento de respuestas
1018
+ info_text: Por favor, introduce el número total de respuestas para cada pregunta.
1019
+ modal_ballots_results_count_error:
1020
+ close_modal: Cerrar
1021
+ info_text: El número total de papeletas no coincide con el número total de sobres. Por favor, revisa el total de papeletas.
1022
+ title: El total de papeletas no coincide
1023
+ save_recount: Guardar recuento
1024
+ total_ballots: Total de papeletas
1025
+ total_blank_ballots: Total de papeletas en blanco
1026
+ total_null_ballots: Total de papeletas nulas
1027
+ total_valid_ballots: Total de papeletas válidas
1028
+ new:
1029
+ election: 'Elección:'
1030
+ heading: Recuento de votos
1031
+ info_text: 'Por favor, introduce el número total de papeletas (sobres) recontadas en este punto de votación:'
1032
+ modal_ballots_count_error:
1033
+ btn_validate_total: Validar recuento total de papeletas
1034
+ close_modal: Cerrar
1035
+ info_explanation_text: 'Por favor, revisa el número total de papeletas. Si el número total es correcto, debes proporcionar una explicación para el Comité de Seguimiento:'
1036
+ info_text: El número total de papeletas (sobres) introducidas no coincide con el registro de personas que han votado en este punto de votación.
1037
+ message_for_monitoring_committee: Mensaje para el Comité de Seguimiento
1038
+ review_recount: Revisar el recuento
1039
+ text_area_placeholder: Por favor, escribe tu mensaje
1040
+ title: El total de registros no coincide
1041
+ total_ballots: 'Total de papeletas:'
1042
+ total_people: 'Total de personas:'
1043
+ polling_station: 'Punto de votación:'
1044
+ submit: Verificar número total
1045
+ total_ballots_count: Número de papeletas
1046
+ update:
1047
+ error: Se ha producido un error al actualizar los resultados del cierre. Inténtalo de nuevo más tarde.
1048
+ success: Resultados de cierre actualizados correctamente.
807
1049
  menu:
808
1050
  polling_officer_zone: Zona del gestor de mesa
809
1051
  polling_officers:
810
- show:
811
- actions:
812
- count_votes: Contar los votos en las urnas
813
- identify_person: Identificar y verificar a una persona
1052
+ index:
814
1053
  polling_officer_role_description: Has sido asignado para actuar como gestor de mesa (Presidente o Administrador) en algunas de las elecciones celebradas en esta plataforma.
815
- polling_stations:
816
- list:
817
- actions: Acciones
818
- address: Dirección
819
- name: Nombre
820
- role: Tu rol
821
- voting: Votación
1054
+ polling_station:
1055
+ address: Dirección
1056
+ count_votes: Contar votos
1057
+ election: Elección
1058
+ identify_person: Identificar a una persona
1059
+ name: Nombre
822
1060
  no_polling_stations: Todavía no estás asignado a ningún punto de votación.
1061
+ role: Tu rol
1062
+ show_closure: Ver cierre
823
1063
  title: Puntos de votación
1064
+ voting: Votación
824
1065
  polling_officers:
825
1066
  actions:
826
1067
  confirm_destroy: '¿Estás segura?'
@@ -839,10 +1080,48 @@ es-PY:
839
1080
  new: Nuevo
840
1081
  title: Acciones
841
1082
  votings:
1083
+ access_code_modal:
1084
+ email: Enviar por correo electrónico a %{email}
1085
+ info: Necesitas un código de acceso para participar. Si no recibiste uno por correo postal, podemos enviarte uno nuevo.
1086
+ no_email: Correo no disponible
1087
+ no_sms: Número de teléfono no disponible
1088
+ sms: Enviar por SMS a %{sms}
1089
+ title: Obtener código de acceso
1090
+ check_census:
1091
+ check_status: Comprobar estado
1092
+ description: Aquí, tienes la opción de comprobar tus datos del censo para saber si tienes derecho a participar en esta votación. Deberías tener ya un código de acceso, pero si lo has perdido, puedes solicitarlo de nuevo, si tus datos son correctos.
1093
+ error:
1094
+ info: 'Por favor, inténtalo de nuevo. Si crees que los datos del sistema son incorrectos, puedes reportarlo aquí: %{census_contact_information}.'
1095
+ title: '¡Tus datos del censo son incorrectos!'
1096
+ form_title: 'Rellena el siguiente formulario para comprobar tus datos del censo:'
1097
+ invalid: Hubo un problema al comprobar el censo.
1098
+ success:
1099
+ access_link: vía SMS o correo electrónico.
1100
+ info: Deberías haber recibido tu código de acceso por correo postal ya. En caso de que no lo tengas, puedes solicitarlo aquí
1101
+ title: '¡Tus datos del censo son correctos!'
1102
+ title: '¿Puedo votar?'
1103
+ check_fields:
1104
+ date_of_birth: Fecha de nacimiento
1105
+ day: Día
1106
+ day_placeholder: DD
1107
+ document_number: Número de documento
1108
+ document_number_placeholder: Número de ID
1109
+ month: Mes
1110
+ month_placeholder: MM
1111
+ postal_code: Código postal
1112
+ postal_code_placeholder: Número de código postal
1113
+ select: Selecciona el tipo de documento
1114
+ year: Año
1115
+ year_placeholder: AAAA
842
1116
  count:
843
1117
  title:
844
1118
  one: "%{count} votación"
845
1119
  other: "%{count} votaciones"
1120
+ elections_log:
1121
+ bb_status: Estado de la elección
1122
+ description: El registro de la elección te mostrará toda la información relevante sobre cada votación. Por ejemplo, el estado de la ceremonia de claves o el recuento o si los resultados ya están publicados. Haz clic en la elección sobre la cual quieres la información del registro.
1123
+ election_log: Registro de la elección
1124
+ title: Registro de la elección
846
1125
  filters:
847
1126
  active: Activas
848
1127
  all: Todas
@@ -859,10 +1138,23 @@ es-PY:
859
1138
  no_votings: Ninguna votación coincide con tus criterios de búsqueda.
860
1139
  only_finished: Actualmente no hay votaciones programadas, pero aquí puedes encontrar las votaciones terminadas en la lista.
861
1140
  title: Votaciones
1141
+ login:
1142
+ access_code: Código de acceso
1143
+ access_code_placeholder: Código de acceso
1144
+ ask_for_a_new_one: Solicitar uno nuevo.
1145
+ dont_have_access_code: '¿No tienes un código de acceso?'
1146
+ form_title: 'Rellena el siguiente formulario para acceder a la votación:'
1147
+ start_voting: Empezar a votar
1148
+ step: Identificación
1149
+ title: Identificarme con mis datos del censo
1150
+ no_census_contact_information: Aún no hay información de contacto
862
1151
  orders:
863
1152
  label: 'Ordenar votaciones por:'
864
1153
  random: Aleatorio
865
1154
  recent: Más recientes
1155
+ send_access_code:
1156
+ invalid: Hubo un problema al enviar el código de acceso
1157
+ success: Tu código de acceso se ha enviado correctamente
866
1158
  show:
867
1159
  dates: Fechas
868
1160
  votings_m:
@@ -884,6 +1176,10 @@ es-PY:
884
1176
  decidim:
885
1177
  election_votes_header:
886
1178
  exit: Salir
1179
+ voting_navigation:
1180
+ check_census: '¿Puedo votar?'
1181
+ election_log: Registro de la elección
1182
+ voting_menu_item: La votación
887
1183
  votings:
888
1184
  index:
889
1185
  promoted_votings: Votaciones destacadas