decidim-decidim_awesome 0.8.0 → 0.12.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.
Files changed (351) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +363 -0
  3. data/README.md +375 -100
  4. data/Rakefile +2 -1
  5. data/app/cells/concerns/decidim/decidim_awesome/global_menu_cell_override.rb +20 -0
  6. data/app/cells/concerns/decidim/decidim_awesome/proposal_l_cell_override.rb +26 -0
  7. data/app/cells/decidim/decidim_awesome/content_blocks/map/show.erb +5 -12
  8. data/app/cells/decidim/decidim_awesome/content_blocks/map_cell.rb +7 -7
  9. data/app/cells/decidim/decidim_awesome/voting/proposal_metadata_cell.rb +69 -0
  10. data/app/cells/decidim/decidim_awesome/voting/voting_cards_base_cell.rb +40 -0
  11. data/app/cells/decidim/decidim_awesome/voting/voting_cards_proposal/modal.erb +18 -0
  12. data/app/cells/decidim/decidim_awesome/voting/voting_cards_proposal/show.erb +40 -0
  13. data/app/cells/decidim/decidim_awesome/voting/voting_cards_proposal/vote_block_for.erb +16 -0
  14. data/app/cells/decidim/decidim_awesome/voting/voting_cards_proposal_cell.rb +90 -0
  15. data/app/commands/concerns/decidim/decidim_awesome/admin/needs_constraint_helpers.rb +2 -2
  16. data/app/commands/concerns/decidim/decidim_awesome/proposals/admin/update_proposal_override.rb +31 -0
  17. data/app/commands/concerns/decidim/decidim_awesome/proposals/create_collaborative_draft_override.rb +27 -0
  18. data/app/commands/concerns/decidim/decidim_awesome/proposals/create_proposal_override.rb +27 -0
  19. data/app/commands/concerns/decidim/decidim_awesome/proposals/update_collaborative_draft_override.rb +27 -0
  20. data/app/commands/concerns/decidim/decidim_awesome/proposals/update_proposal_override.rb +26 -0
  21. data/app/commands/concerns/decidim/decidim_awesome/system/create_organization_override.rb +29 -0
  22. data/app/commands/concerns/decidim/decidim_awesome/system/update_organization_override.rb +35 -0
  23. data/app/commands/concerns/decidim/decidim_awesome/update_account_override.rb +30 -0
  24. data/app/commands/decidim/decidim_awesome/admin/create_constraint.rb +3 -3
  25. data/app/commands/decidim/decidim_awesome/admin/create_custom_redirect.rb +1 -1
  26. data/app/commands/decidim/decidim_awesome/admin/create_menu_hack.rb +1 -1
  27. data/app/commands/decidim/decidim_awesome/admin/create_proposal_custom_field.rb +5 -4
  28. data/app/commands/decidim/decidim_awesome/admin/create_scoped_admin.rb +1 -1
  29. data/app/commands/decidim/decidim_awesome/admin/create_scoped_style.rb +4 -3
  30. data/app/commands/decidim/decidim_awesome/admin/destroy_constraint.rb +1 -1
  31. data/app/commands/decidim/decidim_awesome/admin/destroy_custom_redirect.rb +2 -2
  32. data/app/commands/decidim/decidim_awesome/admin/destroy_menu_hack.rb +2 -2
  33. data/app/commands/decidim/decidim_awesome/admin/destroy_proposal_custom_field.rb +7 -4
  34. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_admin.rb +1 -1
  35. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_style.rb +7 -5
  36. data/app/commands/decidim/decidim_awesome/admin/rename_scope_label.rb +2 -2
  37. data/app/commands/decidim/decidim_awesome/admin/update_config.rb +2 -3
  38. data/app/commands/decidim/decidim_awesome/admin/update_constraint.rb +3 -3
  39. data/app/commands/decidim/decidim_awesome/admin/update_custom_redirect.rb +3 -3
  40. data/app/commands/decidim/decidim_awesome/admin/update_menu_hack.rb +1 -1
  41. data/app/commands/decidim/decidim_awesome/command.rb +8 -0
  42. data/app/commands/decidim/decidim_awesome/create_editor_image.rb +2 -2
  43. data/app/controllers/concerns/decidim/decidim_awesome/admin/maintenance_context.rb +43 -0
  44. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable.rb +67 -0
  45. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable_helper.rb +38 -0
  46. data/app/controllers/concerns/decidim/decidim_awesome/check_login_authorizations.rb +60 -0
  47. data/app/controllers/concerns/decidim/decidim_awesome/content_security_policy.rb +34 -0
  48. data/app/controllers/concerns/decidim/decidim_awesome/limit_pending_amendments.rb +35 -0
  49. data/app/controllers/concerns/decidim/decidim_awesome/needs_awesome_config.rb +0 -2
  50. data/app/controllers/concerns/decidim/decidim_awesome/not_found_redirect.rb +3 -3
  51. data/app/controllers/concerns/decidim/decidim_awesome/proposals/memoize_extra_fields.rb +23 -0
  52. data/app/controllers/concerns/decidim/decidim_awesome/proposals/orderable_override.rb +94 -0
  53. data/app/controllers/concerns/decidim/decidim_awesome/proposals/proposal_votes_controller_override.rb +64 -0
  54. data/app/controllers/concerns/decidim/decidim_awesome/use_user_time_zone.rb +32 -0
  55. data/app/controllers/decidim/decidim_awesome/admin/admin_accountability_controller.rb +72 -0
  56. data/app/controllers/decidim/decidim_awesome/admin/admin_authorizations_controller.rb +122 -0
  57. data/app/controllers/decidim/decidim_awesome/admin/application_controller.rb +2 -0
  58. data/app/controllers/decidim/decidim_awesome/admin/checks_controller.rb +21 -17
  59. data/app/controllers/decidim/decidim_awesome/admin/config_controller.rb +17 -8
  60. data/app/controllers/decidim/decidim_awesome/admin/constraints_controller.rb +27 -20
  61. data/app/controllers/decidim/decidim_awesome/admin/custom_redirects_controller.rb +6 -8
  62. data/app/controllers/decidim/decidim_awesome/admin/maintenance_controller.rb +76 -0
  63. data/app/controllers/decidim/decidim_awesome/admin/menu_hacks_controller.rb +6 -8
  64. data/app/controllers/decidim/decidim_awesome/admin/proposal_custom_fields_controller.rb +14 -6
  65. data/app/controllers/decidim/decidim_awesome/admin/scoped_admins_controller.rb +2 -2
  66. data/app/controllers/decidim/decidim_awesome/admin/scoped_styles_controller.rb +14 -6
  67. data/app/controllers/decidim/decidim_awesome/blank_component_controller.rb +8 -3
  68. data/app/controllers/decidim/decidim_awesome/editor_images_controller.rb +3 -5
  69. data/app/controllers/decidim/decidim_awesome/iframe_component/iframe_controller.rb +18 -5
  70. data/app/controllers/decidim/decidim_awesome/required_authorizations_controller.rb +58 -0
  71. data/app/forms/concerns/decidim/decidim_awesome/account_form_override.rb +25 -0
  72. data/app/forms/concerns/decidim/decidim_awesome/proposals/proposal_form_customizations.rb +57 -0
  73. data/app/forms/concerns/decidim/decidim_awesome/proposals/proposal_form_override.rb +21 -0
  74. data/app/forms/concerns/decidim/decidim_awesome/system/organization_form_override.rb +34 -0
  75. data/app/forms/decidim/decidim_awesome/admin/config_form.rb +88 -20
  76. data/app/forms/decidim/decidim_awesome/admin/custom_redirect_form.rb +3 -3
  77. data/app/forms/decidim/decidim_awesome/admin/intergram_form.rb +4 -0
  78. data/app/forms/decidim/decidim_awesome/admin/menu_form.rb +5 -5
  79. data/app/helpers/concerns/decidim/decidim_awesome/amendments_helper_override.rb +65 -0
  80. data/app/helpers/concerns/decidim/decidim_awesome/breadcrumb_helper_override.rb +23 -0
  81. data/app/helpers/concerns/decidim/decidim_awesome/proposals/application_helper_override.rb +110 -0
  82. data/app/helpers/decidim/decidim_awesome/admin/config_constraints_helpers.rb +12 -29
  83. data/app/helpers/decidim/decidim_awesome/admin/system_checker_helpers.rb +4 -0
  84. data/app/helpers/decidim/decidim_awesome/map_helper.rb +38 -52
  85. data/app/jobs/decidim/decidim_awesome/destroy_private_data_job.rb +22 -0
  86. data/app/jobs/decidim/decidim_awesome/export_admin_actions_job.rb +28 -0
  87. data/app/models/concerns/decidim/decidim_awesome/has_proposal_extra_fields.rb +80 -0
  88. data/app/models/concerns/decidim/decidim_awesome/has_vote_weight.rb +30 -0
  89. data/app/models/decidim/decidim_awesome/awesome_config.rb +1 -2
  90. data/app/models/decidim/decidim_awesome/config_constraint.rb +0 -2
  91. data/app/models/decidim/decidim_awesome/editor_image.rb +0 -3
  92. data/app/models/decidim/decidim_awesome/paper_trail_version.rb +117 -0
  93. data/app/models/decidim/decidim_awesome/proposal_extra_field.rb +45 -0
  94. data/app/models/decidim/decidim_awesome/vote_weight.rb +30 -0
  95. data/app/overrides/decidim/account/show/add_timezone_select.html.erb.deface +3 -0
  96. data/app/overrides/decidim/admin/officializations/index/add_modal.html.erb.deface +3 -0
  97. data/app/overrides/decidim/admin/officializations/index/add_td.html.erb.deface +5 -0
  98. data/app/overrides/decidim/admin/officializations/index/add_th.html.erb.deface +5 -0
  99. data/app/overrides/decidim/proposals/admin/proposals/_form/replace_editor.html.erb.deface +3 -0
  100. data/app/overrides/decidim/proposals/admin/proposals/show/add_private_body.html.erb.deface +7 -0
  101. data/app/overrides/decidim/proposals/admin/proposals/show/replace_body.html.erb.deface +5 -0
  102. data/app/overrides/decidim/proposals/proposals/_proposal_aside/limit_amendments_modal.html.erb.deface +5 -0
  103. data/app/overrides/decidim/proposals/proposals/_vote_button/replace_vote_button.html.erb.deface +7 -0
  104. data/app/overrides/decidim/proposals/proposals/_votes_count/replace_counter.html.erb.deface +10 -0
  105. data/app/overrides/decidim/system/organizations/_advanced_settings/add_awesome_config.html.erb.deface +9 -0
  106. data/app/{views/layouts/decidim/_head.html.erb → overrides/layouts/decidim/_decidim_javascript/add_awesome_tags.html.erb.deface} +2 -1
  107. data/app/overrides/layouts/decidim/_head/add_awesome_tags.html.erb.deface +7 -0
  108. data/app/overrides/layouts/decidim/admin/_header/add_awesome_custom_styles.html.erb.deface +3 -0
  109. data/app/overrides/layouts/decidim/admin/_header/add_awesome_tags.html.erb.deface +10 -0
  110. data/app/packs/entrypoints/decidim_admin_decidim_awesome.js +2 -2
  111. data/app/packs/entrypoints/decidim_admin_decidim_awesome_global.js +4 -0
  112. data/app/packs/entrypoints/decidim_admin_decidim_awesome_global.scss +1 -0
  113. data/app/packs/entrypoints/decidim_admin_decidim_awesome_search_form.scss +1 -0
  114. data/app/packs/entrypoints/decidim_decidim_awesome.js +2 -2
  115. data/app/packs/entrypoints/decidim_decidim_awesome_map.scss +1 -1
  116. data/app/packs/entrypoints/decidim_editor.js +14 -0
  117. data/app/packs/images/decidim/decidim_awesome/handcard.svg +14 -0
  118. data/app/packs/images/decidim/decidim_awesome/handcheck.svg +17 -0
  119. data/app/packs/images/decidim/decidim_awesome/pokecode-logo.png +0 -0
  120. data/app/packs/src/decidim/decidim_awesome/admin/auto_edit.js +96 -69
  121. data/app/packs/src/decidim/decidim_awesome/admin/check_redirections.js +46 -41
  122. data/app/packs/src/decidim/decidim_awesome/admin/codemirror.js +3 -3
  123. data/app/packs/src/decidim/decidim_awesome/admin/constraint_form_events.js +115 -0
  124. data/app/packs/src/decidim/decidim_awesome/admin/custom_fields_builder.js +19 -14
  125. data/app/packs/src/decidim/decidim_awesome/admin/form_exit_warn.js +23 -11
  126. data/app/packs/src/decidim/decidim_awesome/admin/proposal_sortings.js +26 -0
  127. data/app/packs/src/decidim/decidim_awesome/admin/tabs_change.js +31 -0
  128. data/app/packs/src/decidim/decidim_awesome/admin/user_picker.js +34 -20
  129. data/app/packs/src/decidim/decidim_awesome/admin/verification_selects.js +21 -0
  130. data/app/packs/src/decidim/decidim_awesome/admin/verifications.js +43 -0
  131. data/app/packs/src/decidim/decidim_awesome/amendments/show_modal_on_limits.js +28 -0
  132. data/app/packs/src/decidim/decidim_awesome/awesome_admin.js +7 -16
  133. data/app/packs/src/decidim/decidim_awesome/awesome_admin_global.js +2 -0
  134. data/app/packs/src/decidim/decidim_awesome/awesome_application.js +2 -15
  135. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/fetcher.js +48 -23
  136. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/meetings_fetcher.js +9 -12
  137. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/proposals_fetcher.js +28 -0
  138. data/app/packs/src/decidim/decidim_awesome/awesome_map/awesome_map.js +15 -15
  139. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/controller.js +70 -37
  140. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/meetings_controller.js +11 -7
  141. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/proposals_controller.js +9 -16
  142. data/app/packs/src/decidim/decidim_awesome/awesome_map/controls_ui.js +75 -45
  143. data/app/packs/src/decidim/decidim_awesome/awesome_map/load_map.js +28 -18
  144. data/app/packs/src/decidim/decidim_awesome/editor/index.js +94 -0
  145. data/app/packs/src/decidim/decidim_awesome/forms/autosave.js +29 -28
  146. data/app/packs/src/decidim/decidim_awesome/forms/custom_fields_renderer.js +55 -42
  147. data/app/packs/src/decidim/decidim_awesome/forms/rich_text_plugin.js +30 -32
  148. data/app/packs/src/decidim/decidim_awesome/proposals/custom_fields.js +32 -16
  149. data/app/packs/src/decidim/decidim_awesome/proposals/images.js +16 -10
  150. data/app/packs/src/decidim/decidim_awesome/voting/voting_cards.js +72 -0
  151. data/app/packs/stylesheets/decidim/decidim_awesome/admin/admin_accountability.scss +67 -0
  152. data/app/packs/stylesheets/decidim/decidim_awesome/admin/auto_edits.scss +11 -12
  153. data/app/packs/stylesheets/decidim/decidim_awesome/admin/check_redirections.scss +15 -0
  154. data/app/packs/stylesheets/decidim/decidim_awesome/admin/codemirror.scss +24 -12
  155. data/app/packs/stylesheets/decidim/decidim_awesome/admin/constraints.scss +49 -29
  156. data/app/packs/stylesheets/decidim/decidim_awesome/admin/custom_fields.scss +28 -71
  157. data/app/packs/stylesheets/decidim/decidim_awesome/admin/custom_styles.scss +48 -0
  158. data/app/packs/stylesheets/decidim/decidim_awesome/admin/intergram_fixes.scss +11 -0
  159. data/app/packs/stylesheets/decidim/decidim_awesome/admin/user_picker.scss +17 -26
  160. data/app/packs/stylesheets/decidim/decidim_awesome/admin/verifications.scss +99 -0
  161. data/app/packs/stylesheets/decidim/decidim_awesome/amendments/modal.scss +5 -0
  162. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_admin.scss +14 -49
  163. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_admin_global.scss +20 -0
  164. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_application.scss +4 -18
  165. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_iframe/iframe.scss +1 -1
  166. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_map/map.scss +41 -35
  167. data/app/packs/stylesheets/decidim/decidim_awesome/forms/autosave.scss +6 -6
  168. data/app/packs/stylesheets/decidim/decidim_awesome/forms/custom_fields.scss +118 -0
  169. data/app/packs/stylesheets/decidim/decidim_awesome/shared/spinner.scss +26 -0
  170. data/app/packs/stylesheets/decidim/decidim_awesome/voting/voting_cards.scss +205 -0
  171. data/app/permissions/decidim/decidim_awesome/admin/permissions.rb +57 -1
  172. data/app/permissions/decidim/decidim_awesome/permissions.rb +11 -6
  173. data/app/presenters/concerns/decidim/decidim_awesome/breadcrumb_root_menu_item_presenter_override.rb +23 -0
  174. data/app/presenters/{decidim → concerns/decidim}/decidim_awesome/menu_item_presenter_override.rb +10 -2
  175. data/app/presenters/{decidim → concerns/decidim}/decidim_awesome/menu_presenter_override.rb +8 -0
  176. data/app/presenters/concerns/decidim/decidim_awesome/proposals/proposal_presenter_override.rb +20 -0
  177. data/app/presenters/decidim/decidim_awesome/admin_log/component_presenter_override.rb +28 -0
  178. data/app/presenters/decidim/decidim_awesome/admin_log/user_presenter_override.rb +46 -0
  179. data/app/presenters/decidim/decidim_awesome/paper_trail_base_presenter.rb +28 -0
  180. data/app/presenters/decidim/decidim_awesome/participatory_space_role_presenter.rb +45 -0
  181. data/app/presenters/decidim/decidim_awesome/private_data_presenter.rb +70 -0
  182. data/app/presenters/decidim/decidim_awesome/role_base_presenter.rb +102 -0
  183. data/app/presenters/decidim/decidim_awesome/user_entity_presenter.rb +50 -0
  184. data/app/queries/decidim/decidim_awesome/private_data_finder.rb +19 -0
  185. data/app/serializers/concerns/decidim/decidim_awesome/proposals/proposal_serializer_methods.rb +72 -0
  186. data/app/serializers/concerns/decidim/decidim_awesome/proposals/proposal_serializer_override.rb +38 -0
  187. data/app/serializers/decidim/decidim_awesome/paper_trail_version_serializer.rb +37 -0
  188. data/app/serializers/decidim/decidim_awesome/proposals/private_proposal_serializer.rb +34 -0
  189. data/app/types/concerns/decidim/decidim_awesome/add_proposal_type_custom_fields.rb +59 -0
  190. data/app/types/concerns/decidim/decidim_awesome/add_proposal_type_vote_weights.rb +20 -0
  191. data/app/uploaders/decidim/decidim_awesome/image_uploader.rb +12 -0
  192. data/app/validators/concerns/decidim/decidim_awesome/etiquette_validator_override.rb +41 -0
  193. data/app/views/decidim/decidim_awesome/account/_timezone_select.html.erb +3 -0
  194. data/app/views/decidim/decidim_awesome/admin/admin_accountability/index.html.erb +71 -0
  195. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/authorization.html.erb +20 -0
  196. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/callout.html.erb +3 -0
  197. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/conflict.html.erb +5 -0
  198. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/edit.html.erb +41 -0
  199. data/app/views/decidim/decidim_awesome/admin/checks/_assets_tester.html.erb +2 -0
  200. data/app/views/decidim/decidim_awesome/admin/checks/index.html.erb +51 -48
  201. data/app/views/decidim/decidim_awesome/admin/config/_autoedit_box_label.html.erb +7 -2
  202. data/app/views/decidim/decidim_awesome/admin/config/_constraints.html.erb +25 -18
  203. data/app/views/decidim/decidim_awesome/admin/config/_form_admins.html.erb +7 -6
  204. data/app/views/decidim/decidim_awesome/admin/config/_form_editors.html.erb +12 -16
  205. data/app/views/decidim/decidim_awesome/admin/config/_form_livechat.html.erb +39 -23
  206. data/app/views/decidim/decidim_awesome/admin/config/_form_proposal_custom_fields.html.erb +35 -17
  207. data/app/views/decidim/decidim_awesome/admin/config/_form_proposal_private_custom_fields.html.erb +1 -0
  208. data/app/views/decidim/decidim_awesome/admin/config/_form_proposals.html.erb +92 -6
  209. data/app/views/decidim/decidim_awesome/admin/config/_form_scoped_admin_styles.html.erb +1 -0
  210. data/app/views/decidim/decidim_awesome/admin/config/_form_scoped_styles.html.erb +48 -0
  211. data/app/views/decidim/decidim_awesome/admin/config/_form_surveys.html.erb +16 -6
  212. data/app/views/decidim/decidim_awesome/admin/config/_form_verifications.html.erb +15 -0
  213. data/app/views/decidim/decidim_awesome/admin/config/show.html.erb +22 -12
  214. data/app/views/decidim/decidim_awesome/admin/constraints/_form.html.erb +1 -49
  215. data/app/views/decidim/decidim_awesome/admin/constraints/new.html.erb +14 -9
  216. data/app/views/decidim/decidim_awesome/admin/constraints/no_permissions.html.erb +6 -0
  217. data/app/views/decidim/decidim_awesome/admin/constraints/show.html.erb +14 -9
  218. data/app/views/decidim/decidim_awesome/admin/custom_redirects/_form.html.erb +20 -5
  219. data/app/views/decidim/decidim_awesome/admin/custom_redirects/edit.html.erb +5 -5
  220. data/app/views/decidim/decidim_awesome/admin/custom_redirects/index.html.erb +14 -13
  221. data/app/views/decidim/decidim_awesome/admin/custom_redirects/new.html.erb +5 -5
  222. data/app/views/decidim/decidim_awesome/admin/maintenance/_private_data.html.erb +44 -0
  223. data/app/views/decidim/decidim_awesome/admin/maintenance/show.html.erb +44 -0
  224. data/app/views/decidim/decidim_awesome/admin/menu_hacks/_form.html.erb +6 -6
  225. data/app/views/decidim/decidim_awesome/admin/menu_hacks/edit.html.erb +21 -12
  226. data/app/views/decidim/decidim_awesome/admin/menu_hacks/index.html.erb +39 -42
  227. data/app/views/decidim/decidim_awesome/admin/menu_hacks/new.html.erb +21 -12
  228. data/app/views/decidim/decidim_awesome/admin/officializations/_participants_td.html.erb +25 -0
  229. data/app/views/decidim/decidim_awesome/admin/officializations/_participants_th.html.erb +1 -0
  230. data/app/views/decidim/decidim_awesome/admin/officializations/_verification_modal.html.erb +9 -0
  231. data/app/views/decidim/decidim_awesome/admin/proposals/_editor.html.erb +8 -5
  232. data/app/views/decidim/decidim_awesome/admin/proposals/_private_body.html.erb +20 -0
  233. data/app/views/decidim/decidim_awesome/admin/shared/_filters_with_date.html.erb +61 -0
  234. data/app/views/decidim/decidim_awesome/amendments/_modal.html.erb +23 -0
  235. data/app/views/decidim/decidim_awesome/custom_fields/_form_render.html.erb +8 -2
  236. data/app/views/decidim/decidim_awesome/iframe_component/iframe/show.html.erb +7 -12
  237. data/app/views/decidim/decidim_awesome/map_component/map/_map_template.html.erb +53 -37
  238. data/app/views/decidim/decidim_awesome/map_component/map/show.html.erb +14 -5
  239. data/app/views/decidim/decidim_awesome/required_authorizations/index.html.erb +66 -0
  240. data/app/views/decidim/decidim_awesome/system/organizations/_admin_allowed_authorizations.html.erb +5 -0
  241. data/app/views/decidim/decidim_awesome/voting/voting_cards/_show_vote_button.html.erb +3 -0
  242. data/app/views/decidim/decidim_awesome/voting/voting_cards/_show_votes_count.html.erb +1 -0
  243. data/app/views/layouts/decidim/decidim_awesome/_awesome_config.html.erb +11 -8
  244. data/app/views/layouts/decidim/decidim_awesome/_custom_styles.html.erb +1 -1
  245. data/app/views/layouts/decidim/decidim_awesome/_intergram_widget.html.erb +9 -6
  246. data/app/views/layouts/decidim/decidim_awesome/admin/_base.html.erb +12 -0
  247. data/app/views/layouts/decidim/decidim_awesome/admin/_custom_styles.html.erb +3 -0
  248. data/app/views/layouts/decidim/decidim_awesome/admin/admin_authorizations.html.erb +7 -0
  249. data/app/views/layouts/decidim/decidim_awesome/admin/application.html.erb +3 -0
  250. data/app/views/layouts/decidim/decidim_awesome/admin/maintenance.html.erb +19 -0
  251. data/config/assets.rb +5 -34
  252. data/config/i18n-tasks.yml +30 -0
  253. data/config/locales/ca.yml +335 -26
  254. data/config/locales/cs.yml +331 -22
  255. data/config/locales/de.yml +642 -0
  256. data/config/locales/en.yml +403 -33
  257. data/config/locales/es.yml +333 -24
  258. data/config/locales/eu.yml +623 -20
  259. data/config/locales/fr.yml +282 -23
  260. data/config/locales/hu.yml +268 -0
  261. data/config/locales/it.yml +155 -24
  262. data/config/locales/ja.yml +334 -25
  263. data/config/locales/lt.yml +94 -0
  264. data/config/locales/nl.yml +20 -19
  265. data/config/locales/pt-BR.yml +31 -24
  266. data/config/locales/ro-RO.yml +152 -0
  267. data/config/locales/sv.yml +28 -12
  268. data/config/rubocop/disabled.yml +11 -0
  269. data/config/rubocop/faker.yml +480 -0
  270. data/config/rubocop/rails.yml +88 -0
  271. data/config/rubocop/rspec.yml +65 -0
  272. data/config/rubocop/ruby.yml +1210 -0
  273. data/db/migrate/20231006113837_create_decidim_awesome_vote_weights.rb +13 -0
  274. data/db/migrate/20231006113841_create_decidim_awesome_proposal_extra_fields.rb +14 -0
  275. data/db/migrate/20240306175331_rename_editor_images_awesome_config.rb +18 -0
  276. data/db/migrate/20240531224204_add_decidim_awesome_proposal_private_fields.rb +29 -0
  277. data/db/migrate/20240729164227_add_decidim_awesome_proposal_private_fields_date.rb +20 -0
  278. data/db/seeds.rb +4 -4
  279. data/lib/decidim/decidim_awesome/admin_engine.rb +41 -6
  280. data/lib/decidim/decidim_awesome/api/types/localized_custom_fields_type.rb +22 -0
  281. data/lib/decidim/decidim_awesome/api/types/translated_custom_fields_type.rb +51 -0
  282. data/lib/decidim/decidim_awesome/authorizator.rb +34 -0
  283. data/lib/decidim/decidim_awesome/awesome.rb +236 -29
  284. data/lib/decidim/decidim_awesome/awesome_helpers.rb +57 -17
  285. data/lib/decidim/decidim_awesome/checksums.yml +95 -20
  286. data/lib/decidim/decidim_awesome/config.rb +25 -17
  287. data/lib/decidim/decidim_awesome/context_analyzers/request_analyzer.rb +3 -3
  288. data/lib/decidim/decidim_awesome/custom_fields.rb +13 -5
  289. data/lib/decidim/decidim_awesome/engine.rb +250 -19
  290. data/lib/decidim/decidim_awesome/iframe_component/component.rb +4 -4
  291. data/lib/decidim/decidim_awesome/lock.rb +47 -0
  292. data/lib/decidim/decidim_awesome/map_component/component.rb +2 -2
  293. data/lib/decidim/decidim_awesome/menu.rb +201 -0
  294. data/lib/decidim/decidim_awesome/menu_hacker.rb +7 -5
  295. data/{app/middleware/decidim/decidim_awesome → lib/decidim/decidim_awesome/middleware}/current_config.rb +5 -3
  296. data/lib/decidim/decidim_awesome/request_memoizer.rb +16 -0
  297. data/lib/decidim/decidim_awesome/system_checker.rb +6 -2
  298. data/lib/decidim/decidim_awesome/test/factories.rb +31 -9
  299. data/lib/decidim/decidim_awesome/test/initializer.rb +22 -6
  300. data/lib/decidim/decidim_awesome/test/layouts/decidim/_head.html.erb +2 -2
  301. data/lib/decidim/decidim_awesome/test/layouts/decidim/admin/_header.html.erb +2 -2
  302. data/lib/decidim/decidim_awesome/test/shared_examples/action_log_presenter_examples.rb +61 -0
  303. data/lib/decidim/decidim_awesome/test/shared_examples/{box_label_editor.rb → box_label_editor_examples.rb} +22 -22
  304. data/lib/decidim/decidim_awesome/test/shared_examples/config_examples.rb +24 -6
  305. data/lib/decidim/decidim_awesome/test/shared_examples/custom_fields_examples.rb +155 -0
  306. data/lib/decidim/decidim_awesome/test/shared_examples/custom_redirects_contexts.rb +7 -7
  307. data/lib/decidim/decidim_awesome/test/shared_examples/custom_styles_examples.rb +156 -0
  308. data/lib/decidim/decidim_awesome/test/shared_examples/editor_examples.rb +42 -58
  309. data/lib/decidim/decidim_awesome/test/shared_examples/menu_hack_contexts.rb +9 -8
  310. data/lib/decidim/decidim_awesome/test/shared_examples/scoped_admins_examples.rb +40 -29
  311. data/lib/decidim/decidim_awesome/test/shared_examples/summary_examples.rb +129 -38
  312. data/lib/decidim/decidim_awesome/version.rb +2 -2
  313. data/lib/decidim/decidim_awesome/voting_manifest.rb +55 -0
  314. data/lib/decidim/decidim_awesome.rb +1 -3
  315. data/lib/tasks/decidim_awesome_upgrade_tasks.rake +9 -0
  316. data/lib/tasks/decidim_awesome_webpacker_tasks.rake +2 -0
  317. data/package.json +54 -0
  318. metadata +192 -86
  319. data/app/forms/decidim/decidim_awesome/proposals/proposal_wizard_create_step_form_override.rb +0 -38
  320. data/app/helpers/decidim/decidim_awesome/amendments_helper_override.rb +0 -48
  321. data/app/helpers/decidim/decidim_awesome/proposals/application_helper_override.rb +0 -78
  322. data/app/jobs/decidim/decidim_awesome/migrate_legacy_images_job.rb +0 -106
  323. data/app/packs/entrypoints/decidim_admin_decidim_awesome_custom_fields.js +0 -2
  324. data/app/packs/entrypoints/decidim_decidim_awesome_admin_form_exit_warn.js +0 -1
  325. data/app/packs/images/decidim/decidim_awesome/platoniq-logo.png +0 -0
  326. data/app/packs/src/decidim/decidim_awesome/admin/constraints.js +0 -55
  327. data/app/packs/src/decidim/decidim_awesome/editors/editor.js +0 -190
  328. data/app/packs/src/decidim/decidim_awesome/editors/tabs_focus.js +0 -22
  329. data/app/packs/src/vendor/image-resize.min.js +0 -1
  330. data/app/packs/src/vendor/image-upload.min.js +0 -6
  331. data/app/packs/src/vendor/leaflet.featuregroup.subgroup.js +0 -184
  332. data/app/packs/stylesheets/decidim/decidim_awesome/editors/markdown_editor.scss +0 -19
  333. data/app/packs/stylesheets/decidim/decidim_awesome/editors/quill_editor.scss +0 -58
  334. data/app/packs/stylesheets/vendor/select2-foundation-theme.scss +0 -348
  335. data/app/uploaders/decidim/cw/decidim_awesome/image_uploader.rb +0 -26
  336. data/app/views/decidim/decidim_awesome/admin/config/_form_styles.html.erb +0 -26
  337. data/app/views/decidim/decidim_awesome/admin/config/_modal.html.erb +0 -11
  338. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +0 -101
  339. data/app/views/decidim/proposals/collaborative_drafts/_edit_form_fields.html.erb +0 -83
  340. data/app/views/decidim/proposals/collaborative_drafts/show.html.erb +0 -1
  341. data/app/views/layouts/decidim/admin/_header.html.erb +0 -5
  342. data/app/views/layouts/decidim/admin/decidim_awesome.html.erb +0 -75
  343. data/app/views/v0.25/decidim/proposals/collaborative_drafts/_show.html.erb +0 -128
  344. data/app/views/v0.25/layouts/decidim/_head.html.erb +0 -41
  345. data/app/views/v0.25/layouts/decidim/admin/_header.html.erb +0 -11
  346. data/app/views/v0.26/decidim/proposals/collaborative_drafts/_show.html.erb +0 -128
  347. data/app/views/v0.26/layouts/decidim/_head.html.erb +0 -45
  348. data/app/views/v0.26/layouts/decidim/admin/_header.html.erb +0 -11
  349. data/lib/decidim/decidim_awesome/content_parsers/editor_images_parser.rb +0 -39
  350. data/lib/tasks/decidim_awesome_active_storage_migrations_tasks.rake +0 -37
  351. /data/app/models/{decidim → concerns/decidim}/decidim_awesome/user_override.rb +0 -0
@@ -2,10 +2,10 @@ fr:
2
2
  activemodel:
3
3
  attributes:
4
4
  config:
5
- allow_images_in_full_editor: Autoriser les images dans l'éditeur HTML complet
6
- allow_images_in_markdown_editor: Autoriser les images dans l'éditeur de markdown
5
+ additional_proposal_sortings: Activer les options de tri supplémentaires
6
+ allow_images_in_editors: Autoriser les images dans l'éditeur HTML
7
7
  allow_images_in_proposals: Autoriser les images dans l'éditeur de propositions
8
- allow_images_in_small_editor: Autoriser les images dans l'éditeur HTML simple
8
+ allow_videos_in_editors: Autoriser les vidéos dans l'éditeur HTML
9
9
  auto_save_forms: Sauvegarde automatique des formulaires dans le stockage local du navigateur
10
10
  intergram_auto_no_response: Un message qui est envoyé une minute après que l'utilisateur envoie son premier message et qu'aucune réponse n'a été reçue
11
11
  intergram_auto_response: Un message qui est envoyé immédiatement après que l'utilisateur envoie son premier message
@@ -18,9 +18,19 @@ fr:
18
18
  intergram_title_open: Titre de la conversation ouverte
19
19
  intergram_use_floating_button: Si coché, la conversation fermée est toujours un bouton au lieu d'un texte
20
20
  proposal_custom_fields: Champs personnalisés %{id}
21
+ proposal_private_custom_fields: Champs privés personnalisés %{id}
22
+ scoped_admin_styles: Style personnalisés %{id}
21
23
  scoped_admins: Groupe d'administrateurs restreints %{id}
22
24
  scoped_styles: Style personnalisés %{id}
23
- use_markdown_editor: Utiliser un éditeur Markdown au lieu de l'éditeur HTML
25
+ user_timezone: Autoriser les utilisateurs à définir leur fuseau horaire dans leur profil
26
+ validate_body_max_caps_percent: Pourcentage maximum autorisé de lettres majuscules pour la description
27
+ validate_body_max_marks_together: Nombre maximum de caractères spéciaux autorisés dans le corps
28
+ validate_body_min_length: Nombre de caractères minimum pour le corps
29
+ validate_body_start_with_caps: Forcer le corps à commencer par une lettre majuscule
30
+ validate_title_max_caps_percent: Pourcentage maximum autorisé de lettres majuscules pour le titre
31
+ validate_title_max_marks_together: Nombre maximum de caractères spéciaux consécutifs dans le titre
32
+ validate_title_min_length: Nombre de caractères minimum pour le titre
33
+ validate_title_start_with_caps: Forcer le titre à commencer par une lettre majuscule
24
34
  constraint:
25
35
  component_id: ou spécifiquement dans
26
36
  component_manifest: Uniquement dans les composants de type
@@ -38,11 +48,29 @@ fr:
38
48
  target: Ouvrir dans
39
49
  url: URL
40
50
  visibility: Visibilité
41
- proposal:
42
- proposal_custom_fields: Champs personnalisés
51
+ user:
52
+ user_time_zone: Fuseau horaire personnel
43
53
  decidim:
44
54
  admin:
55
+ actions:
56
+ manage: Gérer
57
+ filters:
58
+ admin_accountability:
59
+ admin_role_type:
60
+ label: Type de rôle
61
+ participatory_space_type_eq:
62
+ label: Type d'espace participatif
63
+ role:
64
+ label: Rôle
65
+ role_type_eq:
66
+ label: Type de rôle
67
+ label:
68
+ search_field_end_date: 'Jusqu''à:'
69
+ search_field_start_date: 'De:'
70
+ search_placeholder:
71
+ user_name_or_user_email_cont: Recherche par nom d'utilisateur ou email
45
72
  menu:
73
+ admin_accountability: Suivi administrateur
46
74
  decidim_awesome: Decidim awesome
47
75
  components:
48
76
  awesome_iframe:
@@ -52,7 +80,6 @@ fr:
52
80
  announcement: Annonce
53
81
  iframe: Code iframe
54
82
  iframe_help: 'Mettez votre code en html: <iframe width="100%" height="700" frameBorder="0" allowFullscreen src="..."></iframe>. Le contenu sera nettoyé à partir d''autres balises HTML. Assurez-vous d''utiliser 100% comme largeur pour remplir l''écran.'
55
- no_margins: Aucune marge entre l'iframe et le reste de la page
56
83
  viewport_width: Limiter la largeur maximale à la fenêtre de l'application
57
84
  step:
58
85
  announcement: Annonce
@@ -70,7 +97,7 @@ fr:
70
97
  map_zoom_help: Ne s'applique que si un centre de carte est défini
71
98
  menu_amendments: Afficher les amendements
72
99
  menu_categories: Afficher le menu de recherche par catégorie
73
- menu_hashtags: Voir le menu de recherche Hasthag
100
+ menu_hashtags: Afficher le menu de recherche des hashtags
74
101
  menu_meetings: Montrer les rencontres
75
102
  menu_merge_components: Fusionner toutes les fonctionnalités du même type dans le menu
76
103
  truncate: Caractères maximum pour les descriptions des popups
@@ -81,8 +108,75 @@ fr:
81
108
  show_not_answered: Afficher les propositions n'ayant pas reçu de réponses
82
109
  show_rejected: Afficher les propositions rejetées
83
110
  show_withdrawn: Afficher les propositions retirées
111
+ proposals:
112
+ settings:
113
+ global:
114
+ awesome_voting_manifest: Types de support
115
+ awesome_voting_manifest_help_html: <strong class="text-alert">Sachez que la modification de ce paramètre au milieu d'une période de vote peut entraîner des résultats inexacts ou inattendus.</strong><br>Notez également que ce paramètre ne peut être modifié que si le composant n'a pas encore de support.
116
+ awesome_voting_manifest_options:
117
+ default: Supports simples (par défaut)
118
+ voting_cards: Voter avec des cartes de couleur
119
+ default_sort_order_options:
120
+ az: A-Z (alphabétique)
121
+ supported_first: Déjà supporté en priorité
122
+ supported_last: A supporter en priorité
123
+ za: Z-A (alphabétique inverse)
124
+ limit_pending_amendments: Ne permettre qu'un seul amendement en attente pour chaque proposition.
125
+ sort_orders_enabled: Types de tri activés
126
+ voting_cards_box_title: Titre pour le boîtier de vote
127
+ voting_cards_box_title_help: La valeur par défaut est "Vote sur cette proposition". Utilisez "-" pour la masquer.
128
+ voting_cards_instructions: Instructions de soutien/aide pour le vote (fenêtre modale révocable)
129
+ voting_cards_instructions_help: La valeur par défaut est "Veuillez lire attentivement les règles électorales pour comprendre comment votre vote sera utilisé par %{organization}"
130
+ voting_cards_show_abstain: Ajouter l'option de s'abstenir
131
+ voting_cards_show_modal_help: Afficher une fenêtre modale d'instructions/d'aide lorsque l'on clique sur le support
132
+ step:
133
+ default_sort_order_options:
134
+ az: A-Z (alphabétique)
135
+ supported_first: Déjà supporté en priorité
136
+ supported_last: A supporter en priorité
137
+ za: Z-A (alphabétique inverse)
84
138
  decidim_awesome:
139
+ account:
140
+ timezone_select:
141
+ time_zone_helper: Utilisez votre fuseau horaire personnel pour afficher les dates dans votre heure locale lorsque vous êtes connecté.
85
142
  admin:
143
+ actions: Actions
144
+ admin_accountability:
145
+ admin_roles:
146
+ admin: Super administrateur
147
+ user_manager: Gestionnaire d'utilisateurs
148
+ created_at: Rôle créé le
149
+ currently_active: Actuellement actif
150
+ deleted_user: Utilisateur supprimé
151
+ email: Email
152
+ exports:
153
+ button: Exporter cette recherche
154
+ export_as: Exporter en tant que %{export_format}
155
+ export_format:
156
+ csv: CSV
157
+ json: JSON
158
+ xlsx: XLSX
159
+ notice: La tâche d'exportation a été mise en file d'attente. Vous recevrez un email quand elle sera réalisée.
160
+ index:
161
+ description: Vous trouverez ici la liste de tous les utilisateurs ayant un rôle dans l'administration d'un espace participatif. Les administrateurs "normaux" ne sont pas listés.
162
+ global_description: Vous trouverez ici la liste de tous les utilisateurs ayant un rôle global dans l'administration de cette organisation. Les administrateurs d'espaces participatifs ne sont pas listés.
163
+ missing_users: 'NOTE : Cette liste peut ne pas inclure les utilisateurs créés/supprimés avant le %{date}. En effet, la "traçabilité des utilisateurs" a été introduite dans Decidim v0.24 et cette installation est probablement plus ancienne.'
164
+ see_global: Lister les administrateurs globaux
165
+ see_spaces: Lister les administrateurs d'espace participatif
166
+ title: Suivi administrateur
167
+ last_login: Date de la dernière connexion
168
+ missing_info: "(informations manquantes)"
169
+ missing_user: Utilisateur introuvable dans la base de données
170
+ name: Nom
171
+ never_logged: Ne s'est jamais connecté
172
+ participatory_space: Espace participatif
173
+ removal_date: Rôle retiré le
174
+ role: Rôle
175
+ roles:
176
+ admin: Administrateur
177
+ collaborator: Collaborateur
178
+ moderator: Modérateur
179
+ valuator: Evaluateur
86
180
  checks:
87
181
  index:
88
182
  admin_head_tags: '"Awesome tags" (balises) inclus dans l''en-tête de l''application d''administration'
@@ -101,7 +195,6 @@ fr:
101
195
  Il semble que cette installation a besoin de migrer <strong>%{total}</strong> des anciennes images vers le nouveau système.<br>
102
196
  Vous pouvez démarrer le processus maintenant et il sera effectué en arrière-plan.
103
197
  start_image_migrations: "\U0001F449 Démarrez le processus de migration maintenant"
104
- title: Compatibilité système
105
198
  config:
106
199
  caution: 'REMARQUE : Cette fonctionnalité modifie fortement certains comportements par défaut qui peuvent conduire à des résultats inattendus. Utilisez-la avec précaution !'
107
200
  constraints:
@@ -130,15 +223,18 @@ fr:
130
223
  error: Erreur lors de la suppression de la boîte CSS! %{error}
131
224
  success: Boîte CSS %{key} supprimée avec succès
132
225
  form:
226
+ additional_proposal_sortings:
227
+ enable_all: Activer toutes les options de tri supplémentaires
228
+ help: Ces options de tri s'ajoutent aux options par défaut. N'oubliez pas que vous pouvez choisir l'ordre par défaut dans les paramètres de la fonctionnalité des propositions.
229
+ title: Personnaliser les options de tri pour la liste des propositions
133
230
  edit_label: Renommer le label
134
231
  errors:
135
232
  incorrect_css: 'CSS dans la boîte #%{key} est invalide'
136
233
  incorrect_json: 'La définition JSON dans la boite #%{key} n''est pas valide'
137
234
  help:
138
- allow_images_in_full_editor: Ceci ajoutera une icône d'ajout d'images dans tous les éditeurs WYSIWYG avec toutes les options activées (icônes).
139
- allow_images_in_markdown_editor: Cela permettra à l'éditeur markdown de télécharger des images par copier, coller ou glisser-déposer.
235
+ allow_images_in_editors: Ceci ajoutera une icône de téléchargement d'images dans tous les éditeurs WYSIWYG
140
236
  allow_images_in_proposals: Cela permettra de télécharger des images dans l'éditeur de propositions, disponible pour n'importe quel utilisateur
141
- allow_images_in_small_editor: Ceci ajoutera une icône d'ajout d'images dans tous les éditeurs WYSIWYG avec seulement les options minimales activées (icônes).
237
+ allow_videos_in_editors: Ceci ajoutera une icône de lien vidéo dans tous les éditeurs WYSIWYG
142
238
  auto_save_forms: Ceci utilisera LocalStorage ( cache navigateur) pour enregistrer automatiquement les données introduites par les utilisateurs dans les enquêtes et autres formulaires pendant qu'ils le remplissent. Les données seront restaurées lors d'une prochaine visite avec le même navigateur au cas où le formulaire ne serait pas soumis. Si le formulaire est soumis, les données seront supprimées. Si les utilisateurs suppriment leurs données LocalStorage ne seront pas non plus restaurées.
143
239
  drag_and_drop_supported: Lorsque vous ajoutez des images, le glisser-déposer est pris en charge. Les images seront envoyées sur le serveur et insérées en tant que ressources externes (il n'utilise pas l'encodage en base64).
144
240
  intergram_about: Intergram utilise la messagerie Telegram pour gérer un widget de chat en direct intégré dans le bas de la page.
@@ -147,29 +243,69 @@ fr:
147
243
  proposal_custom_fields: Créer des champs personnalisés pour la création de proposition qui s'appliquent uniquement à certaines parties du web public (utilisez les restrictions pour cela)
148
244
  proposal_custom_fields_example: Les données sont stockées dans un objet XML en utilisant des attributs HTML compatibles (dl,dt,dd éléments) en remplaçant le "body" dans une proposition standard.
149
245
  proposal_custom_fields_translations: "Les libellés, le texte d’aide, les espaces réservés et les valeurs par défaut peuvent utiliser les traductions personnalisées de votre application. \nPour cela, au lieu d'utiliser une chaîne de caractères littérale, utilisez la clé i18n (elle doit contenir au moins un point).\nPar exemple :\n- \"activemodel.attributes.proposal.title au lieu de \"Titre\"\n- \"activemodel.attributes.proposition.address\" au lieu de \"Adresse\"\nOu utilisez vos propres clés en combinaison avec d'autres outils pour définir des traductions (par exemple: utiliser le module de personnalisation des termes) :\n- \"myapp.custom_fields.bio\" à la place de \"Biography\""
246
+ proposal_private_custom_fields: Similaire aux champs publics, mais cette information ne sera pas visible publiquement (seuls les administrateurs y auront accès).
247
+ proposal_private_custom_fields_translations: |
248
+ Les champs privés personnalisés sont affichés dans une section distincte avec ce texte d'information :
249
+ %{warning}
250
+ Ce texte peut être personnalisé avec une traduction personnalisée en utilisant la clé:
251
+ %{key}
252
+ scoped_admin_styles: Soyez conscient que cacher des éléments pourrait rendre l'interface administrateur inutilisable. Agissez avec prudence.
253
+ scoped_admin_styles_variables: 'Vous pouvez utiliser les variables CSS suivantes pour les couleurs personnalisées de l''organisation :'
150
254
  scoped_admins: Promouvoir les utilisateurs réguliers en administrateurs qui ne peuvent administrer que certaines parties de la plateforme (utilisez l'éditeur de restrictions pour cela). Notez que les utilisateurs qui ont déjà les permissions d'administration habituelles seront ignorés.
151
255
  scoped_styles: Créer un CSS personnalisé qui s'applique uniquement à certaines parties du site web public (front-end) (utilisez l'éditeur de restrictions pour cela)
152
256
  scoped_styles_variables: 'Vous pouvez utiliser les variables CSS suivantes pour les couleurs personnalisées de l''organisation :'
153
- use_markdown_editor: Cela remplacera l'éditeur Quill WYSIWYG par un éditeur Markdown. Le texte sera affiché en HTML dans les pages publiques (le texte dans la base de données sera sauvegardé en tant que texte markdown)
257
+ user_timezone: Ceci va ajouter un champ de sélection dans le profil de l'utilisateur pour définir son fuseau horaire. Ceci sera utilisé pour afficher les dates et les heures dans l'heure locale de l'utilisateur.
258
+ validate_body_max_caps_percent: Zéro n'autorisera aucune lettre majuscule, 100 forcera à tout écrire en majuscule
259
+ validate_body_max_marks_together: 'Limiter le nombre de points d''interrogation et d''exclamation qui peuvent être écrits ensemble. Par exemple : si c''est 2, alors ''!!!'' ne sera pas autorisé dans le texte'
260
+ validate_body_min_length: Ce nombre peut être zéro, ce qui rendra ce champ non obligatoire
261
+ validate_title_max_caps_percent: Zéro n'autorisera aucune lettre majuscule, 100 forcera à tout écrire en majuscule
262
+ validate_title_max_marks_together: 'Limiter le nombre de points d''interrogation et d''exclamation qui peuvent être écrits ensemble. Par exemple : si c''est 2, alors ''!!!'' ne sera pas autorisé dans le texte'
263
+ validate_title_min_length: Le titre est toujours obligatoire et ce nombre ne peut être égal à zéro
264
+ validators:
265
+ body: Validations d'entrée de l'utilisateur pour le champ "body"
266
+ title: Validations d'entrée de l'utilisateur pour le champ "body"
154
267
  form_proposal_custom_fields:
268
+ delete: Supprimer
155
269
  new: Ajouter une nouvelle boîte de champs personnalisés
156
270
  remove: Supprimer cette boîte de champs personnalisés
157
271
  sure_to_remove: Êtes-vous sûr de vouloir détruire ce champ ?
272
+ form_proposal_private_custom_fields:
273
+ delete: Supprimer
274
+ new: Ajouter une nouvelle section de champs personnalisés
275
+ remove: Supprimer cette boîte de champs personnalisés
276
+ sure_to_remove: Êtes-vous sûr de vouloir supprimer ce champ ?
277
+ form_scoped_admin_styles:
278
+ delete: Supprimer
279
+ new: Ajouter un nouveau bloc CSS "tableau de bord admin"
280
+ remove: Supprimer ce bloc CSS
281
+ sure_to_remove: Êtes-vous sûr de vouloir supprimer ce bloc CSS ?
158
282
  form_scoped_admins:
283
+ delete: Supprimer
159
284
  new: Ajouter un nouveau groupe "Administrateurs de secteur"
160
285
  remove: Supprimer ce groupe "Administrateurs de secteur"
161
286
  sure_to_remove: Êtes-vous sûr de vouloir détruire ce groupe « Administrateurs de secteur »?
162
287
  form_scoped_styles:
163
- new: Ajouter une nouvelle boîte CSS
288
+ delete: Supprimer
289
+ new: Ajouter un nouveau bloc CSS "interface publique"
164
290
  remove: Supprimer cette boîte CSS
165
291
  sure_to_remove: Etes-vous sûr de vouloir supprimer cette boîte CSS ?
166
292
  none: "⛔ Jamais! - Désactive toute autre contrainte"
167
293
  process_groups: Groupes de processus
168
- rich_text_editor_in_public_views: 'NOTE : "Éditeur de texte enrichi pour les participants" est activé, cette option ne s''appliquera pas. Utilisez les hacks de l''éditeur de texte à la place pour activer les images dans les propositions.'
169
294
  show:
170
295
  title: Tweaks pour %{setting}
171
296
  update: Mettre à jour la configuration
172
297
  system: Partout sauf les espaces participatifs
298
+ title:
299
+ admins: Administrateurs de secteur
300
+ editors: Hacks de l'éditeur
301
+ livechat: Chat en direct
302
+ proposal_custom_fields: 'Champs personnalisés de propositions : champs publics'
303
+ proposal_private_custom_fields: 'Champs personnalisés de propositions : champs privés'
304
+ proposals: Hacks pour les propositions
305
+ scoped_admin_styles: 'Styles personnalisés : Tableau de bord admin'
306
+ scoped_styles: 'Styles personnalisés : Interface publique'
307
+ styles: Styles personnalisés
308
+ surveys: Enquêtes et formulaires
173
309
  update:
174
310
  error: Erreur lors de la mise à jour de la configuration ! %{error}
175
311
  success: La configuration a bien été mise à jour
@@ -229,17 +365,52 @@ fr:
229
365
  update:
230
366
  error: Erreur lors de la mise à jour de la redirection! %{error}
231
367
  success: Redirection mise à jour avec succès
368
+ maintenance:
369
+ private_data:
370
+ component: Espace / Fonctionnalité
371
+ confirm_delete: Êtes-vous sûr de vouloir supprimer toutes les données privées pour cette ressource ? Cette action est irréversible.
372
+ delete: Tout supprimer
373
+ destroying_private_data: Les données privées pour %{title} sont sur le point d'être effacées. Veuillez vérifier à nouveau dans quelques minutes.
374
+ done: Terminé
375
+ help_html: |
376
+ Cet outil vous permet de supprimer toutes les données privées d'un espace ou d'une fonctionnalité participatif spécifique. Cette action est irréversible et supprimera toutes les données privées de la base de données.
377
+ <br><br>
378
+ <strong>Qu'est-ce qui est considéré comme des données privées ?</strong>
379
+ <br>
380
+ Les données privées sont toutes les informations qui ne sont pas accessibles au public et qui sont uniquement accessibles aux administrateurs. Cela inclut, pour le moment, les informations des champs personnalisés privés.
381
+ <br><br>
382
+ <strong>Que se passe-t-il lorsque je supprime des données privées ?</strong>
383
+ <br>
384
+ Lorsque vous supprimez des données privées, toutes les informations privées de l'espace ou du composant participatif sélectionné seront définitivement supprimées de la base de données. Un journal de cette action sera stocké dans le système à des fins d'audit.
385
+ <br><br>
386
+ <strong>Qu'advient-il des données publiques ?</strong>
387
+ <br>
388
+ Les données publiques ne seront pas affectées par cette action. Seules les données privées seront supprimées.
389
+ <br><br>
390
+ <strong>Y a-t-il un délai minimum à attendre avant de supprimer des données privées ?</strong>
391
+ <br>
392
+ Oui, vous ne pouvez pas supprimer des données privées si la dernière mise à jour date de moins de %{time_ago}. Vous pouvez modifier cette configuration dans le fichier d'initialisation.
393
+ items_count: Total affecté
394
+ last_date: Dernière mise à jour
395
+ no_data: Aucune donnée privée plus ancienne que %{time_ago}
396
+ not_destroyable: Cette ressource ne peut pas encore être supprimée
397
+ removing: Suppression en cours...
398
+ time_ago: "Il y a %{time}"
232
399
  menu:
233
400
  admins: Administrateurs de secteur
234
- checks: Compatibilité système
235
401
  custom_redirects: Redirections personnalisées
236
402
  editors: Hacks de l'éditeur
237
403
  livechat: Chat en direct
404
+ maintenance:
405
+ checks: Compatibilité système
406
+ maintenance: Maintenance
407
+ private_data: Données privées
238
408
  menu_hacks: Tweaks de menu
239
409
  proposal_custom_fields: Champs de propositions personnalisés
240
410
  proposals: Hacks pour les propositions
241
411
  styles: Styles personnalisés
242
412
  surveys: Enquêtes et formulaires
413
+ verifications: Vérifications
243
414
  menu_hacks:
244
415
  create:
245
416
  error: Erreur lors de la création de l'élément de menu ! %{error}
@@ -260,13 +431,17 @@ fr:
260
431
  hidden: Toujours caché
261
432
  logged: Uniquement visible pour utilisateurs identifiés
262
433
  non_logged: Visible uniquement pour les utilisateurs non connectés
434
+ verified_user: Visible uniquement pour les utilisateurs ayant une autorisation valide
263
435
  index:
264
436
  confirm_destroy: Êtes-vous sûr de vouloir supprimer cette personnalisation ?
265
437
  edit: Modifier
438
+ home_content_block_menu:
439
+ title: Bloc de menu global
440
+ menu:
441
+ title: Menu principal
266
442
  new: Nouvel élément de menu
267
443
  remove: Supprimer l'ajout
268
444
  remove_hack: Supprimer la personnalisation
269
- title: Menu principal
270
445
  new:
271
446
  save: Enregistrer
272
447
  title: Nouvel élément de menu
@@ -274,6 +449,37 @@ fr:
274
449
  error: Erreur lors de la mise à jour de l'élément de menu ! %{error}
275
450
  success: Élément de menu mis à jour avec succès
276
451
  url_exists: La même URL est déjà configurée, veuillez la modifier au lieu de la créer à nouveau.
452
+ officializations:
453
+ authorizations: Autorisations
454
+ verification_modal:
455
+ authorizations_for: Autorisations pour %{user}
456
+ close: Fermer
457
+ proposal_custom_fields:
458
+ menu:
459
+ title: Champs publiques
460
+ private_body: Corps de proposition privé
461
+ private_data_last_remove: Ces données ont été détruites il y a %{time_ago}.
462
+ private_data_last_update: Ces données ont été mises à jour il y a %{time_ago}.
463
+ proposal_private_custom_fields: Champs privés
464
+ remove_private_data: "👉 Vous pouvez le supprimer"
465
+ scoped_admin_styles:
466
+ menu:
467
+ title: Tableau de bord admin
468
+ scoped_styles:
469
+ menu:
470
+ title: Interface publique
471
+ admin_log:
472
+ component:
473
+ destroy_private_data: "%{user_name} a détruit les objets %{count} de données privées pour %{resource_name} dans %{space_name}"
474
+ amendments:
475
+ modal:
476
+ amendment_exists: Un amendement existe déjà
477
+ current_amendment_html: <p>Vous pouvez <a href="%{amendment_link}">accéder à l'amendement actuel ici</a>.</p>
478
+ dismiss: D'accord
479
+ explanation_html: |
480
+ <p>Actuellement, il y a un autre amendement est en cours d'analyse pour cette proposition. Pour en créer un nouveau, vous devez attendre que l'amendement actuel soit accepté ou rejeté.</p>
481
+ <p>Vous pouvez également contacter l'auteur de la présente proposition à l'adresse suivante <a href="%{proposal_link}">en laissant un commentaire</a> et tenter d'accélérer la résolution de l'amendement actuel.</p>
482
+ pending_limit_reached: Désolé, il ne peut y avoir qu'un seul amendement en attente à la fois. Veuillez patienter jusqu'à ce que "%{emendation}"" soit accepté ou rejeté.
277
483
  config:
278
484
  intergram:
279
485
  auto_no_response: Il semble que personne ne soit disponible pour répondre à l'heure actuelle. Dites-nous comment nous pouvons vous contacter, et nous vous contacterons dès que possible.
@@ -302,7 +508,7 @@ fr:
302
508
  text_settings: Paramètres de texte
303
509
  title: Titre
304
510
  truncate: Caractères maximum pour les descriptions des popups
305
- credits: Décidim Awesome %{version} · Fait avec ♥ par Platoniq
511
+ credits: Décidim Awesome %{version} · Fait avec ♥ par %{company}
306
512
  custom_fields:
307
513
  errors:
308
514
  invalid_fields: Le contenu n'a pas pu être analysé mais a été assigné au champ '%{field}'
@@ -319,19 +525,72 @@ fr:
319
525
  (par exemple à la fin de <code>config/initializers/decidim.rb</code>) les lignes suivantes :<br>
320
526
  <br>
321
527
  <pre># Configuration Api
322
- Decidim::Api::Schema.max_complexity = 5000
323
- Decidim::Api::Schema.max_depth = 50</pre>
528
+ Rails.application.config.to_prepare do
529
+ Decidim::Api::Schema.max_complexity = 5000
530
+ Decidim::Api::Schema.max_depth = 50
531
+ end</pre>
324
532
  error:
325
533
  unavailable: La carte n'est pas disponible. Veuillez configurer le géocodage pour activer ce composant.
326
534
  show:
327
535
  view_meeting: Voir la rencontre
328
536
  view_proposal: Voir la proposition
537
+ proposal_private_custom_fields_disclosure: Cette information ne sera pas publiée
538
+ required_authorizations:
539
+ index:
540
+ cancel: Je vais le faire ultérieurement, %{link}.
541
+ granted_title: Vérifications accordées
542
+ missing_title: Pas encore vérifié
543
+ resume_title: Vérifications en attente
544
+ title: Vérifiez votre identité
545
+ validators:
546
+ too_much_caps: Utilise trop de majuscule (plus de %{percent} du texte)
547
+ voting:
548
+ voting_cards:
549
+ abstained: "✔ Abstenu.e"
550
+ change_vote: Modifier mon vote
551
+ default_box_title: Votez sur la proposition
552
+ default_instructions_html: "<p>Veuillez lire attentivement les règles électorales pour comprendre comment votre vote sera utilisé par %{organization}\"</p>"
553
+ modal:
554
+ cancel: Annuler
555
+ message: Votre vote sera considéré comme définitif le %{date}. Vous pouvez le modifier jusque-là
556
+ proceed: Procéder
557
+ skip: Cochez cette case pour ignorer cette fenêtre à l'avenir
558
+ vote_button: Cliquez pour voter
559
+ voted: Voté.e
560
+ voting_for: Mon vote sur "%{proposal}" est "%{type}"
561
+ weights:
562
+ weight_0: Abstention
563
+ weight_0_short: 'A:'
564
+ weight_1: Rouge
565
+ weight_1_short: 'R:'
566
+ weight_2: Jaune
567
+ weight_2_short: 'J:'
568
+ weight_3: Verte
569
+ weight_3_short: 'V:'
570
+ meetings:
571
+ meetings_map:
572
+ view_meeting: Voir la rencontre
573
+ proposals:
574
+ admin:
575
+ exports:
576
+ awesome_private_proposals: Les propositions avec des données privées
577
+ proposals:
578
+ orders:
579
+ az: A-Z (alphabétique)
580
+ supported_first: Déjà supporté en priorité
581
+ supported_last: A supporter en priorité
582
+ za: Z-A (alphabétique inverse)
583
+ proposal:
584
+ view_proposal: Voir la proposition
329
585
  layouts:
330
586
  decidim:
331
- admin:
332
- decidim_awesome:
333
- title: Tweaks Decidim
334
587
  decidim_awesome:
588
+ admin:
589
+ maintenance:
590
+ title: 'Outils de maintenance: %{title}'
591
+ titles:
592
+ checks: Vérifications de compatibilité système
593
+ private_data: Nettoyage des données privées
335
594
  awesome_config:
336
595
  amendments: Amendements
337
596
  autosaved_error: LocalStorage n'est pas pris en charge dans votre navigateur, le formulaire ne peut pas être enregistré automatiquement.