decidim-elections 0.23.2 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/app/assets/config/admin/decidim_votings_manifest.css +0 -0
- data/app/assets/config/admin/decidim_votings_manifest.js +4 -0
- data/app/assets/config/decidim_elections_manifest.css +3 -0
- data/app/assets/config/decidim_elections_manifest.js +6 -0
- data/app/assets/config/decidim_votings_manifest.css +3 -0
- data/app/assets/config/decidim_votings_manifest.js +0 -0
- data/app/assets/images/decidim/votings/icon.svg +1 -0
- data/app/assets/javascripts/decidim/elections/admin/pending_action.js.es6 +16 -0
- data/app/assets/javascripts/decidim/elections/admin/vote_statistics.js.es6 +11 -0
- data/app/assets/javascripts/decidim/elections/trustee_zone.js.es6 +54 -0
- data/app/assets/javascripts/decidim/elections/trustee_zone/key_ceremony.js.es6 +126 -0
- data/app/assets/javascripts/decidim/elections/trustee_zone/tally.js.es6 +104 -0
- data/app/assets/javascripts/decidim/elections/vote.js.es6 +107 -160
- data/app/assets/javascripts/decidim/elections/vote_questions.component.js.es6 +129 -0
- data/app/assets/javascripts/decidim/elections/vote_verify.js.es6 +71 -0
- data/app/assets/javascripts/decidim/votings/admin/monitoring_committee_members_form.js.es6 +35 -0
- data/app/assets/javascripts/decidim/votings/admin/polling_officers_form.js.es6 +35 -0
- data/app/assets/javascripts/decidim/votings/admin/polling_officers_picker.js.es6 +35 -0
- data/app/assets/javascripts/decidim/votings/admin/polling_stations_form.js.es6 +5 -0
- data/app/assets/stylesheets/decidim/elections/elections.scss +0 -4
- data/app/assets/stylesheets/decidim/elections/focus/_accordion.scss +36 -0
- data/app/assets/stylesheets/decidim/elections/focus/_evote.scss +58 -0
- data/app/assets/stylesheets/decidim/elections/trustee_zone.scss +24 -0
- data/app/assets/stylesheets/decidim/votings/votings.scss +1 -0
- data/app/assets/stylesheets/decidim/votings/votings/_votings-header.scss +99 -0
- data/app/assets/stylesheets/decidim/votings/votings/_votings-home-banner.scss +11 -0
- data/app/cells/decidim/votings/content_block_cell.rb +17 -0
- data/app/cells/decidim/votings/content_blocks/highlighted_votings/show.erb +30 -0
- data/app/cells/decidim/votings/content_blocks/highlighted_votings_cell.rb +33 -0
- data/app/cells/decidim/votings/content_blocks/highlighted_votings_settings_form/show.erb +3 -0
- data/app/cells/decidim/votings/content_blocks/highlighted_votings_settings_form_cell.rb +19 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/attachments_and_folders_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/description_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/elections_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/header_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/metrics_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/polling_stations_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/stats_cell.rb +15 -0
- data/app/cells/decidim/votings/content_blocks/landing_page/timeline_cell.rb +15 -0
- data/app/cells/decidim/votings/polling_officers/polling_officers_picker/polling_officers.erb +12 -0
- data/app/cells/decidim/votings/polling_officers/polling_officers_picker/show.erb +14 -0
- data/app/cells/decidim/votings/polling_officers/polling_officers_picker_cell.rb +73 -0
- data/app/cells/decidim/votings/voting_cell.rb +19 -0
- data/app/cells/decidim/votings/voting_m/data.erb +21 -0
- data/app/cells/decidim/votings/voting_m/footer.erb +5 -0
- data/app/cells/decidim/votings/voting_m_cell.rb +94 -0
- data/app/commands/decidim/elections/admin/add_user_as_trustee.rb +81 -0
- data/app/commands/decidim/elections/admin/create_election.rb +2 -1
- data/app/commands/decidim/elections/admin/end_vote.rb +63 -0
- data/app/commands/decidim/elections/admin/publish_results.rb +59 -0
- data/app/commands/decidim/elections/admin/remove_trustee_from_participatory_space.rb +37 -0
- data/app/commands/decidim/elections/admin/setup_election.rb +160 -0
- data/app/commands/decidim/elections/admin/start_key_ceremony.rb +63 -0
- data/app/commands/decidim/elections/admin/start_tally.rb +63 -0
- data/app/commands/decidim/elections/admin/start_vote.rb +63 -0
- data/app/commands/decidim/elections/admin/update_action_status.rb +47 -0
- data/app/commands/decidim/elections/admin/update_answer_selection.rb +41 -0
- data/app/commands/decidim/elections/admin/update_trustee_participatory_space.rb +40 -0
- data/app/commands/decidim/elections/trustee_zone/update_election_bulletin_board_status.rb +39 -0
- data/app/commands/decidim/elections/trustee_zone/update_trustee.rb +41 -0
- data/app/commands/decidim/elections/voter/cast_vote.rb +59 -0
- data/app/commands/decidim/elections/voter/update_vote_status.rb +70 -0
- data/app/commands/decidim/votings/admin/create_monitoring_committee_member.rb +99 -0
- data/app/commands/decidim/votings/admin/create_polling_officer.rb +99 -0
- data/app/commands/decidim/votings/admin/create_polling_station.rb +59 -0
- data/app/commands/decidim/votings/admin/create_voting.rb +59 -0
- data/app/commands/decidim/votings/admin/destroy_monitoring_committee_member.rb +51 -0
- data/app/commands/decidim/votings/admin/destroy_polling_officer.rb +52 -0
- data/app/commands/decidim/votings/admin/destroy_polling_station.rb +40 -0
- data/app/commands/decidim/votings/admin/manage_polling_station.rb +64 -0
- data/app/commands/decidim/votings/admin/publish_voting.rb +40 -0
- data/app/commands/decidim/votings/admin/unpublish_voting.rb +40 -0
- data/app/commands/decidim/votings/admin/update_polling_station.rb +50 -0
- data/app/commands/decidim/votings/admin/update_voting.rb +85 -0
- data/app/constraints/decidim/votings/current_component.rb +28 -0
- data/app/constraints/decidim/votings/current_voting.rb +43 -0
- data/app/controllers/concerns/decidim/elections/orderable.rb +2 -2
- data/app/controllers/concerns/decidim/polling_officers/admin/filterable.rb +58 -0
- data/app/controllers/concerns/decidim/polling_stations/admin/filterable.rb +57 -0
- data/app/controllers/concerns/decidim/votings/admin/filterable.rb +27 -0
- data/app/controllers/concerns/decidim/votings/admin/voting_admin.rb +48 -0
- data/app/controllers/concerns/decidim/votings/needs_voting.rb +44 -0
- data/app/controllers/concerns/decidim/votings/orderable.rb +32 -0
- data/app/controllers/decidim/elections/admin/answers_controller.rb +32 -0
- data/app/controllers/decidim/elections/admin/elections_controller.rb +2 -2
- data/app/controllers/decidim/elections/admin/feedback_forms_controller.rb +55 -0
- data/app/controllers/decidim/elections/admin/steps_controller.rb +96 -0
- data/app/controllers/decidim/elections/admin/trustees_participatory_spaces_controller.rb +89 -0
- data/app/controllers/decidim/elections/elections_controller.rb +5 -1
- data/app/controllers/decidim/elections/feedbacks_controller.rb +38 -0
- data/app/controllers/decidim/elections/trustee_zone/application_controller.rb +45 -0
- data/app/controllers/decidim/elections/trustee_zone/elections_controller.rb +35 -0
- data/app/controllers/decidim/elections/trustee_zone/trustees_controller.rb +36 -0
- data/app/controllers/decidim/elections/votes_controller.rb +54 -2
- data/app/controllers/decidim/votings/admin/application_controller.rb +26 -0
- data/app/controllers/decidim/votings/admin/component_permissions_controller.rb +13 -0
- data/app/controllers/decidim/votings/admin/components_controller.rb +15 -0
- data/app/controllers/decidim/votings/admin/monitoring_committee_members_controller.rb +62 -0
- data/app/controllers/decidim/votings/admin/polling_officers_controller.rb +66 -0
- data/app/controllers/decidim/votings/admin/polling_stations_controller.rb +92 -0
- data/app/controllers/decidim/votings/admin/voting_attachment_collections_controller.rb +22 -0
- data/app/controllers/decidim/votings/admin/voting_attachments_controller.rb +21 -0
- data/app/controllers/decidim/votings/admin/votings_controller.rb +124 -0
- data/app/controllers/decidim/votings/admin/votings_landing_page_content_blocks_controller.rb +44 -0
- data/app/controllers/decidim/votings/admin/votings_landing_page_controller.rb +46 -0
- data/app/controllers/decidim/votings/application_controller.rb +26 -0
- data/app/controllers/decidim/votings/polling_officer_zone/application_controller.rb +33 -0
- data/app/controllers/decidim/votings/polling_officer_zone/polling_officers_controller.rb +17 -0
- data/app/controllers/decidim/votings/polling_officer_zone/polling_stations_controller.rb +22 -0
- data/app/controllers/decidim/votings/votings_controller.rb +98 -0
- data/app/events/decidim/elections/trustees/notify_new_trustee_event.rb +28 -0
- data/app/events/decidim/elections/trustees/notify_trustee_new_election_event.rb +14 -0
- data/app/events/decidim/elections/votes/vote_accepted_event.rb +24 -0
- data/app/events/decidim/votings/polling_officers/polling_station_assigned_event.rb +44 -0
- data/app/forms/decidim/elections/admin/action_form.rb +34 -0
- data/app/forms/decidim/elections/admin/answer_form.rb +3 -2
- data/app/forms/decidim/elections/admin/election_form.rb +3 -2
- data/app/forms/decidim/elections/admin/setup_form.rb +79 -0
- data/app/forms/decidim/elections/admin/trustees_participatory_space_form.rb +22 -0
- data/app/forms/decidim/elections/admin/vote_period_form.rb +37 -0
- data/app/forms/decidim/elections/ballot/verify_vote_form.rb +29 -0
- data/app/forms/decidim/elections/trustee_zone/trustee_form.rb +26 -0
- data/app/forms/decidim/elections/voter/encrypted_vote_form.rb +49 -0
- data/app/forms/decidim/votings/admin/monitoring_committee_member_form.rb +27 -0
- data/app/forms/decidim/votings/admin/polling_officer_form.rb +27 -0
- data/app/forms/decidim/votings/admin/polling_station_form.rb +58 -0
- data/app/forms/decidim/votings/admin/voting_form.rb +71 -0
- data/app/helpers/decidim/elections/admin/answers_helper.rb +19 -0
- data/app/helpers/decidim/elections/admin/steps_helper.rb +23 -0
- data/app/helpers/decidim/elections/admin/trustees_participatory_spaces_helper.rb +31 -0
- data/app/helpers/decidim/elections/elections_helper.rb +29 -0
- data/app/helpers/decidim/votings/admin/polling_officers_picker_helper.rb +29 -0
- data/app/helpers/decidim/votings/votings_helper.rb +20 -0
- data/app/models/decidim/elections/action.rb +13 -0
- data/app/models/decidim/elections/election.rb +54 -3
- data/app/models/decidim/elections/elections_trustee.rb +11 -0
- data/app/models/decidim/elections/question.rb +19 -0
- data/app/models/decidim/elections/trustee.rb +26 -0
- data/app/models/decidim/elections/trustees_participatory_space.rb +13 -0
- data/app/models/decidim/elections/vote.rb +15 -0
- data/app/models/decidim/votings/monitoring_committee_member.rb +24 -0
- data/app/models/decidim/votings/polling_officer.rb +76 -0
- data/app/models/decidim/votings/polling_station.rb +64 -0
- data/app/models/decidim/votings/voting.rb +138 -0
- data/app/permissions/decidim/elections/admin/permissions.rb +50 -10
- data/app/permissions/decidim/elections/permissions.rb +20 -2
- data/app/permissions/decidim/elections/trustee_zone/permissions.rb +32 -0
- data/app/permissions/decidim/votings/admin/permissions.rb +127 -0
- data/app/permissions/decidim/votings/permissions.rb +40 -0
- data/app/permissions/decidim/votings/polling_officer_zone/permissions.rb +32 -0
- data/app/presenters/decidim/elections/admin_log/election_presenter.rb +1 -1
- data/app/presenters/decidim/elections/trustee_presenter.rb +24 -0
- data/app/presenters/decidim/votings/admin_log/voting_presenter.rb +45 -0
- data/app/presenters/decidim/votings/polling_station_presenter.rb +27 -0
- data/app/presenters/decidim/votings/voting_presenter.rb +36 -0
- data/app/queries/decidim/elections/admin/pending_actions.rb +20 -0
- data/app/queries/decidim/elections/admin/votes_for_statistics.rb +24 -0
- data/app/queries/decidim/elections/elections_finished_to_end.rb +19 -0
- data/app/queries/decidim/elections/elections_ready_to_start.rb +25 -0
- data/app/queries/decidim/elections/trustees/by_participatory_space.rb +24 -0
- data/app/queries/decidim/elections/trustees/by_participatory_space_trustee_ids.rb +24 -0
- data/app/queries/decidim/elections/votes/election_votes.rb +19 -0
- data/app/queries/decidim/elections/votes/pending_votes.rb +20 -0
- data/app/queries/decidim/elections/votes/user_election_last_vote.rb +26 -0
- data/app/queries/decidim/elections/votes/user_votes.rb +19 -0
- data/app/queries/decidim/votings/admin/admin_users.rb +39 -0
- data/app/queries/decidim/votings/admin/polling_officers_join_polling_stations.rb +33 -0
- data/app/queries/decidim/votings/admin/polling_officers_join_polling_stations_and_user.rb +34 -0
- data/app/queries/decidim/votings/admin/polling_officers_join_user.rb +32 -0
- data/app/queries/decidim/votings/organization_prioritized_votings.rb +21 -0
- data/app/queries/decidim/votings/organization_promoted_votings.rb +16 -0
- data/app/queries/decidim/votings/organization_published_votings.rb +19 -0
- data/app/queries/decidim/votings/organization_votings.rb +16 -0
- data/app/queries/decidim/votings/prioritized_votings.rb +13 -0
- data/app/queries/decidim/votings/published_votings.rb +12 -0
- data/app/services/decidim/votings/voting_search.rb +46 -0
- data/app/views/decidim/elections/admin/answers/index.html.erb +12 -0
- data/app/views/decidim/elections/admin/elections/index.html.erb +13 -1
- data/app/views/decidim/elections/admin/proposals_imports/new.html.erb +1 -1
- data/app/views/decidim/elections/admin/questions/index.html.erb +5 -1
- data/app/views/decidim/elections/admin/shared/_trustees_secondary_nav.html.erb +3 -0
- data/app/views/decidim/elections/admin/steps/_create_election.html.erb +38 -0
- data/app/views/decidim/elections/admin/steps/_created.html.erb +16 -0
- data/app/views/decidim/elections/admin/steps/_key_ceremony.html.erb +16 -0
- data/app/views/decidim/elections/admin/steps/_key_ceremony_ended.html.erb +15 -0
- data/app/views/decidim/elections/admin/steps/_tally.html.erb +17 -0
- data/app/views/decidim/elections/admin/steps/_tally_ended.html.erb +9 -0
- data/app/views/decidim/elections/admin/steps/_vote.html.erb +21 -0
- data/app/views/decidim/elections/admin/steps/_vote_ended.html.erb +15 -0
- data/app/views/decidim/elections/admin/steps/_vote_stats.html.erb +31 -0
- data/app/views/decidim/elections/admin/steps/index.html.erb +43 -0
- data/app/views/decidim/elections/admin/trustees_participatory_spaces/_form.html.erb +19 -0
- data/app/views/decidim/elections/admin/trustees_participatory_spaces/index.html.erb +64 -0
- data/app/views/decidim/elections/admin/trustees_participatory_spaces/new.html.erb +7 -0
- data/app/views/decidim/elections/elections/_filters_small_view.html.erb +1 -1
- data/app/views/decidim/elections/elections/_preview.html.erb +26 -0
- data/app/views/decidim/elections/elections/_results.html.erb +47 -0
- data/app/views/decidim/elections/elections/show.html.erb +43 -18
- data/app/views/decidim/elections/trustee_zone/elections/_backup_modal.html.erb +24 -0
- data/app/views/decidim/elections/trustee_zone/elections/_key_ceremony_steps.html.erb +44 -0
- data/app/views/decidim/elections/trustee_zone/elections/_restore_modal.html.erb +25 -0
- data/app/views/decidim/elections/trustee_zone/elections/_tally_steps.html.erb +43 -0
- data/app/views/decidim/elections/trustee_zone/elections/show.html.erb +38 -0
- data/app/views/decidim/elections/trustee_zone/elections/update.js.erb +5 -0
- data/app/views/decidim/elections/trustee_zone/trustees/show.html.erb +102 -0
- data/app/views/decidim/elections/votes/_election_votes_confirmed.html.erb +38 -17
- data/app/views/decidim/elections/votes/_election_votes_failed.html.erb +21 -0
- data/app/views/decidim/elections/votes/_election_votes_question.html.erb +4 -4
- data/app/views/decidim/elections/votes/cast_failed.js.erb +1 -0
- data/app/views/decidim/elections/votes/cast_success.js.erb +1 -0
- data/app/views/decidim/elections/votes/new.html.erb +41 -33
- data/app/views/decidim/elections/votes/verify.html.erb +78 -0
- data/app/views/decidim/votings/admin/monitoring_committee_members/_form.html.erb +27 -0
- data/app/views/decidim/votings/admin/monitoring_committee_members/index.html.erb +41 -0
- data/app/views/decidim/votings/admin/monitoring_committee_members/new.html.erb +7 -0
- data/app/views/decidim/votings/admin/polling_officers/_form.html.erb +27 -0
- data/app/views/decidim/votings/admin/polling_officers/index.html.erb +50 -0
- data/app/views/decidim/votings/admin/polling_officers/new.html.erb +7 -0
- data/app/views/decidim/votings/admin/polling_stations/_form.html.erb +40 -0
- data/app/views/decidim/votings/admin/polling_stations/edit.html.erb +7 -0
- data/app/views/decidim/votings/admin/polling_stations/index.html.erb +55 -0
- data/app/views/decidim/votings/admin/polling_stations/new.html.erb +7 -0
- data/app/views/decidim/votings/admin/votings/_form.html.erb +63 -0
- data/app/views/decidim/votings/admin/votings/edit.html.erb +31 -0
- data/app/views/decidim/votings/admin/votings/index.html.erb +87 -0
- data/app/views/decidim/votings/admin/votings/new.html.erb +13 -0
- data/app/views/decidim/votings/admin/votings/polling_officers_picker.html.erb +2 -0
- data/app/views/decidim/votings/polling_officer_zone/polling_officers/show.html.erb +42 -0
- data/app/views/decidim/votings/polling_officer_zone/polling_stations/show.html.erb +1 -0
- data/app/views/decidim/votings/votings/_count.html.erb +1 -0
- data/app/views/decidim/votings/votings/_filters.html.erb +25 -0
- data/app/views/decidim/votings/votings/_filters_small_view.html.erb +23 -0
- data/app/views/decidim/votings/votings/_promoted_voting.html.erb +27 -0
- data/app/views/decidim/votings/votings/_voting_details.html.erb +7 -0
- data/app/views/decidim/votings/votings/_votings.html.erb +25 -0
- data/app/views/decidim/votings/votings/index.html.erb +42 -0
- data/app/views/decidim/votings/votings/index.js.erb +10 -0
- data/app/views/decidim/votings/votings/show.html.erb +20 -0
- data/app/views/layouts/decidim/_voting_header.html.erb +16 -0
- data/app/views/layouts/decidim/admin/voting.html.erb +101 -0
- data/app/views/layouts/decidim/voting.html.erb +16 -0
- data/config/initializers/decidim_bulletin_board.rb +23 -0
- data/config/locales/ca.yml +635 -6
- data/config/locales/cs.yml +635 -6
- data/config/locales/de.yml +635 -6
- data/config/locales/el.yml +4 -2
- data/config/locales/en.yml +636 -6
- data/config/locales/es-MX.yml +636 -7
- data/config/locales/es-PY.yml +636 -7
- data/config/locales/es.yml +636 -7
- data/config/locales/fi-plain.yml +636 -7
- data/config/locales/fi.yml +636 -7
- data/config/locales/fr-CA.yml +419 -6
- data/config/locales/fr.yml +419 -6
- data/config/locales/gl.yml +81 -4
- data/config/locales/it.yml +98 -6
- data/config/locales/ja.yml +12 -6
- data/config/locales/lv.yml +4 -2
- data/config/locales/nl.yml +502 -6
- data/config/locales/no.yml +0 -6
- data/config/locales/pl.yml +656 -10
- data/config/locales/pt.yml +4 -6
- data/config/locales/ro-RO.yml +214 -6
- data/config/locales/sv.yml +12 -7
- data/config/locales/tr-TR.yml +111 -6
- data/config/locales/zh-CN.yml +4 -6
- data/db/migrate/20200915142713_add_questionnaire_to_existing_elections.rb +29 -0
- data/db/migrate/20200918153813_create_decidim_elections_trustees_participatory_spaces.rb +13 -0
- data/db/migrate/20200918153824_create_decidim_elections_elections_trustees.rb +10 -0
- data/db/migrate/20200918153835_create_decidim_elections_trustees.rb +12 -0
- data/db/migrate/20201026163334_add_blocked_at_and_bb_status_to_elections.rb +8 -0
- data/db/migrate/20201028090110_add_votes_to_decidim_elections_answers.rb +7 -0
- data/db/migrate/20201028135614_add_selected_to_decidim_elections_answers.rb +7 -0
- data/db/migrate/20201209110653_create_decidim_elections_votes.rb +14 -0
- data/db/migrate/20201216091123_add_name_to_trustees.rb +7 -0
- data/db/migrate/20210113113818_add_message_id_to_decidim_elections_votes.rb +7 -0
- data/db/migrate/20210113120115_create_decidim_elections_votings.rb +20 -0
- data/db/migrate/20210114100749_add_published_at_to_decidim_votings_votings.rb +7 -0
- data/db/migrate/20210114111850_add_user_to_decidim_elections_votes.rb +7 -0
- data/db/migrate/20210120164634_add_promoted_to_voting.rb +7 -0
- data/db/migrate/20210125124801_add_voting_type_to_voting_voting.rb +7 -0
- data/db/migrate/20210129124956_create_decidim_elections_actions.rb +14 -0
- data/db/migrate/20210204132111_add_votings_polling_stations.rb +19 -0
- data/db/migrate/20210208090441_add_polling_officers_to_votings.rb +12 -0
- data/db/migrate/20210210090738_add_votings_polling_station_references_to_votings_polling_officer.rb +8 -0
- data/db/migrate/20210216074707_add_monitoring_committee_member.rb +12 -0
- data/db/migrate/20210310120708_add_followable_counter_cache_to_votings.rb +16 -0
- data/db/seeds/city.jpeg +0 -0
- data/lib/decidim/api/election_answer_type.rb +23 -0
- data/lib/decidim/api/election_question_type.rb +22 -0
- data/lib/decidim/api/election_type.rb +27 -0
- data/lib/decidim/api/elections_type.rb +32 -0
- data/lib/decidim/api/trustee_type.rb +16 -0
- data/lib/decidim/api/voting_type.rb +20 -0
- data/lib/decidim/elections.rb +19 -2
- data/lib/decidim/elections/admin_engine.rb +42 -1
- data/lib/decidim/elections/answer_serializer.rb +48 -0
- data/lib/decidim/elections/api.rb +11 -0
- data/lib/decidim/elections/component.rb +367 -24
- data/lib/decidim/elections/engine.rb +8 -1
- data/lib/decidim/elections/test/factories.rb +201 -4
- data/lib/decidim/elections/trustee_zone.rb +10 -0
- data/lib/decidim/elections/trustee_zone_engine.rb +35 -0
- data/lib/decidim/elections/version.rb +1 -1
- data/lib/decidim/votings.rb +16 -0
- data/lib/decidim/votings/admin.rb +10 -0
- data/lib/decidim/votings/admin_engine.rb +71 -0
- data/lib/decidim/votings/api.rb +7 -0
- data/lib/decidim/votings/engine.rb +147 -0
- data/lib/decidim/votings/participatory_space.rb +92 -0
- data/lib/decidim/votings/polling_officer_zone.rb +10 -0
- data/lib/decidim/votings/polling_officer_zone_engine.rb +33 -0
- data/lib/decidim/votings/query_extensions.rb +43 -0
- data/lib/decidim/votings/test/capybara_polling_officers_picker.rb +49 -0
- data/lib/decidim/votings/test/factories.rb +83 -0
- data/lib/decidim/votings/voting_serializer.rb +54 -0
- data/lib/tasks/decidim_elections.rake +68 -5
- metadata +303 -19
- data/app/types/decidim/elections/election_answer_type.rb +0 -24
- data/app/types/decidim/elections/election_question_type.rb +0 -25
- data/app/types/decidim/elections/election_type.rb +0 -27
- data/app/types/decidim/elections/elections_type.rb +0 -32
- data/config/i18n-tasks.yml +0 -10
- data/lib/decidim/elections/bulletin_board_client.rb +0 -35
data/config/locales/es-MX.yml
CHANGED
@@ -16,6 +16,9 @@ es-MX:
|
|
16
16
|
max_selections: Número máximo de opciones
|
17
17
|
min_selections: Ninguna de las anteriores
|
18
18
|
title: Título
|
19
|
+
voting:
|
20
|
+
end_time: La votación finaliza
|
21
|
+
start_time: La votación empieza
|
19
22
|
errors:
|
20
23
|
models:
|
21
24
|
answer:
|
@@ -26,7 +29,25 @@ es-MX:
|
|
26
29
|
attributes:
|
27
30
|
attachment:
|
28
31
|
needs_to_be_reattached: Es necesario volver a adjuntar el archivo
|
32
|
+
trustee:
|
33
|
+
attributes:
|
34
|
+
name:
|
35
|
+
cant_be_changed: no se puede cambiar
|
36
|
+
public_key:
|
37
|
+
cant_be_changed: no se puede cambiar
|
29
38
|
activerecord:
|
39
|
+
errors:
|
40
|
+
models:
|
41
|
+
decidim/votings/polling_officer:
|
42
|
+
attributes:
|
43
|
+
presided_polling_station:
|
44
|
+
president_and_manager: El gestor de mesa ya es presidente/gestor del punto de votación
|
45
|
+
voting:
|
46
|
+
different_organization: La votación debe estar en la misma organización que el usuario
|
47
|
+
decidim/votings/polling_station:
|
48
|
+
attributes:
|
49
|
+
polling_station_president:
|
50
|
+
different_voting: El gestor de mesa debe estar en la misma votación que el punto de votación
|
30
51
|
models:
|
31
52
|
decidim/elections/answer:
|
32
53
|
one: Respuesta
|
@@ -37,7 +58,33 @@ es-MX:
|
|
37
58
|
decidim/elections/question:
|
38
59
|
one: Pregunta
|
39
60
|
other: Preguntas
|
61
|
+
decidim/votings/polling_officer:
|
62
|
+
one: Gestor de mesa
|
63
|
+
other: Gestores de mesa
|
64
|
+
decidim/votings/polling_station:
|
65
|
+
one: Punto de votación
|
66
|
+
other: Puntos de votación
|
67
|
+
decidim/votings/voting:
|
68
|
+
one: Votación
|
69
|
+
other: Votaciones
|
40
70
|
decidim:
|
71
|
+
admin:
|
72
|
+
filters:
|
73
|
+
officers_assigned_eq:
|
74
|
+
label: Gestores
|
75
|
+
values:
|
76
|
+
assigned: Asignado
|
77
|
+
unassigned: No asignado
|
78
|
+
role_eq:
|
79
|
+
label: Rol
|
80
|
+
values:
|
81
|
+
manager: Gestor
|
82
|
+
president: Presidente
|
83
|
+
unassigned: Sin asignar
|
84
|
+
search_placeholder:
|
85
|
+
name_or_email_or_nickname_or_presided_station_title_or_managed_station_title_cont: Buscar %{collection} por nombre/email/alias o punto de votación.
|
86
|
+
? title_or_address_or_manager_name_or_manager_email_or_manager_nickname_or_president_name_or_president_email_or_president_nickname_cont
|
87
|
+
: Buscar %{collection} por título, dirección o nombre del gestor/email/alias.
|
41
88
|
components:
|
42
89
|
elections:
|
43
90
|
actions:
|
@@ -53,9 +100,11 @@ es-MX:
|
|
53
100
|
confirm_destroy: '¿Seguro que quieres eliminar?'
|
54
101
|
destroy: Eliminar
|
55
102
|
edit: Modificar
|
56
|
-
|
57
|
-
edit_questions: Editar las preguntas
|
103
|
+
feedback: Feedback del votante
|
58
104
|
import: Importar de propuestas a respuestas
|
105
|
+
manage_answers: Gestionar respuestas
|
106
|
+
manage_questions: Gestionar preguntas
|
107
|
+
manage_steps: Gestionar pasos
|
59
108
|
new: Nuevo %{name}
|
60
109
|
preview: Vista previa
|
61
110
|
publish: Publicar
|
@@ -78,6 +127,14 @@ es-MX:
|
|
78
127
|
new:
|
79
128
|
create: Crear respuesta
|
80
129
|
title: Nueva respuesta
|
130
|
+
select:
|
131
|
+
disable: Deseleccionar respuesta
|
132
|
+
enable: Marcar respuesta como seleccionada
|
133
|
+
invalid: Hubo un problema al seleccionar esta respuesta
|
134
|
+
success: Respuesta seleccionada con éxito
|
135
|
+
unselect:
|
136
|
+
invalid: Hubo un problema al deseleccionar esta respuesta
|
137
|
+
success: Respuesta seleccionada con éxito
|
81
138
|
update:
|
82
139
|
invalid: Se ha producido un error al crear esta respuesta
|
83
140
|
success: Respuesta actualizada con éxito
|
@@ -104,6 +161,9 @@ es-MX:
|
|
104
161
|
update:
|
105
162
|
invalid: Se ha producido un error al actualizar esta votación
|
106
163
|
success: Se ha actualizado la votación correctamente
|
164
|
+
exports:
|
165
|
+
elections: Elecciones
|
166
|
+
feedback_form_answers: Feedback de respuestas
|
107
167
|
models:
|
108
168
|
answer:
|
109
169
|
name: Respuesta
|
@@ -111,6 +171,8 @@ es-MX:
|
|
111
171
|
name: Votación
|
112
172
|
question:
|
113
173
|
name: Pregunta
|
174
|
+
trustee:
|
175
|
+
name: Garante
|
114
176
|
proposals_imports:
|
115
177
|
create:
|
116
178
|
invalid: Se ha producido un error al importar las propuestas a proyectos
|
@@ -119,6 +181,7 @@ es-MX:
|
|
119
181
|
create: Importar de propuestas a respuestas
|
120
182
|
no_components: No hay otros componentes de la propuesta en este espacio participativo desde el que importar las propuestas en los proyectos.
|
121
183
|
select_component: Por favor selecciona un componente
|
184
|
+
title: Importar propuestas
|
122
185
|
questions:
|
123
186
|
create:
|
124
187
|
invalid: Se ha producido un error al crear esta pregunta
|
@@ -137,9 +200,107 @@ es-MX:
|
|
137
200
|
update:
|
138
201
|
invalid: Se ha producido un error al actualizar esta pregunta
|
139
202
|
success: La pregunta se ha actualizado correctamente
|
203
|
+
steps:
|
204
|
+
create_election:
|
205
|
+
errors:
|
206
|
+
max_selections: Las preguntas no tienen un valor <strong>correcto para la cantidad de respuestas</strong>
|
207
|
+
minimum_answers: Las preguntas deben tener <strong>al menos dos respuestas</strong>.
|
208
|
+
minimum_questions: La elección <strong>debe tener al menos una pregunta</strong>.
|
209
|
+
published: La elección <strong>no está publicada</strong>.
|
210
|
+
time_before: La hora de inicio está en <strong>menos de 3 horas</strong> antes de que comience la elección.
|
211
|
+
trustees_number: El espacio participativo <strong>debe tener al menos %{number} garantes con clave pública</strong>.
|
212
|
+
invalid: Hubo un problema al configurar esta elección
|
213
|
+
no_trustees: No hay garantes configurados para este espacio participativo
|
214
|
+
not_used_trustee: "(no se usa)"
|
215
|
+
public_key:
|
216
|
+
'false': no tiene una <strong>clave pública</strong>
|
217
|
+
'true': tiene una <strong> clave pública</strong>
|
218
|
+
requirements:
|
219
|
+
max_selections: Todas las preguntas tienen un valor correcto para <strong>máximo de respuestas</strong>.
|
220
|
+
minimum_answers: Cada pregunta tiene <strong>al menos 2 respuestas</strong>.
|
221
|
+
minimum_questions: La elección tiene <strong>al menos 1 pregunta</strong>.
|
222
|
+
published: La elección está <strong>publicada</strong>.
|
223
|
+
time_before: La configuración se está realizando <strong>al menos %{hours} horas</strong> antes de que comience la elección.
|
224
|
+
trustees_number: El espacio participativo tiene <strong>al menos %{number} garantes con clave pública</strong>.
|
225
|
+
submit: Configurar elección
|
226
|
+
success: Elección enviada con éxito al Bulletin Board
|
227
|
+
title: Configurar elección
|
228
|
+
trustees: Garantes de la elección
|
229
|
+
created:
|
230
|
+
invalid: Hubo un problema al iniciar la ceremonia de claves
|
231
|
+
submit: Iniciar la ceremonia de claves
|
232
|
+
success: La solicitud para iniciar la ceremonia de claves fue enviada con éxito al Bulletin Board
|
233
|
+
title: Elección creada
|
234
|
+
trustees: Garantes
|
235
|
+
key_ceremony:
|
236
|
+
title: Ceremonia de claves
|
237
|
+
trustees: Garantes
|
238
|
+
key_ceremony_ended:
|
239
|
+
errors:
|
240
|
+
time_before: La elección está lista para comenzar. Tienes que esperar hasta %{hours} horas antes de la hora de inicio (%{start_time}) para comenzar el periodo de votación.
|
241
|
+
invalid: Hubo un problema al iniciar el período de votación
|
242
|
+
requirements:
|
243
|
+
time_before: La elección comenzará pronto. Puede iniciar el periodo de votación manualmente, o se iniciará automáticamente antes de la hora de inicio, a las %{start_time}.
|
244
|
+
submit: Empezar período de votación
|
245
|
+
success: La solicitud de período de votación se ha enviado correctamente al Bulletin Board
|
246
|
+
title: Listo para empezar
|
247
|
+
processing: Procesando...
|
248
|
+
results_published:
|
249
|
+
title: Resultados publicados
|
250
|
+
tally:
|
251
|
+
title: Proceso de recuento
|
252
|
+
trustees: Garantes
|
253
|
+
tally_ended:
|
254
|
+
submit: Publicar resultados
|
255
|
+
title: Resultados calculados
|
256
|
+
vote:
|
257
|
+
errors:
|
258
|
+
time_after: La elección aún está en curso. Tienes que esperar hasta la hora de finalización (%{end_time}) para terminar el periodo de votación.
|
259
|
+
invalid: Hubo un problema al terminar el período de votación
|
260
|
+
requirements:
|
261
|
+
time_after: La elección ha terminado. Puedes terminar el período de votación manualmente, o terminará automáticamente en unos minutos.
|
262
|
+
submit: Finalizar período de votación
|
263
|
+
success: La solicitud para finalizar el período de votación se ha enviado correctamente al Bulletin Board
|
264
|
+
title: Periodo de votación
|
265
|
+
vote_ended:
|
266
|
+
invalid: Hubo un problema al iniciar el recuento
|
267
|
+
submit: Comenzar recuento
|
268
|
+
success: La solicitud de inicio del recuento se envió correctamente al Bulletin Board
|
269
|
+
title: Periodo de votación finalizado
|
270
|
+
vote_stats:
|
271
|
+
no_vote_statistics_yet: Aún no hay estadísticas de voto
|
272
|
+
title: Estadísticas de voto
|
273
|
+
voters: Votantes
|
274
|
+
votes: Votos
|
275
|
+
trustees_participatory_spaces:
|
276
|
+
actions:
|
277
|
+
disable: Deshabilitar
|
278
|
+
enable: Considerar
|
279
|
+
create:
|
280
|
+
exists: El garante existe para este espacio participativo
|
281
|
+
invalid: Se ha producido un error al crear un garante
|
282
|
+
success: Garante creado correctamente
|
283
|
+
delete:
|
284
|
+
invalid: Se ha producido un error al eliminar este garante
|
285
|
+
success: Garante eliminado correctamente
|
286
|
+
form:
|
287
|
+
select_user: Seleccionar usuario
|
288
|
+
index:
|
289
|
+
title: Garantes
|
290
|
+
new:
|
291
|
+
create: Crear garante
|
292
|
+
title: Nuevo garante
|
293
|
+
update:
|
294
|
+
invalid: Se ha producido un error al actualizar el garante %{trustee}
|
295
|
+
success: El garante %{trustee} se ha actualizado correctamente
|
140
296
|
admin_log:
|
141
297
|
election:
|
298
|
+
end_vote: "%{user_name} terminó el período de votación para la elección %{resource_name} en el Bulletin Board"
|
142
299
|
publish: "%{user_name} ha publicado la votación %{resource_name}"
|
300
|
+
setup: "%{user_name} creó la elección %{resource_name} en el Bulletin Board"
|
301
|
+
start_key_ceremony: "%{user_name} comenzó la ceremonia de claves para las elecciones %{resource_name} en el Bulletin Board"
|
302
|
+
start_tally: "%{user_name} comenzó el recuento para la elección %{resource_name} en el Bulletin Board"
|
303
|
+
start_vote: "%{user_name} comenzó el período de votación para la elección %{resource_name} en el Bulletin Board"
|
143
304
|
unpublish: "%{user_name} ha despublicado la votación %{resource_name}"
|
144
305
|
election_m:
|
145
306
|
badge_name:
|
@@ -172,14 +333,40 @@ es-MX:
|
|
172
333
|
filter: Filtrar
|
173
334
|
filter_by: Filtrar por
|
174
335
|
unfold: Desplegar
|
336
|
+
preview:
|
337
|
+
available_answers: Respuestas disponibles
|
338
|
+
description: Estas son las preguntas que encontrarás en el proceso de votación
|
339
|
+
title: Preguntas de la elección
|
340
|
+
results:
|
341
|
+
description: Estos son los resultados de la votación, para cada pregunta
|
342
|
+
selected: Seleccionado
|
343
|
+
title: Resultados de la elección
|
344
|
+
votes:
|
345
|
+
one: ""
|
346
|
+
other: ""
|
175
347
|
show:
|
176
|
-
|
348
|
+
action-button:
|
349
|
+
change-vote: Cambia tu voto
|
350
|
+
vote: Empezar a votar
|
351
|
+
vote-again: Votar de nuevo
|
352
|
+
back: Elecciones disponibles
|
353
|
+
callout:
|
354
|
+
already-voted: Ya has votado en esta elección. Puedes cambiar tu voto o verificarlo.
|
355
|
+
vote-rejected: No ha sido posible verificar tu voto. Por favor, hazlo de nuevo.
|
177
356
|
preview: Previsualizar
|
178
|
-
|
357
|
+
verify:
|
358
|
+
already-voted: '¿Ya has votado?'
|
359
|
+
verify-here: Comprueba tu voto aquí.
|
360
|
+
will-verify: Podrás verificar tu voto una vez que comience la elección.
|
179
361
|
voting_period_status:
|
180
362
|
finished: La votación empezó el %{start_time} y terminó el %{end_time}
|
181
|
-
ongoing:
|
363
|
+
ongoing: 'Votación activa hasta: %{end_time}'
|
182
364
|
upcoming: La votación empieza el %{start_time}
|
365
|
+
feedback:
|
366
|
+
answer:
|
367
|
+
invalid: Hubo un problema al enviar tu feedback.
|
368
|
+
spam_detected: Hubo un problema al responder al formulario. Tal vez hayas sido demasiado rápido, ¿puedes intentarlo de nuevo?
|
369
|
+
success: Feedback enviado con éxito.
|
183
370
|
models:
|
184
371
|
answer:
|
185
372
|
fields:
|
@@ -187,6 +374,7 @@ es-MX:
|
|
187
374
|
title: Título
|
188
375
|
election:
|
189
376
|
fields:
|
377
|
+
bb_status: Estado del tBulletin Board
|
190
378
|
end_time: Termina el
|
191
379
|
start_time: Empieza el
|
192
380
|
title: Título
|
@@ -195,10 +383,114 @@ es-MX:
|
|
195
383
|
answers: Respuestas
|
196
384
|
max_selections: Número máximo de elementos a seleccionar
|
197
385
|
title: Título
|
386
|
+
trustees_participatory_space:
|
387
|
+
fields:
|
388
|
+
considered: considerado
|
389
|
+
email: Correo electrónico
|
390
|
+
inactive: inactivo
|
391
|
+
name: Nombre
|
392
|
+
notification: Notificación enviada el
|
393
|
+
public_key: Clave publica
|
394
|
+
status: Estado
|
198
395
|
orders:
|
199
396
|
label: Ordenar votaciones por
|
200
397
|
older: Más antigua
|
201
398
|
recent: Reciente
|
399
|
+
trustee_zone:
|
400
|
+
elections:
|
401
|
+
backup_modal:
|
402
|
+
description: Esta elección se está creando en el Bulletin Board. Es muy importante que cada garante que participe en ella cree una copia de seguridad de estas claves y las almacene en un lugar seguro. Después, el proceso continuará.
|
403
|
+
download_election_keys: Descargar claves
|
404
|
+
download_icon: Icono que indica una acción de descarga
|
405
|
+
title: Copia de seguridad de claves para la elección %{election}
|
406
|
+
key_ceremony_steps:
|
407
|
+
back: Volver
|
408
|
+
description: Esta elección está siendo creada en el Bulletin Board. Para completar este proceso, se necesita tu participación como garante.
|
409
|
+
keys:
|
410
|
+
create_election: Generación de claves
|
411
|
+
key_ceremony:
|
412
|
+
joint_election_key: Generación de claves conjuntas
|
413
|
+
step_1: Publicación de claves
|
414
|
+
list:
|
415
|
+
status: Estado
|
416
|
+
task: Tarea
|
417
|
+
process_warning: Una vez iniciado el proceso, no debes salir de esta página hasta que el proceso termine. Tardará varios minutos, ya que todos los garantes deben estar conectados para completarlo.
|
418
|
+
start: Empezar
|
419
|
+
start_icon: Icono que indica un botón de inicio para iniciar la generación de claves de una elección
|
420
|
+
status:
|
421
|
+
completed: Completada
|
422
|
+
pending: Pendiente
|
423
|
+
processing: Procesando
|
424
|
+
title: Crear claves para la elección %{election}
|
425
|
+
restore_modal:
|
426
|
+
description: El Bulletin Board tiene tu información como garante de esta elección. Para continuar el proceso, primero sube el archivo de copia de seguridad generado durante la sesión anterior.
|
427
|
+
title: Restaurar claves para la elección %{election}
|
428
|
+
upload_election_keys: Subir claves de elección
|
429
|
+
upload_icon: Icono que indica una acción de descarga
|
430
|
+
tally_steps:
|
431
|
+
back: Volver
|
432
|
+
description: Los resultados de esta elección están siendo calculados en el Bulletin Board. Para completar este proceso, se necesita tu participación como garante.
|
433
|
+
keys:
|
434
|
+
end_tally: Recuento finalizado
|
435
|
+
tally:
|
436
|
+
cast: Envío del recuento
|
437
|
+
share: Compartición del recuento
|
438
|
+
list:
|
439
|
+
status: Estado
|
440
|
+
task: Tarea
|
441
|
+
process_warning: Una vez iniciado el proceso, no debes salir de esta página hasta que el proceso termine. Tardará varios minutos, ya que todos los garantes deben estar conectados para completarlo.
|
442
|
+
start: Iniciar
|
443
|
+
start_icon: Icono que indica un botón de inicio para iniciar la generación de claves de elección
|
444
|
+
status:
|
445
|
+
completed: Completado
|
446
|
+
pending: Pendiente
|
447
|
+
processing: Procesando
|
448
|
+
title: Recuento para %{election}
|
449
|
+
update:
|
450
|
+
error: El estado de la elección no fue actualizado.
|
451
|
+
success: 'El estado de la elección es: %{status}'
|
452
|
+
menu:
|
453
|
+
trustee_zone: Zona del garante
|
454
|
+
no_bulletin_board:
|
455
|
+
body: Se requiere un Bulletin Board configurado para esta sección. Contacta con el Administrador para más detalles.
|
456
|
+
title: Lo sentimos, el Bulletin Board aún no está configurado.
|
457
|
+
trustees:
|
458
|
+
show:
|
459
|
+
elections:
|
460
|
+
list:
|
461
|
+
action_required:
|
462
|
+
'false': 'No'
|
463
|
+
name: '¿Acción requerida?'
|
464
|
+
'true': Realizar acción
|
465
|
+
bb_status: Estado
|
466
|
+
election: Elección
|
467
|
+
voting_period: Período de votación
|
468
|
+
no_elections: No hay elecciones en las que actúes como garante.
|
469
|
+
title: Elecciones
|
470
|
+
identification_keys:
|
471
|
+
cancel: Cancelar
|
472
|
+
generate: Generar claves de identificación
|
473
|
+
generate_error: Hubo un error al generar las claves de identificación.
|
474
|
+
generate_legend: Necesitas generar un par de claves de identificación para participar en las elecciones como garante.
|
475
|
+
generate_legend_1: Después de pulsar el botón debes descargar el archivo con las claves de identificación generadas.
|
476
|
+
generate_legend_2: Copia el archivo descargado a un dispositivo USB limpio
|
477
|
+
generate_legend_3: Asegúrate de que tu equipo no tenga una copia del archivo (por ejemplo, comprueba las carpetas de Descargas y Escritorio).
|
478
|
+
generate_legend_4: Haz otra copia del archivo en un dispositivo externo diferente y guárdalo en un lugar muy seguro.
|
479
|
+
submit: Enviar
|
480
|
+
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.
|
481
|
+
submit_title: Enviar la clave de identificación pública
|
482
|
+
title: Claves de identificación del garante
|
483
|
+
upload: Sube tus claves de identificación
|
484
|
+
upload_error:
|
485
|
+
invalid_format: El archivo subido no contiene ninguna clave de identificación.
|
486
|
+
invalid_key: Las claves de identificación en el archivo subido no se pueden cargar.
|
487
|
+
invalid_public_key: Las claves de identificación en el archivo subido no coinciden con la clave de identificación pública almacenada por Decidim.
|
488
|
+
upload_legend: Decidim tiene tus claves públicas de identificación, pero tu navegador todavía no las tiene. Necesitas importar el archivo con tus claves de identificación a tu ordenador desde la copia de seguridad que creaste después de generarlas.
|
489
|
+
not_supported_browser_description: Parece que estás usando un navegador que no puede ser utilizado para actuar como garante. Asegúrate de que estás usando la versión más reciente de tu navegador, o intenta usar cualquiera de los navegadores más populares para poder completar tus tareas como garante.
|
490
|
+
not_supported_browser_title: Actualiza el navegador para actuar como garante
|
491
|
+
trustee_role_description: Se le ha asignado como garante en algunas de las elecciones celebradas en esta plataforma.
|
492
|
+
update:
|
493
|
+
success: Tu clave pública de identificación fue guardada con éxito.
|
202
494
|
votes:
|
203
495
|
confirm:
|
204
496
|
answer: Respuesta
|
@@ -211,15 +503,20 @@ es-MX:
|
|
211
503
|
question: Preguntas %{count}
|
212
504
|
confirmed:
|
213
505
|
back: Volver a las votaciones
|
506
|
+
error: Lo sentimos, hubo un error al confirmar el voto. Por favor, vota de nuevo.
|
214
507
|
experience: '¿Cómo valoras la experiencia?'
|
215
508
|
feedback: Danos tu opinión
|
216
509
|
header: Voto confirmado
|
217
510
|
lead: '¡Tu voto ha sido emitido!'
|
218
511
|
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>'
|
219
|
-
|
512
|
+
verify_link: Para comprobarlo, copia el identificador y pégalo en la <a href="%{link}">página de verificación de voto</a>
|
220
513
|
encrypting:
|
221
514
|
header: Codificando voto...
|
222
515
|
text: Tu voto está siendo cifrado para asegurar que se emite de forma anónima.
|
516
|
+
failed:
|
517
|
+
header: Voto fallido
|
518
|
+
lead: '¡Tu voto no ha sido emitido!'
|
519
|
+
text: Algo salió mal, por favor inténtalo de nuevo.
|
223
520
|
header:
|
224
521
|
confirm: Confirma tu voto
|
225
522
|
confirmed: Voto confirmado
|
@@ -236,6 +533,28 @@ es-MX:
|
|
236
533
|
preview_alert: Esta es una vista previa de la cabina de votación.
|
237
534
|
question_steps: Pregunta %{current_step} de %{total_steps}
|
238
535
|
selections: "Seleccionada <br> %{selected} de %{max_selections}"
|
536
|
+
processing:
|
537
|
+
header: Procesando voto...
|
538
|
+
text: Tu voto ha sido recibido y está siendo procesado. Por favor, espera.
|
539
|
+
update:
|
540
|
+
error: Hubo un problema al actualizar el estado del voto
|
541
|
+
success: Estado de voto actualizado correctamente
|
542
|
+
verify:
|
543
|
+
content:
|
544
|
+
heading: Verifica tu voto
|
545
|
+
info: Este verificador comprueba que tu voto, identificado con una cadena de texto cifrada, ha sido emitido correctamente y está dentro de la urna.
|
546
|
+
error:
|
547
|
+
header: Voto no encontrado!
|
548
|
+
info: El código de voto no se ha encontrado en la urna de %{link}, inténtelo de nuevo.
|
549
|
+
form:
|
550
|
+
back: Volver a Decidim
|
551
|
+
submit: Comprobar
|
552
|
+
vote_identifier: 'Código identificador:'
|
553
|
+
header:
|
554
|
+
title: Verifica tu voto
|
555
|
+
success:
|
556
|
+
header: '¡Voto localizado!'
|
557
|
+
info: Tu voto cifrado está en la urna de %{link}
|
239
558
|
voting_step:
|
240
559
|
back: Atrás
|
241
560
|
continue: Siguiente
|
@@ -249,14 +568,324 @@ es-MX:
|
|
249
568
|
email_outro: Has recibido esta notificación porque estás siguiendo %{participatory_space_title}. Puedes dejar de recibir notificaciones siguiendo el enlace anterior.
|
250
569
|
email_subject: La votación %{resource_title} en %{participatory_space_title} ya está activa.
|
251
570
|
notification_title: La votación <a href="%{resource_path}">%{resource_title}</a> ya está activa en %{participatory_space_title}.
|
571
|
+
trustees:
|
572
|
+
new_election:
|
573
|
+
email_intro: Has sido añadido como garante para la elección de %{resource_title}.
|
574
|
+
email_outro: Has recibido esta notificación porque has sido añadido como garante para la elección %{resource_title}.
|
575
|
+
email_subject: Eres garante para la elección de %{resource_title}..
|
576
|
+
notification_title: Eres garante para la elección de <a href="%{resource_path}">%{resource_title}</a>.
|
577
|
+
new_trustee:
|
578
|
+
email_intro: Un administrador te ha añadido como garante para %{resource_name}. Debes crear tu clave pública <a href='%{trustee_zone_url}'>en tu zona de garantes</a>
|
579
|
+
email_outro: Has recibido esta notificación porque has sido añadido como garante para %{resource_name}.
|
580
|
+
email_subject: Eres garante de %{resource_name}.
|
581
|
+
notification_title: Eres garante de <a href="%{participatory_space_url}">%{resource_name}</a>.
|
582
|
+
votes:
|
583
|
+
accepted_votes:
|
584
|
+
email_intro: '¡Tu voto ha sido aceptado! Utilizando tu token de voto: %{encrypted_vote_hash}, puedes verificar tu voto <a href="%{verify_url}">aquí</a>.'
|
585
|
+
email_outro: Has recibido esta notificación porque has votado en la elección %{resource_name}.
|
586
|
+
email_subject: Tu voto para %{resource_name} ha sido aceptado.
|
587
|
+
notification_title: 'Tu voto ha sido aceptado. Verifica tu voto <a href="%{verify_url}">aquí</a> usando tu token de voto: %{encrypted_vote_hash}'
|
588
|
+
votings:
|
589
|
+
polling_officers:
|
590
|
+
polling_station_assigned:
|
591
|
+
email_intro: Se te ha asignado como %{role} del punto de votación %{polling_station_name} en <a href="%{resource_url}">%{resource_title}</a>. Puedes administrar el punto de votación desde el espacio <a href="%{polling_officer_zone_url}">Zona de gestores de mesa</a>.
|
592
|
+
email_outro: Has recibido esta notificación porque has sido asignado como %{role} de %{polling_station_name}.
|
593
|
+
email_subject: Eres %{role} del punto de votación %{polling_station_name}.
|
594
|
+
notification_title: Eres %{role} del punto de votación %{polling_station_name} en la votación <a href="%{resource_path}">%{resource_title}</a>.
|
595
|
+
help:
|
596
|
+
participatory_spaces:
|
597
|
+
votings:
|
598
|
+
contextual: "<p>Una <strong>votación</strong> es un espacio que os permite hacer una pregunta clara al conjunto de miembros de una organización, hacer un llamamiento a participar en una votación, generar y ordenar el debate a favor o en contra de una respuesta. cunado llega la fecha de la votación, podéis votar y publicar el resultado.</p> <p> Las votaciones pueden ser prácticamente de cualquier aspecto que afecte a la organización. Algunos ejemplos serían: cambiar el nombre o el logotipo de la organización ofreciendo diversas alternativas, decidir si pasar a formar parte de una organización más grande o no, validar o desestimar un nuevo plan estratégico o el resultado de un gruipo de trabajo, o definir si los cargos deberían tener una duración máxima de uno, dos o tres mandatos.</p>"
|
599
|
+
page: "<p>Una <strong>votación</strong> es un espacio que os permite hacer una pregunta clara al conjunto de miembros de una organización, hacer un llamamiento a participar en una votación, generar y ordenar el debate a favor o en contra de una respuesta. cunado llega la fecha de la votación, podéis votar y publicar el resultado.</p> <p> Las votaciones pueden ser prácticamente de cualquier aspecto que afecte a la organización. Algunos ejemplos serían: cambiar el nombre o el logotipo de la organización ofreciendo diversas alternativas, decidir si pasar a formar parte de una organización más grande o no, validar o desestimar un nuevo plan estratégico o el resultado de un gruipo de trabajo, o definir si los cargos deberían tener una duración máxima de uno, dos o tres mandatos.</p>"
|
600
|
+
title: '¿Qué son las votaciones?'
|
601
|
+
menu:
|
602
|
+
votings: Votaciones
|
252
603
|
pages:
|
253
604
|
home:
|
254
605
|
statistics:
|
255
606
|
elections_count: Elecciones
|
256
607
|
participatory_processes:
|
257
608
|
statistics:
|
258
|
-
elections_count:
|
609
|
+
elections_count: Elecciones
|
610
|
+
votings:
|
611
|
+
admin:
|
612
|
+
content_blocks:
|
613
|
+
highlighted_votings:
|
614
|
+
max_results: Cantidad máxima de elementos a mostrar
|
615
|
+
landing_page:
|
616
|
+
attachments_and_folders:
|
617
|
+
name: Archivos adjuntos y carpetas de la votación
|
618
|
+
description:
|
619
|
+
name: Descripción de la votación
|
620
|
+
elections:
|
621
|
+
name: Elecciones de la votación
|
622
|
+
header:
|
623
|
+
name: Cabecera de la votación
|
624
|
+
html_block_1:
|
625
|
+
name: Bloque html 1 de la votación
|
626
|
+
html_block_2:
|
627
|
+
name: Bloque html 2 de la votación
|
628
|
+
html_block_3:
|
629
|
+
name: Bloque html 3 de la votación
|
630
|
+
metrics:
|
631
|
+
name: Métricas de votación
|
632
|
+
polling_stations:
|
633
|
+
name: Puntos de votación
|
634
|
+
stats:
|
635
|
+
name: Estadísticas de votación
|
636
|
+
timeline:
|
637
|
+
name: Calendario de votación
|
638
|
+
index:
|
639
|
+
not_published: Despublicada
|
640
|
+
published: Publicada
|
641
|
+
landing_page:
|
642
|
+
content_blocks:
|
643
|
+
edit:
|
644
|
+
update: Actualizar
|
645
|
+
edit:
|
646
|
+
active_content_blocks: Bloques de contenido activos
|
647
|
+
inactive_content_blocks: Bloques de contenido inactivos
|
648
|
+
menu:
|
649
|
+
votings: Votaciones
|
650
|
+
votings_submenu:
|
651
|
+
attachment_collections: Carpetas
|
652
|
+
attachment_files: Archivos
|
653
|
+
attachments: Archivos adjuntos
|
654
|
+
components: Componentes
|
655
|
+
info: Información
|
656
|
+
landing_page: Página de inicio
|
657
|
+
monitoring_committee_members: Comité de seguimiento
|
658
|
+
polling_officers: Gestores de mesa
|
659
|
+
polling_stations: Puntos de votación
|
660
|
+
models:
|
661
|
+
monitoring_committee_member:
|
662
|
+
fields:
|
663
|
+
email: Correo electrónico
|
664
|
+
name: Nombre
|
665
|
+
name: Miembro del comité de seguimiento
|
666
|
+
polling_officer:
|
667
|
+
fields:
|
668
|
+
email: Correo electrónico
|
669
|
+
name: Nombre
|
670
|
+
polling_station: Punto de votación (rol)
|
671
|
+
name: Gestor de mesa
|
672
|
+
polling_station:
|
673
|
+
fields:
|
674
|
+
address: Dirección
|
675
|
+
polling_station_managers: Administradores
|
676
|
+
polling_station_president: Presidente
|
677
|
+
title: Título
|
678
|
+
name: Punto de votación
|
679
|
+
voting:
|
680
|
+
fields:
|
681
|
+
created_at: Creado el
|
682
|
+
promoted: Destacada
|
683
|
+
published: Publicada
|
684
|
+
title: Título
|
685
|
+
monitoring_committee_members:
|
686
|
+
create:
|
687
|
+
invalid: Hubo un problema al crear este miembro del comité de seguimiento
|
688
|
+
success: Miembro del comité de seguimiento creado con éxito
|
689
|
+
destroy:
|
690
|
+
invalid: Hubo un problema al eliminar este miembro del comité de seguimiento
|
691
|
+
success: El miembro del comité de seguimiento ha sido eliminado correctamente
|
692
|
+
form:
|
693
|
+
existing_user: Participante existente
|
694
|
+
non_user: Invitar nueva participante
|
695
|
+
select_user: Buscar por correo electrónico, nombre o alias
|
696
|
+
user_type: Tipo de participante
|
697
|
+
index:
|
698
|
+
title: Comité de seguimiento
|
699
|
+
new:
|
700
|
+
create: Crear
|
701
|
+
title: Crear miembro del comité de seguimiento
|
702
|
+
polling_officers:
|
703
|
+
create:
|
704
|
+
invalid: Hubo un problema al crear este gestor de mesa
|
705
|
+
success: Gestor de mesa creado con éxito
|
706
|
+
destroy:
|
707
|
+
invalid: Hubo un problema al eliminar este gestor de mesa
|
708
|
+
success: Gestor de mesa eliminado correctamente
|
709
|
+
form:
|
710
|
+
existing_user: Participante existente
|
711
|
+
non_user: Invitar nueva participante
|
712
|
+
select_user: Buscar por correo electrónico, nombre o alias
|
713
|
+
user_type: Tipo de participante
|
714
|
+
index:
|
715
|
+
role_manager: administrador
|
716
|
+
role_president: presidente
|
717
|
+
title: Gestores de mesa
|
718
|
+
new:
|
719
|
+
create: Crear
|
720
|
+
title: Crear gestor de mesa
|
721
|
+
polling_officers_picker:
|
722
|
+
choose_polling_officers: Elegir gestores de mesa
|
723
|
+
close: Cerrar
|
724
|
+
more_polling_officers: Hay %{number} gestores de mesa más. Refina tu búsqueda para localizarlos.
|
725
|
+
no_polling_officers: Ningún gestor de mesa coincide con tus criterios de búsqueda o no hay ninguno.
|
726
|
+
polling_stations:
|
727
|
+
create:
|
728
|
+
invalid: Hubo un problema al crear este punto de votación
|
729
|
+
success: El punto de votación se ha creado correctamente
|
730
|
+
destroy:
|
731
|
+
invalid: Hubo un problema al eliminar este punto de votación
|
732
|
+
success: El punto de votación se ha eliminado correctamente
|
733
|
+
edit:
|
734
|
+
title: Editar punto de votación
|
735
|
+
update: Actualizar punto de votación
|
736
|
+
form:
|
737
|
+
address_help: 'Dirección: usada por Geocoder para encontrar la ubicación'
|
738
|
+
location_help: 'Ubicación: mensaje dirigido a los votantes con el lugar exacto del punto de votación'
|
739
|
+
location_hints_help: 'Sugerencias de ubicación: información adicional. Ejemplo: el piso del edificio donde se encuentra el punto de votación.'
|
740
|
+
polling_station_managers_help: 'Administradores de mesa: los oficiales que actuarán como administradores de los puntos de votación. Asegúrate de que los oficiales ya han sido creados en Gestores de mesa y que no están ya asignados a otro punto de votación'
|
741
|
+
polling_station_president_help: 'Presidentes de mesa: los oficiales que actuarán como presidentes de los puntos de votación. Asegúrate de que los oficiales ya han sido creados en Gestores de mesa y que no están ya asignados a otro punto de votación'
|
742
|
+
select_president: Selecciona un gestor de mesa como presidente del punto de votación
|
743
|
+
index:
|
744
|
+
title: Puntos de votación
|
745
|
+
new:
|
746
|
+
create: Crear
|
747
|
+
title: Crear punto de votación
|
748
|
+
update:
|
749
|
+
invalid: Hubo un problema al actualizar este punto de votación
|
750
|
+
success: Punto de votación actualizado correctamente
|
751
|
+
titles:
|
752
|
+
votings: Votaciones
|
753
|
+
votings:
|
754
|
+
actions:
|
755
|
+
confirm_destroy: '¿Estás segura?'
|
756
|
+
destroy: Eliminar
|
757
|
+
new_voting: Nuevo espacio de votación
|
758
|
+
publish: Publicar
|
759
|
+
unpublish: Despublicar
|
760
|
+
create:
|
761
|
+
invalid: Hubo un problema al crear esta votación
|
762
|
+
success: Votación creada con éxito
|
763
|
+
edit:
|
764
|
+
add_election_component: No tienes ninguna elección configurada para esta votación. Por favor añádela en la sección de componentes
|
765
|
+
assign_missing_officers: Hay puntos de votación sin presidente y/o administradores. Asígnalos desde la sección de puntos de votación
|
766
|
+
update: Actualizar
|
767
|
+
form:
|
768
|
+
select_a_voting_type: Por favor, selecciona un tipo de votación
|
769
|
+
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}'
|
770
|
+
title: Título
|
771
|
+
voting_type:
|
772
|
+
hybrid: Hibrida
|
773
|
+
in_person: Presencial
|
774
|
+
online: En línea
|
775
|
+
new:
|
776
|
+
create: Crear
|
777
|
+
title: Nueva votación
|
778
|
+
publish:
|
779
|
+
success: Votación publicada con éxito
|
780
|
+
unpublish:
|
781
|
+
success: Votación despublicada correctamente
|
782
|
+
update:
|
783
|
+
invalid: Hubo un problema al actualizar esta votación
|
784
|
+
success: Votación actualizada correctamente
|
785
|
+
admin_log:
|
786
|
+
voting:
|
787
|
+
create: "%{user_name} creó la votación %{resource_name}"
|
788
|
+
publish: "%{user_name} publicó la votación %{resource_name}"
|
789
|
+
unpublish: "%{user_name} despublicó la votación %{resource_name}"
|
790
|
+
content_blocks:
|
791
|
+
highlighted_votings:
|
792
|
+
name: Votaciones destacadas
|
793
|
+
monitoring_committee_members:
|
794
|
+
actions:
|
795
|
+
confirm_destroy: '¿Estás segura?'
|
796
|
+
destroy: Borrar
|
797
|
+
new: Nuevo miembro
|
798
|
+
title: Acciones
|
799
|
+
pages:
|
800
|
+
home:
|
801
|
+
highlighted_votings:
|
802
|
+
active_votings: Votaciones activas
|
803
|
+
see_all_votings: Ver todas las votaciones
|
804
|
+
votings_button_title: Enlace a la página de Votaciones que las muestra todas
|
805
|
+
polling_officer_zone:
|
806
|
+
menu:
|
807
|
+
polling_officer_zone: Zona del gestor de mesa
|
808
|
+
polling_officers:
|
809
|
+
show:
|
810
|
+
actions:
|
811
|
+
count_votes: Contar los votos en las urnas
|
812
|
+
identify_person: Identificar y verificar a una persona
|
813
|
+
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.
|
814
|
+
polling_stations:
|
815
|
+
list:
|
816
|
+
actions: Acciones
|
817
|
+
address: Dirección
|
818
|
+
name: Nombre
|
819
|
+
role: Tu rol
|
820
|
+
voting: Votación
|
821
|
+
no_polling_stations: Todavía no estás asignado a ningún punto de votación.
|
822
|
+
title: Puntos de votación
|
823
|
+
polling_officers:
|
824
|
+
actions:
|
825
|
+
confirm_destroy: '¿Estás segura?'
|
826
|
+
destroy: Borrar
|
827
|
+
new: Nuevo
|
828
|
+
title: Acciones
|
829
|
+
roles:
|
830
|
+
manager: Administrador
|
831
|
+
president: Presidente
|
832
|
+
unassigned: No Asignado
|
833
|
+
polling_stations:
|
834
|
+
actions:
|
835
|
+
confirm_destroy: '¿Estás segura?'
|
836
|
+
destroy: Borrar
|
837
|
+
edit: Editar
|
838
|
+
new: Nuevo
|
839
|
+
title: Acciones
|
840
|
+
votings:
|
841
|
+
count:
|
842
|
+
title:
|
843
|
+
one: "%{count} votación"
|
844
|
+
other: "%{count} votaciones"
|
845
|
+
filters:
|
846
|
+
active: Activas
|
847
|
+
all: Todas
|
848
|
+
finished: Finalizadas
|
849
|
+
search: Buscar
|
850
|
+
state: Estado
|
851
|
+
upcoming: Próximas
|
852
|
+
filters_small_view:
|
853
|
+
close_modal: Cerrar ventana
|
854
|
+
filter: Filtrar
|
855
|
+
filter_by: Filtrar por
|
856
|
+
unfold: Desplegar
|
857
|
+
index:
|
858
|
+
no_votings: Ninguna votación coincide con tus criterios de búsqueda.
|
859
|
+
only_finished: Actualmente no hay votaciones programadas, pero aquí puedes encontrar las votaciones terminadas en la lista.
|
860
|
+
title: Votaciones
|
861
|
+
orders:
|
862
|
+
label: 'Ordenar votaciones por:'
|
863
|
+
random: Aleatorio
|
864
|
+
recent: Más recientes
|
865
|
+
show:
|
866
|
+
dates: Fechas
|
867
|
+
votings_m:
|
868
|
+
badge_name:
|
869
|
+
finished: Finalizada
|
870
|
+
ongoing: En curso
|
871
|
+
upcoming: Próximamente
|
872
|
+
footer_button_text:
|
873
|
+
participate: Participar
|
874
|
+
view: Ver
|
875
|
+
vote: Votar
|
876
|
+
unspecified: No especificado
|
877
|
+
voting_type:
|
878
|
+
hybrid: Hibrida
|
879
|
+
in_person: Presencial
|
880
|
+
online: En línea
|
881
|
+
voting_types_label: Tipo de votación
|
259
882
|
layouts:
|
260
883
|
decidim:
|
261
884
|
election_votes_header:
|
262
885
|
exit: Salir
|
886
|
+
votings:
|
887
|
+
index:
|
888
|
+
promoted_votings: Votaciones destacadas
|
889
|
+
promoted_voting:
|
890
|
+
more_info: Más información
|
891
|
+
vote: Votar
|