decidim-core 0.26.9 → 0.27.0.rc1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of decidim-core might be problematic. Click here for more details.

Files changed (643) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/app/cells/decidim/amendable/announcement_cell.rb +4 -9
  4. data/app/cells/decidim/announcement_cell.rb +2 -2
  5. data/app/cells/decidim/author_cell.rb +1 -1
  6. data/app/cells/decidim/card_m_cell.rb +1 -1
  7. data/app/cells/decidim/collapsible_list/show.erb +1 -1
  8. data/app/cells/decidim/content_blocks/cta/show.erb +1 -1
  9. data/app/cells/decidim/content_blocks/cta_cell.rb +1 -1
  10. data/app/cells/decidim/content_blocks/footer_sub_hero/show.erb +1 -1
  11. data/app/cells/decidim/content_blocks/hero/show.erb +2 -2
  12. data/app/cells/decidim/content_blocks/highlighted_content_banner/show.erb +5 -5
  13. data/app/cells/decidim/content_blocks/highlighted_elements_cell.rb +1 -1
  14. data/app/cells/decidim/content_blocks/how_to_participate/show.erb +1 -1
  15. data/app/cells/decidim/content_blocks/last_activity/show.erb +1 -1
  16. data/app/cells/decidim/content_blocks/last_activity_cell.rb +3 -3
  17. data/app/cells/decidim/content_blocks/stats_cell.rb +4 -5
  18. data/app/cells/decidim/content_blocks/sub_hero/show.erb +1 -1
  19. data/app/cells/decidim/content_blocks/sub_hero_cell.rb +1 -1
  20. data/app/cells/decidim/data_consent/category.erb +64 -0
  21. data/app/cells/decidim/data_consent/dialog.erb +29 -0
  22. data/app/cells/decidim/data_consent/modal.erb +39 -0
  23. data/app/cells/decidim/data_consent/show.erb +3 -0
  24. data/app/cells/decidim/data_consent_cell.rb +21 -0
  25. data/app/cells/decidim/follow_button_cell.rb +5 -7
  26. data/app/cells/decidim/newsletter_templates/base_cell.rb +0 -8
  27. data/app/cells/decidim/newsletter_templates/basic_only_text/show.erb +4 -4
  28. data/app/cells/decidim/newsletter_templates/image_text_cta/show.erb +4 -4
  29. data/app/cells/decidim/profile_sidebar_cell.rb +1 -1
  30. data/app/cells/decidim/search_results_cell.rb +1 -1
  31. data/app/cells/decidim/tos_page/refuse_btn_modal.erb +1 -1
  32. data/app/cells/decidim/upload_modal/files.erb +52 -0
  33. data/app/cells/decidim/upload_modal/modal.erb +49 -0
  34. data/app/cells/decidim/upload_modal/show.erb +3 -0
  35. data/app/cells/decidim/upload_modal_cell.rb +205 -0
  36. data/app/cells/decidim/user_conversation/reply.erb +1 -1
  37. data/app/cells/decidim/user_conversations/add_conversation_users.erb +5 -3
  38. data/app/cells/decidim/version_cell.rb +3 -14
  39. data/app/cells/decidim/versions_list_cell.rb +3 -14
  40. data/app/cells/decidim/versions_list_item_cell.rb +2 -13
  41. data/app/commands/decidim/accept_group_invitation.rb +1 -1
  42. data/app/commands/decidim/accept_user_group_join_request.rb +1 -1
  43. data/app/commands/decidim/amendable/accept.rb +1 -1
  44. data/app/commands/decidim/amendable/create_draft.rb +1 -1
  45. data/app/commands/decidim/amendable/destroy_draft.rb +1 -1
  46. data/app/commands/decidim/amendable/promote.rb +1 -1
  47. data/app/commands/decidim/amendable/publish_draft.rb +1 -1
  48. data/app/commands/decidim/amendable/reject.rb +1 -1
  49. data/app/commands/decidim/amendable/update_draft.rb +1 -1
  50. data/app/commands/decidim/amendable/withdraw.rb +1 -1
  51. data/app/commands/decidim/attachment_methods.rb +3 -2
  52. data/app/commands/decidim/create_editor_image.rb +1 -1
  53. data/app/commands/decidim/create_follow.rb +1 -1
  54. data/app/commands/decidim/create_omniauth_registration.rb +2 -3
  55. data/app/commands/decidim/create_registration.rb +1 -2
  56. data/app/commands/decidim/create_report.rb +1 -1
  57. data/app/commands/decidim/create_user_group.rb +2 -2
  58. data/app/commands/decidim/create_user_report.rb +5 -3
  59. data/app/commands/decidim/delete_follow.rb +1 -1
  60. data/app/commands/decidim/demote_membership.rb +1 -1
  61. data/app/commands/decidim/destroy_account.rb +1 -1
  62. data/app/commands/decidim/endorse_resource.rb +1 -3
  63. data/app/commands/decidim/gallery_methods.rb +45 -10
  64. data/app/commands/decidim/invite_user.rb +1 -3
  65. data/app/commands/decidim/invite_user_again.rb +1 -1
  66. data/app/commands/decidim/invite_user_to_group.rb +1 -1
  67. data/app/commands/decidim/join_user_group.rb +1 -1
  68. data/app/commands/decidim/leave_user_group.rb +8 -2
  69. data/app/commands/decidim/messaging/reply_to_conversation.rb +2 -2
  70. data/app/commands/decidim/messaging/start_conversation.rb +2 -2
  71. data/app/commands/decidim/multiple_attachments_methods.rb +44 -5
  72. data/app/commands/decidim/promote_membership.rb +1 -1
  73. data/app/commands/decidim/reject_group_invitation.rb +1 -1
  74. data/app/commands/decidim/reject_user_group_join_request.rb +1 -1
  75. data/app/commands/decidim/remove_user_from_group.rb +1 -1
  76. data/app/commands/decidim/resend_confirmation_instructions.rb +18 -0
  77. data/app/commands/decidim/search.rb +10 -9
  78. data/app/commands/decidim/unendorse_resource.rb +2 -2
  79. data/app/commands/decidim/unsubscribe_settings.rb +1 -1
  80. data/app/commands/decidim/update_account.rb +2 -2
  81. data/app/commands/decidim/update_notifications_settings.rb +3 -2
  82. data/app/commands/decidim/update_password.rb +31 -0
  83. data/app/commands/decidim/update_user_group.rb +2 -2
  84. data/app/commands/decidim/update_user_interests.rb +1 -1
  85. data/app/commands/decidim/validate_upload.rb +15 -0
  86. data/app/controllers/concerns/decidim/devise_controllers.rb +0 -1
  87. data/app/controllers/concerns/decidim/filter_resource.rb +23 -24
  88. data/app/controllers/concerns/decidim/force_authentication.rb +1 -2
  89. data/app/controllers/concerns/decidim/http_caching_disabler.rb +1 -1
  90. data/app/controllers/concerns/decidim/needs_password_change.rb +43 -0
  91. data/app/controllers/concerns/decidim/needs_tos_accepted.rb +3 -3
  92. data/app/controllers/concerns/decidim/orderable.rb +1 -1
  93. data/app/controllers/concerns/decidim/participatory_space_context.rb +2 -2
  94. data/app/controllers/concerns/decidim/resource_versions_concern.rb +0 -4
  95. data/app/controllers/decidim/account_controller.rb +45 -0
  96. data/app/controllers/decidim/application_controller.rb +1 -1
  97. data/app/controllers/decidim/authorization_modals_controller.rb +1 -1
  98. data/app/controllers/decidim/devise/invitations_controller.rb +4 -9
  99. data/app/controllers/decidim/devise/passwords_controller.rb +33 -0
  100. data/app/controllers/decidim/devise/registrations_controller.rb +3 -5
  101. data/app/controllers/decidim/devise/sessions_controller.rb +2 -0
  102. data/app/controllers/decidim/{data_portability_controller.rb → download_your_data_controller.rb} +8 -8
  103. data/app/controllers/decidim/groups_controller.rb +5 -5
  104. data/app/controllers/decidim/last_activities_controller.rb +7 -9
  105. data/app/controllers/decidim/links_controller.rb +11 -10
  106. data/app/controllers/decidim/manifests_controller.rb +11 -0
  107. data/app/controllers/decidim/newsletters_controller.rb +1 -1
  108. data/app/controllers/decidim/notifications_subscriptions_controller.rb +16 -0
  109. data/app/controllers/decidim/offline_controller.rb +7 -0
  110. data/app/controllers/decidim/profiles_controller.rb +2 -2
  111. data/app/controllers/decidim/searches_controller.rb +4 -3
  112. data/app/controllers/decidim/short_links_controller.rb +35 -0
  113. data/app/controllers/decidim/upload_validations_controller.rb +44 -0
  114. data/app/controllers/decidim/user_activities_controller.rb +32 -16
  115. data/app/controllers/decidim/user_interests_controller.rb +0 -2
  116. data/app/controllers/decidim/user_timeline_controller.rb +7 -9
  117. data/app/events/decidim/change_nickname_event.rb +21 -0
  118. data/app/events/decidim/resource_endorsed_event.rb +1 -2
  119. data/app/forms/decidim/account_form.rb +4 -4
  120. data/app/forms/decidim/amendable/form.rb +1 -2
  121. data/app/forms/decidim/form.rb +1 -1
  122. data/app/forms/decidim/messaging/conversation_form.rb +1 -1
  123. data/app/forms/decidim/notifications_settings_form.rb +16 -2
  124. data/app/forms/decidim/password_form.rb +10 -0
  125. data/app/forms/decidim/registration_form.rb +3 -3
  126. data/app/forms/decidim/upload_validation_form.rb +54 -0
  127. data/app/forms/decidim/user_group_form.rb +1 -1
  128. data/app/forms/decidim/user_interest_scope_form.rb +1 -1
  129. data/app/forms/decidim/user_interests_form.rb +1 -1
  130. data/app/forms/translatable_presence_validator.rb +2 -2
  131. data/app/forms/url_validator.rb +1 -1
  132. data/app/helpers/decidim/application_helper.rb +2 -2
  133. data/app/helpers/decidim/attachments_helper.rb +1 -1
  134. data/app/helpers/decidim/cells_helper.rb +0 -1
  135. data/app/helpers/decidim/cells_paginate_helper.rb +1 -1
  136. data/app/helpers/decidim/datalist_select_helper.rb +40 -0
  137. data/app/helpers/decidim/decidim_form_helper.rb +1 -1
  138. data/app/helpers/decidim/external_domain_helper.rb +3 -14
  139. data/app/helpers/decidim/filters_helper.rb +1 -5
  140. data/app/helpers/decidim/followable_helper.rb +1 -1
  141. data/app/helpers/decidim/icon_helper.rb +4 -4
  142. data/app/helpers/decidim/layout_helper.rb +19 -16
  143. data/app/helpers/decidim/map_helper.rb +12 -8
  144. data/app/helpers/decidim/meta_tags_helper.rb +0 -2
  145. data/app/helpers/decidim/newsletters_helper.rb +0 -1
  146. data/app/helpers/decidim/notifications_settings_helper.rb +15 -0
  147. data/app/helpers/decidim/passwords_helper.rb +41 -0
  148. data/app/helpers/decidim/resource_helper.rb +0 -2
  149. data/app/helpers/decidim/sanitize_helper.rb +6 -15
  150. data/app/helpers/decidim/searches_helper.rb +6 -6
  151. data/app/helpers/decidim/short_link_helper.rb +28 -0
  152. data/app/helpers/decidim/translations_helper.rb +2 -2
  153. data/app/jobs/decidim/{data_portability_export_job.rb → download_your_data_export_job.rb} +5 -8
  154. data/app/jobs/decidim/email_notifications_digest_generator_job.rb +21 -0
  155. data/app/jobs/decidim/notification_generator_for_recipient_job.rb +5 -3
  156. data/app/jobs/decidim/open_data_job.rb +0 -2
  157. data/app/jobs/decidim/reminder_generator_job.rb +12 -0
  158. data/app/jobs/decidim/resend_confirmation_instructions_job.rb +11 -0
  159. data/app/jobs/decidim/user_report_job.rb +2 -2
  160. data/app/mailers/concerns/decidim/multitenant_asset_host.rb +11 -3
  161. data/app/mailers/decidim/application_mailer.rb +1 -1
  162. data/app/mailers/decidim/block_user_mailer.rb +8 -7
  163. data/app/mailers/decidim/export_mailer.rb +2 -2
  164. data/app/mailers/decidim/newsletter_mailer.rb +5 -12
  165. data/app/mailers/decidim/newsletters_opt_in_mailer.rb +7 -5
  166. data/app/mailers/decidim/notification_mailer.rb +0 -1
  167. data/app/mailers/decidim/notifications_digest_mailer.rb +23 -0
  168. data/app/mailers/decidim/user_report_mailer.rb +10 -11
  169. data/app/models/decidim/action_log.rb +95 -11
  170. data/app/models/decidim/amendment.rb +0 -1
  171. data/app/models/decidim/area.rb +1 -2
  172. data/app/models/decidim/area_type.rb +5 -0
  173. data/app/models/decidim/attachment.rb +6 -0
  174. data/app/models/decidim/attachment_collection.rb +5 -0
  175. data/app/models/decidim/category.rb +9 -4
  176. data/app/models/decidim/coauthorship.rb +0 -2
  177. data/app/models/decidim/contextual_help_section.rb +5 -1
  178. data/app/models/decidim/follow.rb +2 -2
  179. data/app/models/decidim/gamification/badge_score.rb +0 -1
  180. data/app/models/decidim/identity.rb +2 -2
  181. data/app/models/decidim/messaging/conversation.rb +4 -4
  182. data/app/models/decidim/messaging/message.rb +1 -2
  183. data/app/models/decidim/messaging/participation.rb +0 -2
  184. data/app/models/decidim/messaging/receipt.rb +0 -2
  185. data/app/models/decidim/newsletter.rb +0 -28
  186. data/app/models/decidim/notification.rb +5 -2
  187. data/app/models/decidim/oauth_application.rb +12 -1
  188. data/app/models/decidim/organization.rb +7 -13
  189. data/app/models/decidim/participatory_space_private_user.rb +4 -2
  190. data/app/models/decidim/permission_action.rb +1 -0
  191. data/app/models/decidim/reminder.rb +10 -0
  192. data/app/models/decidim/reminder_delivery.rb +7 -0
  193. data/app/models/decidim/reminder_record.rb +29 -0
  194. data/app/models/decidim/report.rb +2 -2
  195. data/app/models/decidim/scope.rb +3 -4
  196. data/app/models/decidim/scope_type.rb +1 -24
  197. data/app/models/decidim/share_token.rb +0 -2
  198. data/app/models/decidim/short_link.rb +162 -0
  199. data/app/models/decidim/user.rb +35 -13
  200. data/app/models/decidim/user_base_entity.rb +1 -4
  201. data/app/models/decidim/user_block.rb +2 -2
  202. data/app/models/decidim/user_group.rb +4 -4
  203. data/app/models/decidim/user_moderation.rb +0 -2
  204. data/app/models/decidim/user_report.rb +2 -2
  205. data/app/packs/entrypoints/decidim_core.js +2 -2
  206. data/app/packs/entrypoints/decidim_sw.js +1 -0
  207. data/app/packs/images/decidim/gamification/badges/decidim_gamification_badges_invitations.svg +1 -0
  208. data/app/packs/src/decidim/autocomplete.js +298 -0
  209. data/app/packs/src/decidim/cookie_consent/consent_manager.js +133 -0
  210. data/app/packs/src/decidim/cookie_consent/cookie_consent.js +103 -0
  211. data/app/packs/src/decidim/datalist_select.js +36 -0
  212. data/app/packs/src/decidim/direct_uploads/upload_field.js +117 -0
  213. data/app/packs/src/decidim/direct_uploads/upload_modal.js +264 -0
  214. data/app/packs/src/decidim/direct_uploads/upload_utility.js +49 -0
  215. data/app/packs/src/decidim/direct_uploads/uploader.js +89 -0
  216. data/app/packs/src/decidim/editor/linebreak_module.js +8 -0
  217. data/app/packs/src/decidim/editor.js +33 -70
  218. data/app/packs/src/decidim/external_domain_warning.js +1 -1
  219. data/app/packs/src/decidim/external_link.js +14 -3
  220. data/app/packs/src/decidim/external_link.test.js +64 -0
  221. data/app/packs/src/decidim/form_filter.component.test.js +5 -148
  222. data/app/packs/src/decidim/form_filter.js +4 -26
  223. data/app/packs/src/decidim/geocoding/attach_input.js +1 -4
  224. data/app/packs/src/decidim/geocoding/provider/here.js +21 -17
  225. data/app/packs/src/decidim/geocoding/provider/photon.js +1 -1
  226. data/app/packs/src/decidim/geocoding.js +10 -35
  227. data/app/packs/src/decidim/identity_selector_dialog.js +1 -1
  228. data/app/packs/src/decidim/impersonation.js +3 -3
  229. data/app/packs/src/decidim/input_character_counter.js +177 -7
  230. data/app/packs/src/decidim/input_multiple_mentions.js +87 -187
  231. data/app/packs/src/decidim/map/controller/drag_marker.js +2 -0
  232. data/app/packs/src/decidim/map/controller/markers.js +1 -0
  233. data/app/packs/src/decidim/map/controller/static.js +1 -0
  234. data/app/packs/src/decidim/map/controller.js +2 -0
  235. data/app/packs/src/decidim/map/factory.js +1 -4
  236. data/app/packs/src/decidim/map/icon.js +3 -1
  237. data/app/packs/src/decidim/map/legacy.js +1 -0
  238. data/app/packs/src/decidim/map/provider/default.js +0 -2
  239. data/app/packs/src/decidim/map/provider/here.js +1 -2
  240. data/app/packs/src/decidim/map/svg-icon.js +248 -0
  241. data/app/packs/src/decidim/security/selfxss_warning.js +5 -1
  242. data/app/packs/src/decidim/session_timeouter.js +15 -15
  243. data/app/packs/src/decidim/sw/a2hs.js +28 -0
  244. data/app/packs/src/decidim/sw/index.js +3 -0
  245. data/app/packs/src/decidim/sw/loader.js +18 -0
  246. data/app/packs/src/decidim/sw/push-permissions.js +87 -0
  247. data/app/packs/src/decidim/sw/sw.js +80 -0
  248. data/app/packs/src/decidim/vizzs/areachart.js +33 -28
  249. data/app/packs/src/decidim/vizzs/linechart.js +23 -18
  250. data/app/packs/src/decidim/vizzs/rowchart.js +15 -11
  251. data/app/packs/stylesheets/decidim/_editor.scss +0 -129
  252. data/app/packs/stylesheets/decidim/email.scss +66 -7
  253. data/app/packs/stylesheets/decidim/extras/_quill.scss +6 -0
  254. data/app/packs/stylesheets/decidim/layouts/_user.scss +8 -0
  255. data/app/packs/stylesheets/decidim/modules/_autocomplete.scss +99 -0
  256. data/app/packs/stylesheets/decidim/modules/_buttons.scss +6 -10
  257. data/app/packs/stylesheets/decidim/modules/_cards.scss +1 -3
  258. data/app/packs/stylesheets/decidim/modules/_comments.scss +0 -26
  259. data/app/packs/stylesheets/decidim/modules/_cookie-consent.scss +115 -0
  260. data/app/packs/stylesheets/decidim/modules/_footer.scss +4 -0
  261. data/app/packs/stylesheets/decidim/modules/_forms.scss +0 -5
  262. data/app/packs/stylesheets/decidim/modules/_input-multiple-mentions.scss +29 -2
  263. data/app/packs/stylesheets/decidim/modules/_modules.scss +3 -1
  264. data/app/packs/stylesheets/decidim/modules/_reveal.scss +15 -0
  265. data/app/packs/stylesheets/decidim/modules/_upload_modal.scss +143 -0
  266. data/app/packs/stylesheets/decidim/utils/_fontface.scss +3 -0
  267. data/app/packs/stylesheets/decidim/vizzs/_linechart.scss +2 -2
  268. data/app/packs/stylesheets/decidim/vizzs/_rowchart.scss +2 -2
  269. data/app/permissions/decidim/permissions.rb +4 -8
  270. data/app/presenters/decidim/admin_log/area_type_presenter.rb +34 -0
  271. data/app/presenters/decidim/admin_log/attachment_collection_presenter.rb +35 -0
  272. data/app/presenters/decidim/admin_log/attachment_presenter.rb +27 -0
  273. data/app/presenters/decidim/admin_log/category_presenter.rb +36 -0
  274. data/app/presenters/decidim/admin_log/component_presenter.rb +35 -3
  275. data/app/presenters/decidim/admin_log/contextual_help_section_presenter.rb +33 -0
  276. data/app/presenters/decidim/admin_log/organization_presenter.rb +9 -4
  277. data/app/presenters/decidim/admin_log/scope_type_presenter.rb +34 -0
  278. data/app/presenters/decidim/admin_log/user_group_presenter.rb +1 -1
  279. data/app/presenters/decidim/admin_log/user_moderation_presenter.rb +1 -1
  280. data/app/presenters/decidim/home_stats_presenter.rb +8 -13
  281. data/app/presenters/decidim/log/base_presenter.rb +1 -1
  282. data/app/presenters/decidim/menu_item_presenter.rb +1 -1
  283. data/app/presenters/decidim/metric_charts_presenter.rb +7 -1
  284. data/app/presenters/decidim/nil_presenter.rb +3 -1
  285. data/app/presenters/decidim/notification_presenter.rb +1 -1
  286. data/app/presenters/decidim/notification_to_mailer_presenter.rb +39 -0
  287. data/app/presenters/decidim/notifications_digest_presenter.rb +42 -0
  288. data/app/presenters/decidim/official_author_presenter.rb +4 -0
  289. data/app/presenters/decidim/organization_presenter.rb +22 -0
  290. data/app/presenters/decidim/push_notification_presenter.rb +24 -0
  291. data/app/presenters/decidim/stats_presenter.rb +9 -8
  292. data/app/presenters/decidim/user_group_presenter.rb +1 -1
  293. data/app/presenters/decidim/user_presenter.rb +5 -13
  294. data/app/presenters/decidim/validation_errors_presenter.rb +1 -1
  295. data/app/queries/decidim/messaging/user_conversations.rb +1 -1
  296. data/app/queries/decidim/metric_manage.rb +1 -1
  297. data/app/queries/decidim/metrics/users_metric_manage.rb +6 -6
  298. data/app/queries/decidim/own_activities.rb +11 -0
  299. data/app/queries/decidim/participatory_processes_with_user_role.rb +1 -1
  300. data/app/{services/decidim/activity_search.rb → queries/decidim/public_activities.rb} +35 -78
  301. data/app/queries/decidim/public_components.rb +1 -1
  302. data/app/queries/decidim/similar_emendations.rb +1 -1
  303. data/app/queries/decidim/stats_users_count.rb +1 -1
  304. data/app/queries/decidim/user_groups/accepted_memberships.rb +1 -1
  305. data/app/queries/decidim/user_groups/accepted_user_groups.rb +1 -1
  306. data/app/queries/decidim/user_groups/accepted_users.rb +1 -1
  307. data/app/queries/decidim/user_groups/admin_memberships.rb +1 -1
  308. data/app/queries/decidim/user_groups/invited_memberships.rb +1 -1
  309. data/app/queries/decidim/user_groups/manageable_user_groups.rb +1 -1
  310. data/app/queries/decidim/user_groups/member_memberships.rb +1 -1
  311. data/app/scrubbers/decidim/user_input_scrubber.rb +5 -32
  312. data/app/services/decidim/{data_portability_exporter.rb → download_your_data_exporter.rb} +6 -6
  313. data/app/services/decidim/email_notification_generator.rb +2 -2
  314. data/app/services/decidim/engine_resolver.rb +66 -0
  315. data/app/services/decidim/events_manager.rb +1 -1
  316. data/app/services/decidim/iframe_disabler.rb +31 -0
  317. data/app/services/decidim/notification_generator_for_recipient.rb +1 -1
  318. data/app/services/decidim/notifications_digest_sending_decider.rb +18 -0
  319. data/app/services/decidim/notifications_subscriptions_persistor.rb +37 -0
  320. data/app/services/decidim/open_data_exporter.rb +1 -1
  321. data/app/services/decidim/resource_search.rb +17 -164
  322. data/app/services/decidim/send_push_notification.rb +59 -0
  323. data/app/services/decidim/traceability.rb +1 -2
  324. data/app/uploaders/decidim/application_uploader.rb +2 -12
  325. data/app/uploaders/decidim/cw/attachment_uploader.rb +1 -1
  326. data/app/uploaders/decidim/cw/{data_portability_uploader.rb → download_your_data_uploader.rb} +3 -3
  327. data/app/uploaders/decidim/cw/image_uploader.rb +2 -2
  328. data/app/uploaders/decidim/organization_favicon_uploader.rb +3 -2
  329. data/app/validators/etiquette_validator.rb +3 -7
  330. data/app/validators/passthru_validator.rb +29 -21
  331. data/app/validators/password_validator.rb +25 -4
  332. data/app/validators/uploader_image_dimensions_validator.rb +1 -1
  333. data/app/views/decidim/account/_account_notification.js.erb +20 -0
  334. data/app/views/decidim/account/_password_fields.html.erb +2 -2
  335. data/app/views/decidim/account/cancel_email_change.js.erb +6 -0
  336. data/app/views/decidim/account/resend_confirmation_instructions.erb +1 -0
  337. data/app/views/decidim/account/show.html.erb +19 -6
  338. data/app/views/decidim/application/{_attachments.html.erb → _attachments.erb} +2 -2
  339. data/app/views/decidim/application/_collection.html.erb +1 -1
  340. data/app/views/decidim/application/{_documents.html.erb → _documents.erb} +2 -2
  341. data/app/views/decidim/devise/confirmations/new.html.erb +1 -1
  342. data/app/views/decidim/devise/invitations/edit.html.erb +3 -4
  343. data/app/views/decidim/devise/omniauth_registrations/new.html.erb +3 -3
  344. data/app/views/decidim/devise/passwords/edit.html.erb +7 -5
  345. data/app/views/decidim/devise/passwords/new.html.erb +1 -1
  346. data/app/views/decidim/devise/registrations/edit.html.erb +41 -0
  347. data/app/views/decidim/devise/registrations/new.html.erb +5 -5
  348. data/app/views/decidim/devise/sessions/new.html.erb +2 -2
  349. data/app/views/decidim/{data_portability → download_your_data}/show.html.erb +2 -2
  350. data/app/views/decidim/export_mailer/download_your_data_export.html.erb +7 -0
  351. data/app/views/decidim/last_activities/index.html.erb +1 -1
  352. data/app/views/decidim/links/_modal.html.erb +1 -1
  353. data/app/views/decidim/links/new.html.erb +1 -1
  354. data/app/views/decidim/manifests/show.json.erb +31 -0
  355. data/app/views/decidim/messaging/conversations/_add_conversation_users.html.erb +5 -3
  356. data/app/views/decidim/messaging/conversations/_conversation.html.erb +5 -1
  357. data/app/views/decidim/messaging/conversations/_reply.html.erb +1 -1
  358. data/app/views/decidim/messaging/conversations/_start.html.erb +1 -3
  359. data/app/views/decidim/messaging/conversations/create.js.erb +1 -0
  360. data/app/views/decidim/newsletter_mailer/newsletter.html.erb +3 -3
  361. data/app/views/decidim/newsletters/show.html.erb +1 -1
  362. data/app/views/decidim/notification_mailer/event_received.html.erb +1 -1
  363. data/app/views/decidim/notifications_digest_mailer/_email_content.html.erb +11 -0
  364. data/app/views/decidim/notifications_digest_mailer/digest_mail.erb +27 -0
  365. data/app/views/decidim/notifications_settings/show.html.erb +79 -52
  366. data/app/views/decidim/offline/show.html.erb +9 -0
  367. data/app/views/decidim/pages/_standalone.html.erb +1 -1
  368. data/app/views/decidim/pages/_tabbed.html.erb +1 -1
  369. data/app/views/decidim/reported_mailer/hide.html.erb +1 -1
  370. data/app/views/decidim/reported_mailer/report.html.erb +1 -1
  371. data/app/views/decidim/scopes/picker.html.erb +1 -1
  372. data/app/views/decidim/searches/_filters.html.erb +2 -2
  373. data/app/views/decidim/shared/participatory_space_filters/_filters.html.erb +3 -3
  374. data/app/views/decidim/user_interests/show.html.erb +13 -11
  375. data/app/views/decidim/user_report_mailer/notify.html.erb +10 -3
  376. data/app/views/devise/mailer/confirmation_instructions.html.erb +3 -1
  377. data/app/views/layouts/decidim/_application.html.erb +6 -3
  378. data/app/views/layouts/decidim/_cookie_warning.html.erb +8 -8
  379. data/app/views/layouts/decidim/_decidim_javascript.html.erb +12 -0
  380. data/app/views/layouts/decidim/_head.html.erb +4 -2
  381. data/app/views/layouts/decidim/_js_configuration.html.erb +5 -1
  382. data/app/views/layouts/decidim/_mailer_logo.html.erb +2 -2
  383. data/app/views/layouts/decidim/_main_footer.html.erb +1 -0
  384. data/app/views/layouts/decidim/_offline_banner.html.erb +11 -0
  385. data/app/views/layouts/decidim/newsletter_base.html.erb +2 -2
  386. data/app/views/layouts/decidim/widget.html.erb +2 -2
  387. data/config/assets.rb +1 -0
  388. data/config/locales/am-ET.yml +1 -0
  389. data/config/locales/ar.yml +86 -461
  390. data/config/locales/bg.yml +57 -32
  391. data/config/locales/ca.yml +246 -85
  392. data/config/locales/cs.yml +256 -97
  393. data/config/locales/da.yml +1 -3
  394. data/config/locales/de.yml +93 -159
  395. data/config/locales/el.yml +53 -137
  396. data/config/locales/en.yml +220 -59
  397. data/config/locales/eo.yml +8 -13
  398. data/config/locales/es-MX.yml +234 -73
  399. data/config/locales/es-PY.yml +236 -75
  400. data/config/locales/es.yml +244 -83
  401. data/config/locales/et.yml +1 -3
  402. data/config/locales/eu.yml +416 -479
  403. data/config/locales/fi-plain.yml +222 -61
  404. data/config/locales/fi.yml +236 -75
  405. data/config/locales/fr-CA.yml +218 -71
  406. data/config/locales/fr.yml +224 -77
  407. data/config/locales/ga-IE.yml +15 -9
  408. data/config/locales/gl.yml +112 -35
  409. data/config/locales/hr.yml +1 -3
  410. data/config/locales/hu.yml +106 -266
  411. data/config/locales/id-ID.yml +61 -35
  412. data/config/locales/is-IS.yml +12 -23
  413. data/config/locales/it.yml +66 -41
  414. data/config/locales/ja.yml +235 -83
  415. data/config/locales/ko.yml +1 -0
  416. data/config/locales/lb.yml +57 -38
  417. data/config/locales/lt.yml +1 -1788
  418. data/config/locales/lv.yml +55 -28
  419. data/config/locales/mt.yml +1 -0
  420. data/config/locales/nl.yml +81 -39
  421. data/config/locales/no.yml +84 -41
  422. data/config/locales/om-ET.yml +1 -0
  423. data/config/locales/pl.yml +127 -46
  424. data/config/locales/pt-BR.yml +52 -80
  425. data/config/locales/pt.yml +54 -35
  426. data/config/locales/ro-RO.yml +55 -43
  427. data/config/locales/ru.yml +35 -29
  428. data/config/locales/si-LK.yml +1 -0
  429. data/config/locales/sk.yml +62 -45
  430. data/config/locales/sl.yml +6 -1
  431. data/config/locales/so-SO.yml +1 -0
  432. data/config/locales/sr-CS.yml +1 -10
  433. data/config/locales/sv.yml +127 -55
  434. data/config/locales/sw-KE.yml +1 -0
  435. data/config/locales/ti-ER.yml +1 -0
  436. data/config/locales/tr-TR.yml +55 -40
  437. data/config/locales/uk.yml +30 -30
  438. data/config/locales/val-ES.yml +1 -0
  439. data/config/locales/vi.yml +1 -0
  440. data/config/locales/zh-CN.yml +53 -33
  441. data/config/locales/zh-TW.yml +1 -1721
  442. data/config/routes.rb +19 -22
  443. data/db/migrate/20180508111710_add_accepted_tos_version_field_to_users.rb +1 -0
  444. data/db/migrate/20181030090144_destroy_deleted_users_follows.rb +2 -1
  445. data/db/migrate/20181204110723_remove_following_users_count_from_users.rb +2 -11
  446. data/db/migrate/20181214101250_add_notification_types_to_users.rb +1 -6
  447. data/db/migrate/20190412131728_fix_user_names.rb +2 -9
  448. data/db/migrate/20200211173227_add_direct_message_types_to_users.rb +1 -6
  449. data/db/migrate/20210302150803_invalidate_all_sessions_for_deleted_users.rb +3 -10
  450. data/db/migrate/20210310120640_add_followable_counter_cache_to_users.rb +3 -13
  451. data/db/migrate/20210831181634_add_service_name_to_active_storage_blobs.active_storage.rb +22 -0
  452. data/db/migrate/20210831181635_create_active_storage_variant_records.active_storage.rb +14 -0
  453. data/db/migrate/20211208155453_create_decidim_reminders.rb +11 -0
  454. data/db/migrate/20211209121025_create_decidim_reminder_records.rb +11 -0
  455. data/db/migrate/20211209121040_create_decidim_reminder_deliveries.rb +10 -0
  456. data/db/migrate/20220118121921_change_required_description_categories.rb +7 -0
  457. data/db/migrate/20220127113419_add_notification_settings_to_users.rb +7 -0
  458. data/db/migrate/20220203121137_add_notifications_sending_frequency_to_users.rb +7 -0
  459. data/db/migrate/20220215172439_add_digest_sent_at_to_users.rb +7 -0
  460. data/db/migrate/20220323195258_add_index_to_decidim_users_notifications_sending_frequency.rb +7 -0
  461. data/db/migrate/20220427142214_drop_emails_on_notifications_flag_from_user.rb +15 -0
  462. data/db/migrate/20220518094535_add_previous_passwords_to_users.rb +20 -0
  463. data/db/migrate/20220524195530_create_decidim_short_links.rb +23 -0
  464. data/db/seeds.rb +17 -19
  465. data/lib/decidim/acts_as_tree.rb +47 -0
  466. data/lib/decidim/api/input_sorts/component_input_sort.rb +2 -1
  467. data/lib/decidim/api/interfaces/authorable_interface.rb +6 -5
  468. data/lib/decidim/api/types/localized_string_type.rb +0 -9
  469. data/lib/decidim/api/types/translated_field_type.rb +5 -20
  470. data/lib/decidim/asset_router.rb +80 -0
  471. data/lib/decidim/attachment_attributes.rb +8 -8
  472. data/lib/decidim/attribute_object/form.rb +174 -0
  473. data/lib/decidim/attribute_object/model.rb +148 -0
  474. data/lib/decidim/attribute_object/nested_validator.rb +22 -0
  475. data/lib/decidim/attribute_object/type_map.rb +14 -0
  476. data/lib/decidim/attribute_object/type_resolver.rb +91 -0
  477. data/lib/decidim/attribute_object.rb +26 -0
  478. data/lib/decidim/attributes/array.rb +62 -0
  479. data/lib/decidim/attributes/blob.rb +20 -0
  480. data/lib/decidim/attributes/clean_string.rb +12 -6
  481. data/lib/decidim/attributes/hash.rb +36 -0
  482. data/lib/decidim/attributes/integer.rb +17 -0
  483. data/lib/decidim/attributes/localized_date.rb +8 -14
  484. data/lib/decidim/attributes/model.rb +24 -0
  485. data/lib/decidim/attributes/object.rb +28 -0
  486. data/lib/decidim/attributes/symbol.rb +23 -0
  487. data/lib/decidim/attributes/time_with_zone.rb +7 -17
  488. data/lib/decidim/attributes.rb +29 -0
  489. data/lib/decidim/authorable.rb +21 -6
  490. data/lib/decidim/authorization_form_builder.rb +9 -11
  491. data/lib/decidim/carrier_wave_migrator_service.rb +15 -15
  492. data/lib/decidim/coauthorable.rb +22 -4
  493. data/lib/decidim/command.rb +44 -0
  494. data/lib/decidim/common_passwords.rb +1 -1
  495. data/lib/decidim/component_manifest.rb +5 -5
  496. data/lib/decidim/component_validator.rb +2 -2
  497. data/lib/decidim/content_block_manifest.rb +1 -1
  498. data/lib/decidim/content_parsers/hashtag_parser.rb +2 -2
  499. data/lib/decidim/content_parsers/resource_parser.rb +1 -1
  500. data/lib/decidim/content_parsers/user_group_parser.rb +1 -1
  501. data/lib/decidim/content_parsers/user_parser.rb +4 -4
  502. data/lib/decidim/content_renderers/hashtag_renderer.rb +1 -1
  503. data/lib/decidim/content_renderers/link_renderer.rb +2 -2
  504. data/lib/decidim/content_renderers/user_group_renderer.rb +1 -1
  505. data/lib/decidim/content_renderers/user_renderer.rb +1 -1
  506. data/lib/decidim/controller_helpers.rb +41 -0
  507. data/lib/decidim/core/engine.rb +35 -19
  508. data/lib/decidim/core/test/factories.rb +54 -21
  509. data/lib/decidim/core/test/shared_examples/admin_resource_gallery_examples.rb +16 -4
  510. data/lib/decidim/core/test/shared_examples/amendable/amendment_form_examples.rb +1 -1
  511. data/lib/decidim/core/test/shared_examples/authorable_interface_examples.rb +15 -2
  512. data/lib/decidim/core/test/shared_examples/coauthorable_interface_examples.rb +2 -2
  513. data/lib/decidim/core/test/shared_examples/comments_examples.rb +203 -60
  514. data/lib/decidim/core/test/shared_examples/errors.rb +0 -2
  515. data/lib/decidim/core/test/shared_examples/localised_email.rb +1 -1
  516. data/lib/decidim/core/test/shared_examples/logo_email.rb +1 -1
  517. data/lib/decidim/core/test/shared_examples/map_examples.rb +3 -6
  518. data/lib/decidim/core/test/shared_examples/preview_component_with_share_token_examples.rb +0 -6
  519. data/lib/decidim/core/test/shared_examples/resource_search_examples.rb +120 -40
  520. data/lib/decidim/core/test/shared_examples/resourceable.rb +0 -6
  521. data/lib/decidim/core/test/shared_examples/rich_text_editor_examples.rb +3 -7
  522. data/lib/decidim/core/test/shared_examples/searchable_participatory_space_examples.rb +1 -1
  523. data/lib/decidim/core/test/shared_examples/searchable_resources_shared_context.rb +1 -1
  524. data/lib/decidim/core/test/shared_examples/system_endorse_resource_examples.rb +3 -3
  525. data/lib/decidim/core/test/shared_examples/translated_event_examples.rb +2 -2
  526. data/lib/decidim/core/test/shared_examples/with_endorsable_permissions_examples.rb +1 -1
  527. data/lib/decidim/core/test.rb +0 -4
  528. data/lib/decidim/core/version.rb +1 -1
  529. data/lib/decidim/core.rb +106 -55
  530. data/lib/decidim/{data_portability.rb → download_your_data.rb} +3 -3
  531. data/lib/decidim/{data_portability_serializers/data_portability_conversation_serializer.rb → download_your_data_serializers/download_your_data_conversation_serializer.rb} +2 -2
  532. data/lib/decidim/{data_portability_serializers/data_portability_follow_serializer.rb → download_your_data_serializers/download_your_data_follow_serializer.rb} +2 -2
  533. data/lib/decidim/{data_portability_serializers/data_portability_identity_serializer.rb → download_your_data_serializers/download_your_data_identity_serializer.rb} +2 -2
  534. data/lib/decidim/{data_portability_serializers/data_portability_notification_serializer.rb → download_your_data_serializers/download_your_data_notification_serializer.rb} +2 -2
  535. data/lib/decidim/{data_portability_serializers/data_portability_participatory_space_private_user_serializer.rb → download_your_data_serializers/download_your_data_participatory_space_private_user_serializer.rb} +2 -2
  536. data/lib/decidim/{data_portability_serializers/data_portability_report_serializer.rb → download_your_data_serializers/download_your_data_report_serializer.rb} +2 -2
  537. data/lib/decidim/{data_portability_serializers/data_portability_user_group_serializer.rb → download_your_data_serializers/download_your_data_user_group_serializer.rb} +2 -2
  538. data/lib/decidim/{data_portability_serializers/data_portability_user_serializer.rb → download_your_data_serializers/download_your_data_user_serializer.rb} +3 -3
  539. data/lib/decidim/download_your_data_serializers.rb +23 -0
  540. data/lib/decidim/endorsable.rb +1 -1
  541. data/lib/decidim/engine_router.rb +7 -1
  542. data/lib/decidim/env.rb +56 -0
  543. data/lib/decidim/event_recorder.rb +25 -0
  544. data/lib/decidim/events/base_event.rb +10 -14
  545. data/lib/decidim/events/simple_event.rb +6 -5
  546. data/lib/decidim/exporters/export_data.rb +1 -1
  547. data/lib/decidim/exporters/export_manifest.rb +2 -1
  548. data/lib/decidim/exporters.rb +1 -10
  549. data/lib/decidim/file_validator_humanizer.rb +24 -1
  550. data/lib/decidim/filterable_resource.rb +55 -0
  551. data/lib/decidim/fingerprint_calculator.rb +2 -4
  552. data/lib/decidim/form_builder.rb +174 -145
  553. data/lib/decidim/gamification/badge.rb +2 -3
  554. data/lib/decidim/gamification/badge_scorer.rb +1 -0
  555. data/lib/decidim/has_area.rb +27 -0
  556. data/lib/decidim/has_attachments.rb +2 -2
  557. data/lib/decidim/has_category.rb +36 -0
  558. data/lib/decidim/has_resource_permission.rb +2 -0
  559. data/lib/decidim/importers/import_manifest.rb +3 -21
  560. data/lib/decidim/jsonb_attributes.rb +6 -4
  561. data/lib/decidim/manifest_messages.rb +23 -0
  562. data/lib/decidim/map/autocomplete.rb +6 -4
  563. data/lib/decidim/map/frontend.rb +2 -2
  564. data/lib/decidim/map/provider/dynamic_map/here.rb +1 -46
  565. data/lib/decidim/map/provider/geocoding/here.rb +5 -5
  566. data/lib/decidim/map/provider/here.rb +3 -0
  567. data/lib/decidim/map/provider/osm.rb +3 -0
  568. data/lib/decidim/map.rb +4 -4
  569. data/lib/decidim/menu.rb +1 -1
  570. data/lib/decidim/metric_manifest.rb +2 -2
  571. data/lib/decidim/nicknamizable.rb +1 -1
  572. data/lib/decidim/notification_setting_manifest.rb +19 -0
  573. data/lib/decidim/organization_settings.rb +8 -7
  574. data/lib/decidim/participatory_space_context_manifest.rb +2 -2
  575. data/lib/decidim/participatory_space_manifest.rb +2 -2
  576. data/lib/decidim/participatory_space_resourceable.rb +1 -7
  577. data/lib/decidim/processes_file_locally.rb +31 -0
  578. data/lib/decidim/publicable.rb +0 -4
  579. data/lib/decidim/query.rb +84 -0
  580. data/lib/decidim/record_encryptor.rb +29 -8
  581. data/lib/decidim/reminder_manifest.rb +75 -0
  582. data/lib/decidim/reminder_registry.rb +67 -0
  583. data/lib/decidim/resource_manifest.rb +1 -1
  584. data/lib/decidim/resourceable.rb +15 -5
  585. data/lib/decidim/scopable.rb +15 -0
  586. data/lib/decidim/settings_manifest.rb +4 -4
  587. data/lib/decidim/spring.rb +16 -0
  588. data/lib/decidim/translatable_attributes.rb +13 -16
  589. data/lib/decidim/url_option_resolver.rb +50 -0
  590. data/lib/decidim/view_hooks.rb +1 -1
  591. data/lib/decidim/view_model.rb +5 -1
  592. data/lib/decidim/webpacker/thread_safe_compiler.rb +30 -0
  593. data/lib/decidim/webpacker/webpack/custom.js +15 -3
  594. data/lib/decidim/webpacker/webpacker.yml +1 -1
  595. data/lib/decidim/webpacker.rb +2 -0
  596. data/lib/devise/models/decidim_validatable.rb +1 -1
  597. data/lib/tasks/decidim_active_storage_migration_tasks.rake +1 -3
  598. data/lib/tasks/{decidim_data_portability_tasks.rake → decidim_download_your_data_tasks.rake} +9 -9
  599. data/lib/tasks/decidim_mailers_tasks.rake +23 -0
  600. data/lib/tasks/decidim_metrics_tasks.rake +1 -1
  601. data/lib/tasks/decidim_pwa_tasks.rake +18 -0
  602. data/lib/tasks/decidim_reminders_tasks.rake +17 -0
  603. data/lib/tasks/decidim_tasks.rake +6 -1
  604. data/lib/tasks/decidim_webpacker_tasks.rake +1 -1
  605. data/lib/tasks/upgrade/decidim_fix_nickname_uniqueness.rake +51 -0
  606. metadata +186 -105
  607. data/app/controllers/decidim/cookie_policy_controller.rb +0 -24
  608. data/app/helpers/decidim/cookies_helper.rb +0 -11
  609. data/app/packs/src/decidim/editor/clipboard_override.js +0 -147
  610. data/app/packs/src/decidim/editor/clipboard_utilities.js +0 -119
  611. data/app/packs/src/decidim/vizzs/renders.js +0 -9
  612. data/app/packs/src/decidim/vizzs.js +0 -1
  613. data/app/packs/stylesheets/decidim/modules/_cookie-bar.scss +0 -26
  614. data/app/scrubbers/decidim/admin_input_scrubber.rb +0 -27
  615. data/app/services/decidim/home_activity_search.rb +0 -80
  616. data/app/services/decidim/participatory_space_search.rb +0 -54
  617. data/app/views/decidim/cookie_policy/accept.js.erb +0 -3
  618. data/app/views/decidim/export_mailer/data_portability_export.html.erb +0 -7
  619. data/app/views/decidim/links/_invalid_url_modal.html.erb +0 -17
  620. data/app/views/decidim/links/invalid_url.js.erb +0 -24
  621. data/config/environment.rb +0 -3
  622. data/config/locales/fa-IR.yml +0 -1
  623. data/config/locales/gn-PY.yml +0 -4
  624. data/config/locales/ka-GE.yml +0 -4
  625. data/config/locales/kaa.yml +0 -5
  626. data/config/locales/lo-LA.yml +0 -1
  627. data/config/locales/oc-FR.yml +0 -3
  628. data/config/locales/sq-AL.yml +0 -1
  629. data/config/locales/th-TH.yml +0 -1
  630. data/db/migrate/20231027142329_change_default_value_for_decidim_endorsements.rb +0 -11
  631. data/lib/decidim/core/test/shared_examples/editor_shared_examples.rb +0 -10
  632. data/lib/decidim/core/test/shared_examples/mcell_examples.rb +0 -17
  633. data/lib/decidim/core/test/shared_examples/resource_endorsed_event_examples.rb +0 -60
  634. data/lib/decidim/core/test/shared_examples/versions_controller_examples.rb +0 -40
  635. data/lib/decidim/data_portability_serializers.rb +0 -23
  636. data/lib/decidim/dependency_resolver.rb +0 -278
  637. data/lib/decidim/middleware/rails_cookies.rb +0 -23
  638. data/lib/tasks/upgrade/decidim_deduplicate_endorsements.rake +0 -53
  639. data/lib/tasks/upgrade/decidim_user_moderation.rake +0 -14
  640. /data/app/packs/src/decidim/vizzs/{metrics.js → index.js} +0 -0
  641. /data/app/views/decidim/application/{_document.html.erb → _document.erb} +0 -0
  642. /data/app/views/decidim/application/{_photos.html.erb → _photos.erb} +0 -0
  643. /data/app/views/decidim/{data_portability → download_your_data}/export.html.erb +0 -0
@@ -1,3 +1,4 @@
1
+ ---
1
2
  fi:
2
3
  activemodel:
3
4
  attributes:
@@ -29,7 +30,6 @@ fi:
29
30
  password_confirmation: Vahvista salasanasi
30
31
  personal_url: Henkilökohtainen URL-osoite
31
32
  remove_avatar: Poista profiilikuva
32
- tos_agreement: Käyttöehdot
33
33
  models:
34
34
  decidim/attachment_created_event: Liite
35
35
  decidim/component_published_event: Aktiivinen komponentti
@@ -74,7 +74,8 @@ fi:
74
74
  'true': 'Kyllä'
75
75
  carrierwave:
76
76
  errors:
77
- image_too_big: Kuva on liian suuri
77
+ file_resolution_too_large: Tiedoston resoluutio on liian suuri
78
+ file_size_too_large: Tiedoston koko on liian suuri
78
79
  not_inside_organization: Tiedostoa ei ole liitetty mihinkään organisaatioon
79
80
  date:
80
81
  formats:
@@ -93,26 +94,23 @@ fi:
93
94
  other: noin %{count} kuukautta
94
95
  half_a_minute: puoli minuuttia
95
96
  less_than_x_minutes:
96
- one: alle minuutti
97
- other: alle %{count} minuuttia
97
+ one: alle minuutti.
98
+ other: alle %{count} minuuttia.
98
99
  less_than_x_seconds:
99
- one: alle 1 sekunti
100
- other: alle %{count} sekuntia
100
+ one: juuri nyt
101
+ other: vähemmän kuin %{count} sekuntia.
101
102
  x_days:
102
- one: 1 päivä
103
- other: "%{count} päivää"
103
+ one: päivä sitten
104
+ other: "%{count} päivää sitten"
104
105
  x_hours:
105
- one: 1 tunti
106
- other: "%{count} tuntia"
106
+ one: tunti sitten
107
+ other: "%{count} tuntia sitten"
107
108
  x_minutes:
108
- one: 1 minuutti
109
- other: "%{count} minuuttia"
110
- x_months:
111
- one: 1 kuukausi
112
- other: "%{count} kuukautta"
109
+ one: minuutti sitten
110
+ other: "%{count} minuuttia sitten"
113
111
  x_seconds:
114
- one: 1 sekunti
115
- other: "%{count} sekuntia"
112
+ one: sekunti sitten
113
+ other: "%{count} sekuntia sitten"
116
114
  decidim:
117
115
  accessibility:
118
116
  external_link: Ulkoinen linkki
@@ -121,9 +119,6 @@ fi:
121
119
  skip_button: Siirry sisältöön
122
120
  account:
123
121
  blocked: Tämä käyttäjätili on estetty, koska käyttäjä ei noudattanut käyttöehtoja
124
- data_portability_export:
125
- file_no_exists: Tiedostoa ei ole olemassa
126
- notice: Tietojen vienti on käynnissä. Saat sähköpostiviestin, kun se valmistuu.
127
122
  delete:
128
123
  alert: Tätä toimintoa ei voi peruuttaa. Jos poistat tilisi, et voi enää kirjautua sisään tunnuksillasi. Tilisi poiston yhteydessä nimesi ja tietosi poistuvat kaikkien laatimiesi asioiden yhteydestä. Voit kuitenkin aina luoda uuden tilin, mutta näitä aikaisemmin laadittuja asioita ei voida enää jälkikäteen liittää uuteen tiliisi.
129
124
  confirm:
@@ -135,8 +130,21 @@ fi:
135
130
  destroy:
136
131
  error: Tilisi poistaminen epäonnistui.
137
132
  success: Tilisi poistaminen onnistui.
133
+ download_your_data_export:
134
+ file_no_exists: Tiedostoa ei ole olemassa
135
+ notice: Tietojen vienti on käynnissä. Saat sähköpostiviestin, kun se valmistuu.
136
+ email_change:
137
+ body1: Olemme lähettäneet viestin osoitteeseen %{unconfirmed_email} vahvistaaksemme uuden sähköpostiosoitteesi.
138
+ body2: Haluatko tilata vahvistussähköpostin uudestaan? %{resend_link} tai %{cancel_link}.
139
+ cancel: peruuta
140
+ cancel_error: Sähköpostin muutosta ei voitu peruuttaa.
141
+ cancel_successfully: Sähköpostin muuttamisen peruuttaminen onnistui.
142
+ resend_error: Vahvistussähköpostia ei voitu lähettää uudestaan.
143
+ resend_successfully: Vahvistussähköpostin lähetys osoitteeseen %{unconfirmed_email} onnistui
144
+ send_again: Lähetä uudestaan
145
+ title: Sähköpostin muuttamisen vahvistus
138
146
  show:
139
- available_locales_helper: Valitse kieli, jota haluat käyttää selataksesi Decidimiä ja vastaanottaaksesi ilmoituksia
147
+ available_locales_helper: Valitse haluamasi kieli alustan käyttämiseen ja ilmoitusten vastaanottamiseen
140
148
  change_password: Vaihda salasana
141
149
  update_account: Päivitä tili
142
150
  update:
@@ -146,16 +154,44 @@ fi:
146
154
  admin:
147
155
  actions:
148
156
  cancel: Peruuta
157
+ password_change:
158
+ alert: Sinun täytyy vaihtaa salasanasi, jotta voit jatkaa eteenpäin
159
+ notification: Hallintakäyttäjien on vaihdettava salasanansa %{days} päivän välein.
149
160
  admin_log:
150
161
  area:
151
162
  create: "%{user_name} loi %{resource_name} alueen"
152
163
  delete: "%{user_name} poisti %{resource_name} -alueen"
153
164
  update: "%{user_name} päivitti %{resource_name} -alueen"
165
+ area_type:
166
+ create: "%{user_name} loi aluetyypin %{resource_name}"
167
+ delete: "%{user_name} poisti aluetyypin %{resource_name}"
168
+ update: "%{user_name} päivitti aluetyyppiä %{resource_name}"
169
+ attachment:
170
+ create: "%{user_name} loi liitteen %{resource_name}"
171
+ delete: "%{user_name} poisti liitteen %{resource_name}"
172
+ update: "%{user_name} päivitti liitettä %{resource_name}"
173
+ attachment_collection:
174
+ create: "%{user_name} loi liitekansion %{resource_name}"
175
+ delete: "%{user_name} poisti liitekansion %{resource_name}"
176
+ update: "%{user_name} päivitti liitekansiota %{resource_name}"
177
+ category:
178
+ create: "%{user_name} lisäsi aihepiirin %{resource_name} tilaan %{space_name}"
179
+ delete: "%{user_name} poisti aihepiirin %{resource_name} tilasta %{space_name}"
180
+ update: "%{user_name} päivitti aihepiiriä %{resource_name} tilassa %{space_name}"
154
181
  component:
155
182
  create: "%{user_name} lisäsi komponentin %{resource_name} osallistumistilaan %{space_name}"
156
183
  delete: "%{user_name} poisti %{resource_name} -komponentin %{space_name} -tilasta"
184
+ export_component: "%{user_name} vei komponentin %{component_name} %{resource_name} tilassa %{space_name} tiedostomuodossa %{format_name}"
157
185
  publish: "%{user_name} julkaisi komponentin %{resource_name} osallistumistilassa %{space_name}"
158
- unpublish: "%{user_name} lopetti komponentin %{resource_name} julkaisun osallistumistilassa %{space_name}"
186
+ unpublish: "%{user_name} lopetti komponentin %{resource_name} julkaisemisen osallistumistilassa %{space_name}"
187
+ update_permissions_with_space: "%{user_name} päivitti oikeuksia kohteessa %{resource_name} tilassa %{space_name}"
188
+ contextual_help_section:
189
+ update: "%{user_name} päivitti ohjeosiota %{resource_name}"
190
+ helpers:
191
+ answers: vastaukset
192
+ comments: kommentit
193
+ projects: projektit
194
+ results: tulokset
159
195
  impersonation_log:
160
196
  manage: "%{user_name} hallinnoi käyttäjää %{resource_name}, koska %{reason}"
161
197
  moderation:
@@ -172,6 +208,7 @@ fi:
172
208
  update: "%{user_name} päivitti %{resource_name} OAuth-sovellusta"
173
209
  organization:
174
210
  update: "%{user_name} päivitti organisaation asetuksia"
211
+ update_external_domain: "%{user_name} päivitti organisaation ulkoisia verkkotunnuksia"
175
212
  participatory_space_private_user:
176
213
  create: "%{user_name} kutsui käyttäjän %{resource_name} yksityiseksi käyttäjäksi"
177
214
  create_via_csv: "%{user_name} kutsui yksityisen osallistujan %{resource_name} CSV-tuonnin kautta"
@@ -183,6 +220,10 @@ fi:
183
220
  delete_with_parent: "%{user_name} poisti %{resource_name} teeman %{parent_scope} teeman alta"
184
221
  update: "%{user_name} päivitti %{resource_name} teemaa"
185
222
  update_with_parent: "%{user_name} päivitti %{resource_name} teemaa %{parent_scope} teeman alla"
223
+ scope_type:
224
+ create: "%{user_name} loi teematyypin %{resource_name}"
225
+ delete: "%{user_name} poisti teematyypin %{resource_name}"
226
+ update: "%{user_name} päivitti teematyyppiä %{resource_name}"
186
227
  static_page:
187
228
  create: "%{user_name} loi staattisen sivun %{resource_name}"
188
229
  delete: "%{user_name} poisti staattisen sivun %{resource_name}"
@@ -198,9 +239,7 @@ fi:
198
239
  unblock: "%{user_name} poisti eston käyttäjältä %{resource_name}"
199
240
  unofficialize: "%{user_name} poisti käyttäjän %{resource_name} virallistamisen"
200
241
  user_group:
201
- block: "%{user_name} esti käyttäjän %{resource_name}"
202
242
  reject: "%{user_name} hylkäsi käyttäjäryhmän %{resource_name} vahvistaminen"
203
- unblock: "%{user_name} poisti eston käyttäjältä %{resource_name}"
204
243
  verify: "%{user_name} vahvisti käyttäjäryhmän %{resource_name}"
205
244
  verify_via_csv: "%{user_name} vahvisti käyttäjäryhmän %{resource_name} CSV-tiedoston avulla"
206
245
  user_moderation:
@@ -311,6 +350,7 @@ fi:
311
350
  endorsements:
312
351
  one: suositus
313
352
  other: suositusta
353
+ official_author: Virallinen
314
354
  authorization_handlers:
315
355
  another_dummy_authorization_handler:
316
356
  explanation: Vahvista tilisi syöttämällä passin numero, joka alkaa kirjaimella "A"
@@ -401,6 +441,7 @@ fi:
401
441
  debate: Keskustelu
402
442
  initiative: Aloite
403
443
  meeting: Tapaaminen
444
+ order: Budjetointiääni
404
445
  post: Artikkeli
405
446
  proposal: Ehdotus
406
447
  question: Kysymys
@@ -415,8 +456,8 @@ fi:
415
456
  amendments_enabled: Muutokset käytössä
416
457
  comments_enabled: Kommentit käytössä
417
458
  comments_max_length: Kommenttien maksimipituus
418
- dummy_global_attribute_1: Esimerkkitietue 1
419
- dummy_global_attribute_2: Esimerkkitietue 2
459
+ dummy_global_attribute1: Esimerkkitietue 1
460
+ dummy_global_attribute2: Esimerkkitietue 2
420
461
  dummy_global_translatable_text: Käännettävän tekstin esimerkki
421
462
  enable_pads_creation: Ota käyttöön muistioiden luominen
422
463
  resources_permissions_enabled: Resurssien käyttöoikeudet ovat käytössä
@@ -428,8 +469,8 @@ fi:
428
469
  amendment_reaction_enabled: Reaktiot käytössä muutoksille
429
470
  amendments_visibility: Muutosten näkyvyys
430
471
  comments_blocked: Kommentit estetty
431
- dummy_step_attribute_1: Esimerkkivaiheen tietue 1
432
- dummy_step_attribute_2: Esimerkkivaiheen tietue 2
472
+ dummy_step_attribute1: Esimerkkivaiheen tietue 1
473
+ dummy_step_attribute2: Esimerkkivaiheen tietue 2
433
474
  dummy_step_translatable_text: Vaiheen käännettävän tekstin esimerkki
434
475
  contact: Ota yhteyttä
435
476
  content_blocks:
@@ -443,7 +484,7 @@ fi:
443
484
  footer_sub_hero:
444
485
  name: Alaosion esialueen banneri
445
486
  hero:
446
- name: Pääkuva
487
+ name: Hero-kuva
447
488
  hero_settings_form:
448
489
  background_image: Taustakuva
449
490
  welcome_text: Tervetuloa-teksti
@@ -460,26 +501,19 @@ fi:
460
501
  html_content: HTML-sisältö
461
502
  name: HTML-lohko
462
503
  last_activity:
463
- name: Viimeaikainen toiminta
464
- title: Viimeaikainen toiminta
504
+ name: Viimeisin tapahtuma
505
+ title: Viimeisin tapahtuma
465
506
  view_all: Näytä kaikki
466
507
  metrics:
467
508
  name: Organisaation tilastomittarit
468
509
  stats:
469
510
  name: Organisaation tilastot
470
511
  sub_hero:
471
- name: Pääkuvan alabanneri
512
+ name: Hero-kuvan alabanneri
472
513
  core:
473
514
  actions:
474
515
  login_before_access: Sinun täytyy kirjautua sisään, jotta voit tarkastella tätä sisältöä
475
516
  unauthorized: Tiliäsi ei ole varmennettu tämän toiminnon suorittamiseen
476
- data_portability:
477
- export:
478
- ready: Valmis
479
- show:
480
- download_data: Lataa tiedot
481
- download_data_description: Tiedosto sisältää kaikki tiliisi liitetyt tiedot ja se lähetetään osoitteeseen <strong>%{user_email}</strong>. Kyseinen sähköposti sisältää .zip-tiedoston ja salasanan, jolla kyseisen tiedoston voi avata.<br/><br/>Purkaaksesi tiedoston, tarvitset <a href="https://www.7-zip.org/">7-Zip-ohjelmiston</a> (Windows-käyttöjärjestelmille) tai <a href="https://www.keka.io/">Keka-ohjelmiston</a> (MacOS-käyttöjärjestelmille). Jos käytät Linux-käyttöjärjestelmää, useimmiten paketin avaamiseen tarvittava ohjelmisto on valmiiksi asennettuna järjestelmääsi. Jos näin ei kuitenkaan ole, voit käyttää <a href="https://gitlab.gnome.org/GNOME/file-roller">File Roller -ohjelmistoa</a> tai <a href="https://peazip.github.io">PeaZip-ohjelmistoa</a> paketin avaamiseen.
482
- request_data: Pyydä tietoja
483
517
  datepicker:
484
518
  help_text: 'Odotettu muoto: %{datepicker_format}'
485
519
  devise:
@@ -493,14 +527,11 @@ fi:
493
527
  subtitle: Täytä seuraava lomake viimeistelläksesi rekisteröitymisesi
494
528
  username_help: Julkinen nimi, joka näkyy viesteissäsi. Anonyymiteetin taataksemme, voi olla mikä tahansa nimi.
495
529
  registrations:
496
- create:
497
- error: Käyttäjätilin luonti epäonnistui.
498
530
  new:
499
531
  already_have_an_account?: Onko sinulla jo käyttäjätili?
500
- newsletter: Vastaanota silloin tällöin ajankohtaista tietoa sisältävä uutiskirje
532
+ newsletter: Vastaanota silloin tällöin olennaista tietoa sisältävä uutiskirje
501
533
  newsletter_title: Yhteydenottolupa
502
534
  nickname_help: Nimimerkkisi palvelussa %{organization}. Voi sisältää ainoastaan kirjaimia, numeroita sekä yhdysmerkkejä "-" ja alaviivoja "_".
503
- password_help: "Tulee sisältää vähintään %{minimun_characters} merkkiä, ei voi olla yleisesti käytetty salasana (esim. 123456), eikä voi vastata nimimerkkiäsi tai sähköpostiosoitettasi."
504
535
  sign_in: Kirjaudu sisään
505
536
  sign_up: Rekisteröidy
506
537
  sign_up_as:
@@ -513,7 +544,7 @@ fi:
513
544
  sessions:
514
545
  new:
515
546
  are_you_new?: Uusi käyttäjä?
516
- register: Luo tili
547
+ register: Rekisteröidy
517
548
  sign_in_disabled: Voit kirjautua ulkoisella tilillä
518
549
  sign_up_disabled: Rekisteröityminen on poistettu käytöstä, voit kirjautua olemassaolevalla käyttäjätilillä
519
550
  user:
@@ -549,13 +580,20 @@ fi:
549
580
  this_application_will_not_be_able_to: 'Tämä sovellus ei voi:'
550
581
  update_profile: Päivittää profiiliasi
551
582
  wants_to_use_your_account_html: "<strong>%{application_name}</strong> haluaa käyttää tiliäsi"
583
+ download_your_data:
584
+ export:
585
+ ready: Valmis
586
+ show:
587
+ download_data: Lataa tiedot
588
+ download_data_description: Tiedosto sisältää kaikki tiliisi liitetyt tiedot ja se lähetetään osoitteeseen <strong>%{user_email}</strong>. Kyseinen sähköposti sisältää .zip-tiedoston ja salasanan, jolla kyseisen tiedoston voi avata.<br/><br/>Purkaaksesi tiedoston, tarvitset <a href="https://www.7-zip.org/">7-Zip-ohjelmiston</a> (Windows-käyttöjärjestelmille) tai <a href="https://www.keka.io/">Keka-ohjelmiston</a> (MacOS-käyttöjärjestelmille). Jos käytät Linux-käyttöjärjestelmää, useimmiten paketin avaamiseen tarvittava ohjelmisto on valmiiksi asennettuna järjestelmääsi. Jos näin ei kuitenkaan ole, voit käyttää <a href="https://gitlab.gnome.org/GNOME/file-roller">File Roller -ohjelmistoa</a> tai <a href="https://peazip.github.io">PeaZip-ohjelmistoa</a> paketin avaamiseen.
589
+ request_data: Pyydä tietoja
552
590
  editor_images:
553
591
  create:
554
592
  error: Kuvan lähettäminen epäonnistui
555
593
  success: Kuvan lähettäminen onnistui
556
594
  drag_and_drop_help: Lisää kuvia raahaamalla ja pudottamalla tai liittämällä niitä leikepöydältä.
557
595
  endorsable:
558
- endorsements: Suositusta
596
+ endorsements: Suositukset
559
597
  endorsements_count: Suositusten määrä
560
598
  endorsement_buttons_cell:
561
599
  already_endorsed: Suositeltu
@@ -692,8 +730,10 @@ fi:
692
730
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet palvelun hallintakäyttäjä.
693
731
  email_subject: Ryhmä on päivittänyt profiiliaan
694
732
  notification_title: Ryhmä nimeltä %{user_group_name} on päivittänyt profiiliaan, jättäen ryhmän varmentamattomaksi. Voit varmentaa ryhmän <a href="%{groups_admin_path}">hallintapaneelin kautta</a>.
733
+ nickname_event:
734
+ notification_body: Olemme muuttaneet nimimerkkien sääntöjä varmistaaksemme, että alustalla ei ole useampaa tiliä samalla nimimerkillä eri tavalla kirjoitettuna. <br/> Tilisi on luotu toisen samaa nimimerkkiä käyttäneen henkilön jälkeen, joten olemme vaihtaneet nimimerkkiäsi automaattisesti. Halutessasi voit vaihtaa nimimerkkiäsi <a href="%{link_to_account_settings}">tilisi asetuksista</a>.
695
735
  notification_event:
696
- notification_title: Kohteessa <a href="%{resource_path}">%{resource_title}</a> on uutta toimintaa.
736
+ notification_title: Kohteelle <a href="%{resource_path}">%{resource_title}</a> järjestettiin tapahtuma.
697
737
  reports:
698
738
  resource_hidden:
699
739
  email_intro: Hallintakäyttäjä poisti luomasi kohteen %{resource_type}, koska se ilmoitettiin asiattomana syyllä "%{report_reasons}".
@@ -718,7 +758,7 @@ fi:
718
758
  email_subject: "%{name} on virallistettu"
719
759
  notification_title: Osallistuja %{name} (%{nickname}) on virallistettu.
720
760
  export_mailer:
721
- data_portability_export:
761
+ download_your_data_export:
722
762
  click_button: 'Napsauta Seuraava-linkkiä ladataksesi tietosi.<br/>Tiedosto on saatavilla %{date} saakka.<br/>Tarvitset paketin avaamiseen <a href="https://www.7-zip.org/">7-Zip-ohjelmiston</a> (Windows-käyttöjärjestelmille), <a href="https://www.keka.io/en/">Keka-ohjelmiston</a> (MacOS-käyttöjärjestelmille) tai <a href="https://peazip.github.io">PeaZip-ohjelmiston</a> (Linux-käyttöjärjestelmille). Salasana: %{password}'
723
763
  download: Lataa
724
764
  export:
@@ -730,7 +770,7 @@ fi:
730
770
  collaborative_draft: Yhdessä koostettu luonnos
731
771
  dummy_resource: Dummy-resurssit
732
772
  meeting: Tapaamiset
733
- project: Hankkeet
773
+ project: Projektit
734
774
  proposal: Ehdotukset
735
775
  result: Tulokset
736
776
  fingerprint:
@@ -756,9 +796,8 @@ fi:
756
796
  participatory_space: Seuraat kohdetta <span class="show-for-sr">%{resource_name}</span>
757
797
  destroy:
758
798
  button: Lopeta seuranta
759
- error: Tämän kohteen seuraamisen lopettaminen epäonnistui.
799
+ error: Tämän kohteen seuraamisen lopetus epäonnistui.
760
800
  forms:
761
- current_file: Nykyinen tiedosto
762
801
  current_image: Nykyinen kuva
763
802
  default_image: Oletuskuva
764
803
  errors:
@@ -770,15 +809,39 @@ fi:
770
809
  file:
771
810
  explanation: 'Tiedoston ohjeistus:'
772
811
  message_1: On oltava kuva tai asiakirja.
773
- message_2: Käytä kuvina mieluiten vaakasuuntaisia kuvia, palvelu rajaa kuvaa sopivaksi näkymään. CSV-tiedostojen osalta käytä sarake-erottimena pilkkua (",")
812
+ message_2: Kuvina käytä mieluiten vaakasuintaisia kuvia, palvelu rajaa kuvaa.
813
+ icon:
814
+ explanation: 'Ikonin ohjeistus:'
815
+ message_1: On oltava neliömuotoinen kuva.
816
+ message_2: Tämän kuvan suositeltu koko on 512x512.
774
817
  image:
775
818
  explanation: 'Kuvan ohjeistus:'
776
819
  message_1: Käytä mieluiten vaakasuuntaista kuvaa, jossa ei ole tekstiä.
777
820
  message_2: Palvelu rajaa kuvaa.
778
821
  file_validation:
779
822
  allowed_file_extensions: 'Sallitut tiedostopäätteet: %{extensions}'
823
+ max_file_dimension: 'Tiedoston enimmäismitat: %{resolution} pikseliä'
780
824
  max_file_size: 'Tiedoston koon rajoitus: %{megabytes}Mt'
781
- remove_this_file: Poista tiedosto
825
+ upload:
826
+ labels:
827
+ add_attachment: Lisää liite
828
+ add_file: Lisää tiedosto
829
+ add_image: Lisää kuva
830
+ cancel: Peruuta
831
+ edit_image: Muokkaa kuvaa
832
+ error: Virhe!
833
+ file_size_too_large: 'Tiedoston koko on liian suuri! Suurin tiedostokoko: %{megabytes}MB'
834
+ remove: Poista
835
+ replace: Korvaa
836
+ save: Tallenna
837
+ title: Tiedosto-otsikko
838
+ title_required: Tiedosto-otsikko tarvitaan!
839
+ uploaded: Ladattu
840
+ validating: Validoidaan...
841
+ validation_error: Validointivirhe!
842
+ upload_help:
843
+ dropzone: Pudota tiedostot tähän tai napsauta ladataksesi
844
+ explanation: Ohjeita %{attribute} varten
782
845
  gamification:
783
846
  all_badges_link: Kaikki saatavilla olevat kunniamerkit.
784
847
  badges:
@@ -797,6 +860,18 @@ fi:
797
860
  how: Kuinka voit ansaita tämän
798
861
  page_description: Kunniamerkit ovat tunnistuksia osallistumisesta tällä alustalla. Kun aloitat tutustumaan alustaan osallistumalla ja vuorovaikuttamalla, ansaitset erilaisia ​​kunniamerkkejä. Tässä on luettelo kunniamerkeistä ja tapoja, joilla voit ansaita niitä.
799
862
  title: Kunniamerkit
863
+ invitations:
864
+ conditions:
865
+ - Käytä profiilisivullasi olevaa "kutsua ystäviä" -linkkiä kutsuaksesi ystäviäsi palveluun
866
+ - Muokkaa lähetettävää viestiä halutessasi
867
+ - Pääset seuraavalle tasolle lähettämällä kutsuja ja saadessasi kyseiset ihmiset rekisteröitymään palveluun.
868
+ description: Tämä kunniamerkki myönnetään, kun olet kutsunut ihmisiä %{organization_name} -palveluun ja nämä ihmiset rekisteröityvät palvelun käyttäjiksi. Kiitos, että autat tekemään %{organization_name} -palvelusta tunnetumpaa ja laajentamaan yhteisöä!
869
+ description_another: Tämä käyttäjä on kutsunut %{score} henkilöä alustalle.
870
+ description_own: Olet kutsunut %{score} henkilöä alustalle.
871
+ name: Kutsut
872
+ next_level_in: Kutsu %{score} henkilöä lisää päästäksesi seuraavalle tasolle!
873
+ unearned_another: Tämä käyttäjä ei ole vielä kutsunut yhtään henkilöä.
874
+ unearned_own: Et ole vielä kutsunut yhtään henkilöä.
800
875
  description: Kunniamerkit ovat tunnistuksia osallistumisestasi ja toimistasi tällä alustalla. Ansaitset niitä aloittamalla tutustumaan, osallistumaan ja vuorovaikuttamaan tällä alustalla.
801
876
  level: Taso %{level}
802
877
  reached_top: Olet saavuttanut tämän kunniamerkin korkeimman tason.
@@ -867,6 +942,7 @@ fi:
867
942
  success: Liittymispyynnön luonti onnistui. Ylläpitäjä tarkistaa pyyntösi ennen hyväksymistäsi ryhmään.
868
943
  leave:
869
944
  error: Ryhmästä poistuminen epäonnistui
945
+ last_admin: Et voi poistaa itseäsi tästä ryhmästä, koska olet sen ainoa hallinnoija. Tee toisesta ryhmän jäsenestä hallinnoija, mikäli haluat poistua ryhmästä.
870
946
  success: Ryhmästä poistuminen onnistui.
871
947
  members:
872
948
  accept_or_reject_join_requests: 'Seuraavat käyttäjät ovat tehneet liittymispyynnön tähän ryhmään. Hyväksy tai hylkää heidän pyyntönsä:'
@@ -879,7 +955,7 @@ fi:
879
955
  no_user_groups: Ei kuulu vielä yhteenkään ryhmään.
880
956
  roles:
881
957
  admin: Ylläpitäjä
882
- creator: Luoja
958
+ creator: Hallinnoija
883
959
  member: Jäsen
884
960
  update:
885
961
  error: Ryhmän päivitys epäonnistui
@@ -894,9 +970,9 @@ fi:
894
970
  last_activities:
895
971
  activities:
896
972
  no_activities_warning: Ei toimintaa
897
- all: Kaikki toimintatyypit
973
+ all: Kaikki tapahtumatyypit
898
974
  index:
899
- last_activity: Viimeaikainen toiminta
975
+ last_activity: Viimeisin tapahtuma
900
976
  resource_type: Tyyppi
901
977
  links:
902
978
  invalid_url: Virheellinen URL-osoite
@@ -913,11 +989,10 @@ fi:
913
989
  create_with_space: "%{user_name} loi %{resource_name} osallistumistilassa %{space_name}"
914
990
  delete: "%{user_name} poisti %{resource_name}"
915
991
  delete_with_space: "%{user_name} poisti %{resource_name} osallistumistilassa %{space_name}"
916
- publish_with_space: "%{user_name} julkaisi %{resource_name} osallistumistilassa %{space_name}"
917
992
  unknown_action: "%{user_name} suoritti toimenpiteen koskien kohdetta %{resource_name}"
918
993
  unknown_action_with_space: "%{user_name} suoritti toimenpiteen koskien kohdetta %{resource_name} osallistumistilassa %{space_name}"
919
- unpublish_with_space: "%{user_name} lopetti %{resource_name} julkaisun osallistumistilassa %{space_name}"
920
994
  update: "%{user_name} päivitti %{resource_name}"
995
+ update_permissions_with_space: "%{user_name} päivitti kohteen %{resource_name} oikeuksia tilassa %{space_name}"
921
996
  update_with_space: "%{user_name} päivitti %{resource_name} osallistumistilassa %{space_name}"
922
997
  value_types:
923
998
  area_presenter:
@@ -1038,7 +1113,7 @@ fi:
1038
1113
  newsletter_mailer:
1039
1114
  newsletter:
1040
1115
  note: Tämä viesti on lähetetty sinulle, koska olet tilannut uutiskirjeet organisaatiolta %{organization_name}. Voit muuttaa asetuksiasi <a href="%{link}">ilmoitusten sivulla</a>.
1041
- see_on_website: Etkö näe tätä sähköpostia oikein? Avaa sähköposti <a href="%{link}" target="_blank" class="see-on-website">selaimessasi</a>.
1116
+ see_on_website: Etkö näe tätä sähköpostia oikein? Avaa sähköposti <a href="%{link}" target="_blank">selaimessasi</a>.
1042
1117
  unsubscribe: Voit lopettaa tämäntyyppisten sähköpostien vastaanottamisen <a href="%{link}" target="_blank" class="unsubscribe">poistumalla sähköpostilistalta</a>.
1043
1118
  newsletter_templates:
1044
1119
  basic_only_text:
@@ -1090,23 +1165,47 @@ fi:
1090
1165
  no_notifications: Ei vielä ilmoituksia.
1091
1166
  show:
1092
1167
  missing_event: Hups, tämä ilmoitus kuuluu kohteeseen, joka ei ole enää käytettävissä. Voit merkitä sen luetuksi.
1168
+ notifications_digest_mailer:
1169
+ header:
1170
+ daily: Päivittäinen ilmoitusyhteenveto
1171
+ weekly: Viikottainen ilmoitusyhteenveto
1172
+ hello: Hei %{name},
1173
+ intro:
1174
+ daily: 'Tässä on lista edellisen päivän ilmoituksista niistä asioista, joita seuraat:'
1175
+ weekly: 'Tässä on lista edellisen viikon ilmoituksista niistä asioista, joita seuraat:'
1176
+ outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat ilmoitukseen liittyviä sisältöjä tai niiden tekijöitä. Voit lopettaa seuraamisen näiden sisältöjen sivuilta.
1177
+ see_more: Näytä lisää ilmoituksia
1178
+ subject: Tämä on sähköpostiyhteenvetosi
1093
1179
  notifications_settings:
1094
1180
  show:
1095
1181
  administrators: Hallintakäyttäjät
1096
1182
  allow_public_contact: Salli kenen tahansa lähettää minulle yksityisviestejä, vaikka en seuraisi heitä.
1183
+ allow_push_notifications: Vastaanota push-ilmoituksia, mikäli haluat tietää, mitä alustalla tapahtuu, kun et ole paikalla. Voit poistaa ne käytöstä milloin tahansa.
1097
1184
  direct_messages: Vastaanota yksityisviestejä kaikilta
1098
- email_on_moderations: Haluan saada sähköpostia aina, kun jotain ilmoitetaan moderointiin.
1099
- email_on_notification: Haluan saada sähköpostia aina, kun saan ilmoituksen.
1185
+ email_on_moderations: Haluan saada sähköpostia aina, kun jotain tai joku käyttäjä ilmoitetaan moderoitavaksi.
1100
1186
  everything_followed: Kaikki mitä seuraan
1101
1187
  newsletter_notifications: Haluan vastaanottaa uutiskirjeitä
1102
1188
  newsletters: Uutiskirjeet
1189
+ notification_settings:
1190
+ close_meeting_reminder: Haluan vastaanottaa sähköpostimuistutuksia suljetuista tapaamisista, jotka odottavat raportointia
1191
+ notifications_sending_frequencies:
1192
+ daily: Päivittäin
1193
+ none: En koskaan
1194
+ real_time: Reaaliajassa
1195
+ weekly: Viikoittain
1196
+ notifications_sending_frequency: Kuinka usein haluat vastaanottaa ilmoituksia sähköpostitse?
1103
1197
  own_activity: Oma toiminta, kuten omia ehdotuksia koskevat kommentit tai maininnat
1198
+ push_notifications: Push-ilmoitukset
1199
+ push_notifications_reminder: Mikäli haluat vastaanottaa push-ilmoituksia alustalta, sinun on sallittava ne ensin selaimesi asetuksista tälle sivustolle.
1104
1200
  receive_notifications_about: Haluan saada ilmoituksia
1105
- send_notifications_by_email: Lähetä ilmoitukset sähköpostitse
1106
1201
  update_notifications_settings: Tallenna muutokset
1107
1202
  update:
1108
1203
  error: Ilmoitusasetustesi päivitys epäonnistui.
1109
1204
  success: Ilmoitusasetuksesi päivitys onnistui.
1205
+ offline:
1206
+ show:
1207
+ message: Näyttää, että olet tällä hetkellä offline-tilassa. Yritä myöhemmin uudestaan.
1208
+ retry: Yritä uudestaan
1110
1209
  open_data:
1111
1210
  not_available_yet: Avoimet datatiedostot eivät ole vielä käytettävissä, yritä uudelleen muutaman minuutin kuluttua.
1112
1211
  own_user_groups:
@@ -1130,7 +1229,7 @@ fi:
1130
1229
  proposals: Ehdotukset
1131
1230
  proposals_explanation: Tee ehdotuksia, tue muiden tekemiä ehdotuksia ja edistä muutoksia, joita haluat nähdä.
1132
1231
  footer_sub_hero:
1133
- footer_sub_hero_body: Rakennetaan entistä avoimempi, läpinäkyvämpi ja yhteistyökykyisempi yhteiskunta.<br /> Liity, osallistu ja päätä.
1232
+ footer_sub_hero_body: Rakennetaan avoimempi, läpinäkyvämpi ja yhteisöllisempi yhteiskunta.<br /> Liity, osallistu ja päätä.
1134
1233
  footer_sub_hero_headline: Tervetuloa yhteisölliseen osallistumispalveluun %{organization}.
1135
1234
  register: Rekisteröidy
1136
1235
  hero:
@@ -1160,7 +1259,7 @@ fi:
1160
1259
  agreement: Hyväksyn nämä ehdot
1161
1260
  legend: Hyväksy käyttöehdot
1162
1261
  refuse:
1163
- modal_body: Jos kieltäydyt, et voi käyttää palvelua. Voit <a href="%{data_portability_path}">ladata omat tietosi</a> ja/tai <a href="%{delete_path}">poistaa tilisi</a>.
1262
+ modal_body: Jos kieltäydyt hyväksymästä ehtoja, et voi käyttää palvelua. Voit <a href="%{download_your_data_path}">ladata omat tietosi</a> ja/tai <a href="%{delete_path}">poistaa tilisi</a>.
1164
1263
  modal_btn_continue: Hyväksy ehdot ja jatka
1165
1264
  modal_btn_exit: Tarkastan ne myöhemmin
1166
1265
  modal_button: Kieltäydy hyväksymästä ehtoja
@@ -1172,6 +1271,10 @@ fi:
1172
1271
  title: 'Pakollinen: Tarkista päivitetyt käyttöehtomme'
1173
1272
  participatory_space_private_users:
1174
1273
  not_allowed: Et voi katsoa tätä sisältöä
1274
+ passwords:
1275
+ update:
1276
+ error: Salasanan päivittäminen epäonnistui
1277
+ success: Salasanan päivitys onnistui
1175
1278
  profile:
1176
1279
  deleted: Poistettu käyttäjä
1177
1280
  inaccessible_message: Tämä käyttäjäprofiili ei ole käytettävissä, koska käyttäjä on rikkonut käyttöehtoja!
@@ -1180,7 +1283,7 @@ fi:
1180
1283
  default_officialization_text_for_user_groups: Tämä käyttäjäryhmä on julkisesti vahvistettu ja sen nimi vastaa oikeaa nimeä
1181
1284
  default_officialization_text_for_users: Tämä osallistuja on julkisesti vahvistettu. Hänen nimensä tai roolinsa on varmistettu vastaamaan hänen oikeaa nimeään ja rooliaan
1182
1285
  show:
1183
- activity: Toiminta
1286
+ activity: Aktiviteetti
1184
1287
  badges: Kunniamerkit
1185
1288
  conversations: Keskustelut
1186
1289
  followers: Seuraajat
@@ -1316,6 +1419,8 @@ fi:
1316
1419
  close_modal: Sulje ikkuna
1317
1420
  please_sign_in: Kirjaudu sisään
1318
1421
  sign_up: Rekisteröidy
1422
+ mentions_modal:
1423
+ remove_recipient: Poista vastaanottaja %{name}
1319
1424
  participatory_space_filters:
1320
1425
  filters:
1321
1426
  areas: Alueet
@@ -1356,7 +1461,7 @@ fi:
1356
1461
  show_translated: Näytä automaattisesti käännetty teksti
1357
1462
  user_activity:
1358
1463
  index:
1359
- no_activities_warning: Tällä osallistujalla ei ole vielä ollut toimintaa.
1464
+ no_activities_warning: Tämä käyttäjä ei ole vielä ollut aktiivinen.
1360
1465
  user_contact_disabled: Tämä osallistuja ei ole sallinut yksityisviestejä muilta käyttäjiltä.
1361
1466
  user_conversations:
1362
1467
  create:
@@ -1403,6 +1508,7 @@ fi:
1403
1508
  notify:
1404
1509
  body_1: Käyttäjä %{user} on ilmoitettu käyttäjän %{token} toimesta
1405
1510
  body_2: 'Syy: %{reason}'
1511
+ details: Käyttäjä antoi lisätietoja
1406
1512
  greetings: Terveisin,<br/>%{organization_name}<br/><a href="%{organization_url}">%{organization_url}</a>
1407
1513
  hello: Hei %{admin},
1408
1514
  subject: Uusi käyttäjä on ilmoitettu palvelussa %{organization_name}
@@ -1463,7 +1569,7 @@ fi:
1463
1569
  invitations:
1464
1570
  edit:
1465
1571
  header: Viimeistele tilisi
1466
- nickname_help: Nimimerkkisi organisaatiossa %{organization}.
1572
+ nickname_help: Nimimerkkisi palvelussa %{organization}. Voi sisältää ainoastaan kirjaimia, numeroita sekä yhdysmerkkejä "-" ja alaviivoja "_".
1467
1573
  submit_button: Tallenna
1468
1574
  subtitle: Jos hyväksyt kutsun, aseta käyttäjänimesi ja salasana.
1469
1575
  invitation_removed: Kutsusi peruutettiin.
@@ -1530,10 +1636,11 @@ fi:
1530
1636
  passwords:
1531
1637
  edit:
1532
1638
  change_my_password: Vaihda salasanani
1533
- change_your_password: Vaihda salasanasi
1534
1639
  confirm_new_password: Vahvista uusi salasana
1535
1640
  new_password: Uusi salasana
1536
1641
  password_help: "Tulee sisältää vähintään %{minimun_characters} merkkiä, ei voi olla yleisesti käytetty salasana (esim. 123456), eikä voi vastata nimimerkkiäsi tai sähköpostiosoitettasi."
1642
+ password_help_admin: "Tulee sisältää vähintään %{minimun_characters} merkkiä, ei voi olla yleisesti käytetty salasana (esim. 123456), eikä voi vastata nimimerkkiäsi tai sähköpostiosoitettasi. On myös oltava eri salasana kuin edelliset salasanasi."
1643
+ title: Salasanan vaihto
1537
1644
  new:
1538
1645
  forgot_your_password: Unohditko salasanasi?
1539
1646
  send_me_reset_password_instructions: Lähetä minulle ohjeet salasanan vaihtamiseen
@@ -1544,6 +1651,15 @@ fi:
1544
1651
  updated_not_active: Salasanasi vaihtaminen onnistui.
1545
1652
  registrations:
1546
1653
  destroyed: Tilisi poistaminen onnistui. Toivomme näkevämme sinut pian uudelleen.
1654
+ edit:
1655
+ are_you_sure: Oletko varma?
1656
+ cancel_my_account: Poista tilini
1657
+ currently_waiting_confirmation_for_email: 'Odottaa varmistusta sähköpostista: %{email}'
1658
+ leave_blank_if_you_don_t_want_to_change_it: jätä tyhjäksi, jos et halua muuttaa
1659
+ title: Muokkaa %{resource}
1660
+ unhappy: Oletko tyytymätön?
1661
+ update: Päivitä
1662
+ we_need_your_current_password_to_confirm_your_changes: tarvitsemme nykyisen salasanasi vahvistaaksemme muutokset
1547
1663
  new:
1548
1664
  sign_up: Rekisteröidy
1549
1665
  signed_up: Tervetuloa! Sisäänkirjautuminen onnistui.
@@ -1596,11 +1712,9 @@ fi:
1596
1712
  not_saved:
1597
1713
  one: 'Virhe käsiteltäessä pyyntöä:'
1598
1714
  other: 'Virheitä käsiteltäessä pyyntöä:'
1599
- password_confirmation_message: '"Vahvista salasanasi" -kenttä ei vastaa antamaasi salasanaa'
1600
1715
  too_many_marks: liian monta välimerkkiä peräkkäin (esim. ! ja ?)
1601
1716
  too_much_caps: liian monta isoa kirjainta (yli 25% tekstistä)
1602
- too_short: liian lyhyt (alle %{count} merkkiä)
1603
- url_format: Tämä URL-osoite on väärässä muodossa
1717
+ too_short: liian lyhyt (alle 15 merkkiä)
1604
1718
  forms:
1605
1719
  correct_errors: Lomakkeella on virheitä, korjaa ne jatkaaksesi.
1606
1720
  length_validator:
@@ -1614,14 +1728,56 @@ fi:
1614
1728
  timestamp_error_message: Pahoittelut, olit liian nopea! Lähetä lomake uudestaan.
1615
1729
  layouts:
1616
1730
  decidim:
1617
- cookie_warning:
1618
- description_html: Tämä sivusto käyttää evästeitä. Jatkamalla tämän sivuston käyttöä hyväksyt selaimeesi asettamamme evästeet. %{link}.
1619
- link_label: Lue lisää evästeistä
1620
- ok: Hyväksyn
1731
+ cookie_consent:
1732
+ cookie_details:
1733
+ columns:
1734
+ description: Kuvaus
1735
+ name: Nimi
1736
+ service: Palvelu
1737
+ type: Tyyppi
1738
+ cookies:
1739
+ _session_id:
1740
+ description: Mahdollistaa verkkosivuston muistavan käyttäjän, kun käyttäjä liikkuu sivuston eri sivujen välillä.
1741
+ service: Tämä sivusto
1742
+ decidim-consent:
1743
+ description: Tallentaa tietoja sallimistasi evästeistä tällä sivustolla.
1744
+ service: Tämä sivusto
1745
+ types:
1746
+ cookie: Eväste
1747
+ dialog:
1748
+ accept_all: Hyväksy kaikki
1749
+ accept_only_essential: Vain välttämättömät
1750
+ cookie_settings: Asetukset
1751
+ description: Käytämme sivustollamme evästeitä sivuston suorituskyvyn ja sisällön parantamiseksi. Evästeiden avulla voimme tarjota yksilöllisemmän käyttäjäkokemuksen ja sisältöjä sosiaalisen median kanavista.
1752
+ title: Tietoa verkkosivustolla käytetyistä evästeistä
1753
+ modal:
1754
+ accept_all: Hyväksy kaikki
1755
+ accept_only_essential: Vain välttämättömät
1756
+ analytics:
1757
+ description: Analytiikkaevästeet keräävät tietoja siitä, kuinka käyttäjät selaavat verkkosivustoa ja käyttävät sen eri ominaisuuksia. Kerättyjä tietoja käytetään auttamaan sivuston omistajaa parantamaan sivustoa.
1758
+ title: Analytiikka ja tilastot
1759
+ description: Käytämme evästeitä varmistaaksemme sivuston perustoiminnot ja parantaaksemme sen käyttökokemusta. Voit hyväksyä tai estää evästekategorioita haluamallasi tavalla koska tahansa.
1760
+ essential:
1761
+ description: Nämä evästeet ovat välttämättömiä verkkosivuston toiminnan kannalta. Ilman näitä evästeitä sivusto ei toimi kunnolla.
1762
+ title: Välttämättömät
1763
+ marketing:
1764
+ description: Nämä evästeet keräävät tietoa siitä, miten käytät verkkosivustoa, millä sivuilla vierailet ja mitä linkkejä olet klikannut.
1765
+ title: Markkinointi
1766
+ preferences:
1767
+ description: Näiden evästeiden avulla verkkosivusto muistaa aikaisemmin tekemäsi henkilökohtaiset valinnat ja mieltymykset
1768
+ title: Mieltymykset
1769
+ save_settings: Tallenna asetukset
1770
+ title: Evästeasetukset
1771
+ toggle: Muuta tilaa kohteelle %{consent_category}
1772
+ warning:
1773
+ all_cookies: kaikki evästeet
1774
+ change_cookie_settings: Muuta evästeasetuksiasi
1775
+ need_cookies: Sinun täytyy sallia %{cookies}-evästeet nähdäksesi tämän sisällön.
1621
1776
  edit_link:
1622
1777
  edit: Muokkaa
1623
1778
  footer:
1624
1779
  cc_by_license: Creative Commons -lisenssi
1780
+ cookie_settings: Evästeasetukset
1625
1781
  decidim_logo: Decidim-logo
1626
1782
  download_open_data: Lataa avoimet datatiedostot
1627
1783
  made_with_open_source: Verkkosivusto luotu <a target="_blank" href="https://github.com/decidim/decidim">vapaan ohjelmiston</a> avulla.
@@ -1641,6 +1797,8 @@ fi:
1641
1797
  notifications_dashboard:
1642
1798
  mark_all_as_read: Merkitse kaikki luetuiksi
1643
1799
  mark_as_read: Merkitse luetuiksi
1800
+ offline_banner:
1801
+ cache_version_page: Hups! Verkkosi on offline-tilassa. Tämä on aiemmin välimuistissa oleva versio vierailemasi sivusta, jonka sisältö ei välttämättä ole ajan tasalla.
1644
1802
  social_media_links:
1645
1803
  facebook: "%{organization} Facebookissa"
1646
1804
  github: "%{organization} GitHubissa"
@@ -1652,6 +1810,8 @@ fi:
1652
1810
  continue_session: Jatka palvelun käyttöä
1653
1811
  sign_out: Kirjaudu ulos
1654
1812
  title: Haluatko jatkaa palvelun käyttöä?
1813
+ upload_modal:
1814
+ close_modal: Sulje ikkuna
1655
1815
  user_menu:
1656
1816
  account: 'Käyttäjätili: %{name}'
1657
1817
  admin_dashboard: Hallintapaneeli
@@ -1684,6 +1844,7 @@ fi:
1684
1844
  nickname_included_in_password: liian samankaltainen nimesi kanssa
1685
1845
  not_enough_unique_characters: ei sisällä tarpeeksi yksilöllisiä merkkejä
1686
1846
  password_not_allowed: ei ole sallittu
1847
+ password_repeated: et voi uudelleenkäyttää vanhaa salasanaa
1687
1848
  password_too_common: liian yleinen
1688
1849
  password_too_long: liian pitkä
1689
1850
  password_too_short: liian lyhyt (alle 10 merkkiä)
@@ -1724,7 +1885,7 @@ fi:
1724
1885
  devise:
1725
1886
  mailer:
1726
1887
  invitation_instructions:
1727
- accept_until_format: "%B %d., %Y klo %k:%M"
1888
+ accept_until_format: "%B %d, %Y klo %k:%M"
1728
1889
  long: "%B %d., %Y %H:%M"
1729
1890
  long_dashed: "%Y-%m-%d %H:%M:%S"
1730
1891
  short: "%d.%m.%Y %H:%M"