decidim-core 0.20.1 → 0.23.1

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 (835) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/config/decidim_core_manifest.js +8 -0
  3. data/app/assets/fonts/decidim/Roboto-Regular.eot +0 -0
  4. data/app/assets/fonts/decidim/Roboto-Regular.svg +1 -0
  5. data/app/assets/fonts/decidim/Roboto-Regular.ttf +0 -0
  6. data/app/assets/fonts/decidim/Roboto-Regular.woff +0 -0
  7. data/app/assets/fonts/decidim/Roboto-Regular.woff2 +0 -0
  8. data/app/assets/fonts/decidim/Source_Sans_Pro_400.svg +1 -345
  9. data/app/assets/fonts/decidim/Source_Sans_Pro_600.svg +1 -339
  10. data/app/assets/fonts/decidim/Source_Sans_Pro_900.svg +1 -342
  11. data/app/assets/images/decidim/avatar-multiuser.png +0 -0
  12. data/app/assets/images/decidim/brands/google.svg +1 -0
  13. data/app/assets/images/decidim/decidim-logo.svg +1 -71
  14. data/app/assets/images/decidim/default-avatar.svg +1 -14
  15. data/app/assets/images/decidim/gamification/badges/followers.svg +1 -115
  16. data/app/assets/images/decidim/gamification/badges/invitations.svg +1 -117
  17. data/app/assets/images/decidim/icons.svg +1 -259
  18. data/app/assets/images/decidim/placeholder.jpg +0 -0
  19. data/app/assets/javascripts/decidim.js.es6 +30 -1
  20. data/app/assets/javascripts/decidim/ajax_modals.js.es6 +6 -3
  21. data/app/assets/javascripts/decidim/assets.js.erb +5 -0
  22. data/app/assets/javascripts/decidim/callout.js.es6 +18 -0
  23. data/app/assets/javascripts/decidim/check_boxes_tree.js.es6 +190 -0
  24. data/app/assets/javascripts/decidim/configuration.js.es6 +23 -0
  25. data/app/assets/javascripts/decidim/confirm.js.es6 +179 -0
  26. data/app/assets/javascripts/decidim/conversations.js.es6 +17 -0
  27. data/app/assets/javascripts/decidim/core/bundle.js +1 -1
  28. data/app/assets/javascripts/decidim/core/bundle.js.map +1 -1
  29. data/app/assets/javascripts/decidim/core/extrapoly.js +6 -0
  30. data/app/assets/javascripts/decidim/data_picker.js.es6 +128 -50
  31. data/app/assets/javascripts/decidim/delayed.js.es6 +26 -0
  32. data/app/assets/javascripts/decidim/diff_mode_dropdown.js.es6 +39 -6
  33. data/app/assets/javascripts/decidim/dropdowns_menus.js.es6 +32 -0
  34. data/app/assets/javascripts/decidim/editor.js.es6 +3 -3
  35. data/app/assets/javascripts/decidim/external_link.js.es6 +69 -0
  36. data/app/assets/javascripts/decidim/floating_help.js.es6 +7 -0
  37. data/app/assets/javascripts/decidim/form_filter.component.js.es6 +87 -39
  38. data/app/assets/javascripts/decidim/form_filter.component.test.js +43 -9
  39. data/app/assets/javascripts/decidim/form_validator.es6 +61 -0
  40. data/app/assets/javascripts/decidim/foundation.js.es6 +28 -28
  41. data/app/assets/javascripts/decidim/geocoding.js.es6 +60 -0
  42. data/app/assets/javascripts/decidim/geocoding/attach_input.js.es6 +106 -0
  43. data/app/assets/javascripts/decidim/geocoding/format_address.js.es6 +29 -0
  44. data/app/assets/javascripts/decidim/geocoding/provider/here.js.es6 +107 -0
  45. data/app/assets/javascripts/decidim/geocoding/provider/photon.js.es6 +77 -0
  46. data/app/assets/javascripts/decidim/history.js.es6 +16 -1
  47. data/app/assets/javascripts/decidim/icon.js.es6 +42 -0
  48. data/app/assets/javascripts/decidim/identity_selector_dialog.js.es6 +61 -0
  49. data/app/assets/javascripts/decidim/input_character_counter.js.es6 +115 -0
  50. data/app/assets/javascripts/decidim/input_mentions.js.es6 +34 -9
  51. data/app/assets/javascripts/decidim/input_multiple_mentions.js.es6 +195 -0
  52. data/app/assets/javascripts/decidim/map.js.es6 +35 -88
  53. data/app/assets/javascripts/decidim/map/controller.js.es6 +92 -0
  54. data/app/assets/javascripts/decidim/map/controller/markers.js.es6 +65 -0
  55. data/app/assets/javascripts/decidim/map/controller/static.es6 +48 -0
  56. data/app/assets/javascripts/decidim/map/factory.js.es6 +51 -0
  57. data/app/assets/javascripts/decidim/map/icon.js.es6 +31 -0
  58. data/app/assets/javascripts/decidim/map/legacy.js.es6 +87 -0
  59. data/app/assets/javascripts/decidim/map/provider/default.js.es6 +22 -0
  60. data/app/assets/javascripts/decidim/map/provider/here.js.es6 +22 -0
  61. data/app/assets/javascripts/decidim/orders.js.es6 +9 -28
  62. data/app/assets/javascripts/decidim/responsive_horizontal_tabs.js.es6 +12 -0
  63. data/app/assets/javascripts/decidim/results_listing.js.es6 +44 -0
  64. data/app/assets/javascripts/decidim/security/selfxss_warning.js.es6 +19 -0
  65. data/app/assets/javascripts/decidim/start_conversation_dialog.js +13 -0
  66. data/app/assets/javascripts/decidim/vizzs.js.es6 +1 -0
  67. data/app/assets/stylesheets/decidim/_decidim-settings.scss +5 -0
  68. data/app/assets/stylesheets/decidim/_decidim.scss +15 -11
  69. data/app/assets/stylesheets/decidim/_properties.scss +25 -0
  70. data/app/assets/stylesheets/decidim/_variables.scss +7 -25
  71. data/app/assets/stylesheets/decidim/application.scss.erb +2 -2
  72. data/app/assets/stylesheets/decidim/editor.scss +2 -2
  73. data/app/assets/stylesheets/decidim/email.scss +1771 -0
  74. data/app/assets/stylesheets/decidim/extras/_external-links.scss +29 -0
  75. data/app/assets/stylesheets/decidim/extras/_extras.scss +17 -0
  76. data/app/assets/stylesheets/decidim/extras/_label-required.scss +9 -0
  77. data/app/assets/stylesheets/decidim/extras/_process_stats.scss +1 -1
  78. data/app/assets/stylesheets/decidim/extras/_quill.scss +5 -0
  79. data/app/assets/stylesheets/decidim/extras/_results-per-page.scss +8 -1
  80. data/app/assets/stylesheets/decidim/layouts/_home.scss +31 -7
  81. data/app/assets/stylesheets/decidim/layouts/_layouts.scss +5 -0
  82. data/app/assets/stylesheets/decidim/layouts/_logo.scss +26 -0
  83. data/app/assets/stylesheets/decidim/layouts/_user.scss +4 -0
  84. data/app/assets/stylesheets/decidim/modules/_author-avatar.scss +9 -13
  85. data/app/assets/stylesheets/decidim/modules/_buttons.scss +273 -28
  86. data/app/assets/stylesheets/decidim/modules/_cards.scss +189 -23
  87. data/app/assets/stylesheets/decidim/modules/_collapsible-list.scss +21 -0
  88. data/app/assets/stylesheets/decidim/modules/_comments.scss +102 -2
  89. data/app/assets/stylesheets/decidim/modules/_conference-programme.scss +0 -1
  90. data/app/assets/stylesheets/decidim/modules/_confirm.scss +5 -0
  91. data/app/assets/stylesheets/decidim/modules/_conversation.scss +50 -0
  92. data/app/assets/stylesheets/decidim/modules/_data-picker.scss +9 -11
  93. data/app/assets/stylesheets/decidim/modules/_definition-data.scss +6 -1
  94. data/app/assets/stylesheets/decidim/modules/_docs-manager.scss +0 -1
  95. data/app/assets/stylesheets/decidim/modules/_extra.scss +0 -2
  96. data/app/assets/stylesheets/decidim/modules/_filters.scss +61 -3
  97. data/app/assets/stylesheets/decidim/modules/_floating-helper.scss +20 -8
  98. data/app/assets/stylesheets/decidim/modules/_footer.scss +8 -4
  99. data/app/assets/stylesheets/decidim/modules/_forms.scss +77 -4
  100. data/app/assets/stylesheets/decidim/modules/_horizontal-tabs.scss +64 -1
  101. data/app/assets/stylesheets/decidim/modules/_inline-filters.scss +6 -3
  102. data/app/assets/stylesheets/decidim/modules/_input-gallery.scss +10 -0
  103. data/app/assets/stylesheets/decidim/modules/_input-mentions.scss +25 -7
  104. data/app/assets/stylesheets/decidim/modules/_input-multiple-mentions.scss +5 -0
  105. data/app/assets/stylesheets/decidim/modules/_layout.scss +21 -0
  106. data/app/assets/stylesheets/decidim/modules/_map.scss +46 -0
  107. data/app/assets/stylesheets/decidim/modules/_margins.scss +8 -7
  108. data/app/assets/stylesheets/decidim/modules/_messages.scss +18 -18
  109. data/app/assets/stylesheets/decidim/modules/_modules.scss +75 -71
  110. data/app/assets/stylesheets/decidim/modules/_navbar.scss +187 -31
  111. data/app/assets/stylesheets/decidim/modules/_notification.scss +5 -0
  112. data/app/assets/stylesheets/decidim/modules/_order-by.scss +5 -0
  113. data/app/assets/stylesheets/decidim/modules/_process-nav.scss +5 -2
  114. data/app/assets/stylesheets/decidim/modules/_process-phase.scss +2 -4
  115. data/app/assets/stylesheets/decidim/modules/_process-stats.scss +53 -0
  116. data/app/assets/stylesheets/decidim/modules/_progress-bar.scss +5 -1
  117. data/app/assets/stylesheets/decidim/modules/_reveal.scss +11 -0
  118. data/app/assets/stylesheets/decidim/modules/_signup.scss +6 -5
  119. data/app/assets/stylesheets/decidim/modules/_static-pages.scss +0 -1
  120. data/app/assets/stylesheets/decidim/modules/_status-labels.scss +7 -1
  121. data/app/assets/stylesheets/decidim/modules/_sticky.scss +5 -0
  122. data/app/assets/stylesheets/decidim/modules/_tags.scss +11 -1
  123. data/app/assets/stylesheets/decidim/modules/_timeline.scss +1 -2
  124. data/app/assets/stylesheets/decidim/modules/_typography.scss +94 -10
  125. data/app/assets/stylesheets/decidim/modules/_versions.scss +0 -1
  126. data/app/assets/stylesheets/decidim/utils/_fontface.scss +10 -0
  127. data/app/assets/stylesheets/decidim/utils/_helpers.scss +8 -0
  128. data/app/assets/stylesheets/decidim/utils/_mixins.scss +86 -7
  129. data/app/assets/stylesheets/decidim/utils/_settings.scss +81 -69
  130. data/app/assets/stylesheets/decidim/utils/_toggle-expand.scss +14 -0
  131. data/app/assets/stylesheets/decidim/vizzs.scss +8 -0
  132. data/app/assets/stylesheets/decidim/vizzs/_areachart.scss +0 -1
  133. data/app/assets/stylesheets/decidim/vizzs/_linechart.scss +0 -1
  134. data/app/assets/stylesheets/decidim/vizzs/_rowchart.scss +0 -1
  135. data/app/assets/stylesheets/decidim/vizzs/_vizzs.scss +5 -0
  136. data/app/assets/stylesheets/foundation-overrides/components/_button-group.scss +319 -0
  137. data/app/cells/decidim/activity/show.erb +24 -21
  138. data/app/cells/decidim/activity_cell.rb +2 -0
  139. data/app/cells/decidim/address_cell.rb +1 -1
  140. data/app/cells/decidim/amendable/amend_button_card_cell.rb +1 -5
  141. data/app/cells/decidim/amendable/promote_button_card_cell.rb +1 -1
  142. data/app/cells/decidim/announcement/show.erb +1 -1
  143. data/app/cells/decidim/author/comments.erb +1 -1
  144. data/app/cells/decidim/author/endorsements.erb +6 -0
  145. data/app/cells/decidim/author/flag.erb +6 -3
  146. data/app/cells/decidim/author/profile_inline.erb +3 -4
  147. data/app/cells/decidim/author/show.erb +2 -0
  148. data/app/cells/decidim/author/withdraw.erb +2 -2
  149. data/app/cells/decidim/author_cell.rb +12 -13
  150. data/app/cells/decidim/badge/show.erb +6 -6
  151. data/app/cells/decidim/badge/small.erb +2 -1
  152. data/app/cells/decidim/card/show.erb +4 -4
  153. data/app/cells/decidim/card_cell.rb +21 -7
  154. data/app/cells/decidim/card_m/comments_counter.erb +1 -1
  155. data/app/cells/decidim/card_m/header.erb +4 -4
  156. data/app/cells/decidim/card_m/image.erb +1 -1
  157. data/app/cells/decidim/card_m/show.erb +3 -3
  158. data/app/cells/decidim/card_m_cell.rb +9 -6
  159. data/app/cells/decidim/collapsible_authors_cell.rb +1 -1
  160. data/app/cells/decidim/collapsible_list/show.erb +3 -3
  161. data/app/cells/decidim/content_blocks/footer_sub_hero/show.erb +4 -4
  162. data/app/cells/decidim/content_blocks/hero_settings_form/show.erb +2 -2
  163. data/app/cells/decidim/content_blocks/how_to_participate/show.erb +8 -8
  164. data/app/cells/decidim/content_blocks/last_activity_cell.rb +1 -1
  165. data/app/cells/decidim/content_blocks/stats/show.erb +1 -1
  166. data/app/cells/decidim/content_blocks/sub_hero/show.erb +3 -3
  167. data/app/cells/decidim/diff/attribute.erb +15 -5
  168. data/app/cells/decidim/diff/diff_mode_html.erb +31 -0
  169. data/app/cells/decidim/diff/diff_split.erb +1 -1
  170. data/app/cells/decidim/diff/diff_unified.erb +1 -1
  171. data/app/cells/decidim/diff/show.erb +1 -0
  172. data/app/cells/decidim/diff_cell.rb +32 -9
  173. data/app/cells/decidim/endorsement_buttons/select_identity_button.erb +10 -0
  174. data/app/cells/decidim/endorsement_buttons/show.erb +4 -0
  175. data/app/cells/decidim/endorsement_buttons_cell.rb +208 -0
  176. data/app/cells/decidim/endorsers_list/show.erb +16 -0
  177. data/app/cells/decidim/endorsers_list_cell.rb +29 -0
  178. data/app/cells/decidim/fingerprint_cell.rb +1 -0
  179. data/app/cells/decidim/follow_button/show.erb +29 -8
  180. data/app/cells/decidim/follow_button_cell.rb +37 -5
  181. data/app/cells/decidim/navbar_admin_link/show.erb +6 -0
  182. data/app/cells/decidim/navbar_admin_link_cell.rb +49 -0
  183. data/app/cells/decidim/newsletter_templates/base_cell.rb +30 -0
  184. data/app/cells/decidim/newsletter_templates/base_settings_form_cell.rb +13 -0
  185. data/app/cells/decidim/newsletter_templates/basic_only_text/show.erb +86 -0
  186. data/app/cells/decidim/newsletter_templates/basic_only_text_cell.rb +21 -0
  187. data/app/cells/decidim/newsletter_templates/basic_only_text_settings_form/show.erb +7 -0
  188. data/app/cells/decidim/newsletter_templates/basic_only_text_settings_form_cell.rb +8 -0
  189. data/app/cells/decidim/newsletter_templates/image_text_cta/show.erb +125 -0
  190. data/app/cells/decidim/newsletter_templates/image_text_cta_cell.rb +61 -0
  191. data/app/cells/decidim/newsletter_templates/image_text_cta_settings_form/show.erb +17 -0
  192. data/app/cells/decidim/newsletter_templates/image_text_cta_settings_form_cell.rb +8 -0
  193. data/app/cells/decidim/notifications/show.erb +1 -1
  194. data/app/cells/decidim/profile/show.erb +2 -2
  195. data/app/cells/decidim/profile/user_group_tabs.erb +10 -5
  196. data/app/cells/decidim/profile/user_tabs.erb +16 -14
  197. data/app/cells/decidim/profile_cell.rb +18 -0
  198. data/app/cells/decidim/profile_sidebar/show.erb +16 -16
  199. data/app/cells/decidim/profile_sidebar_cell.rb +1 -0
  200. data/app/cells/decidim/progress_bar/show.erb +11 -4
  201. data/app/cells/decidim/progress_bar_cell.rb +20 -1
  202. data/app/cells/decidim/search_results_section/show.erb +1 -1
  203. data/app/cells/decidim/tags_cell.rb +34 -4
  204. data/app/cells/decidim/translation_bar/show.erb +6 -0
  205. data/app/cells/decidim/translation_bar_cell.rb +52 -0
  206. data/app/cells/decidim/user_activity/show.erb +19 -1
  207. data/app/cells/decidim/user_activity_cell.rb +6 -0
  208. data/app/cells/decidim/user_conversation/conversation_header.erb +14 -0
  209. data/app/cells/decidim/user_conversation/messages.erb +15 -0
  210. data/app/cells/decidim/user_conversation/new.erb +15 -0
  211. data/app/cells/decidim/user_conversation/reply.erb +17 -0
  212. data/app/cells/decidim/user_conversation/show.erb +20 -0
  213. data/app/cells/decidim/user_conversation_cell.rb +75 -0
  214. data/app/cells/decidim/user_conversations/add_conversation_users.erb +25 -0
  215. data/app/cells/decidim/user_conversations/conversation_item.erb +38 -0
  216. data/app/cells/decidim/user_conversations/show.erb +58 -0
  217. data/app/cells/decidim/user_conversations_cell.rb +40 -0
  218. data/app/cells/decidim/user_group_admin_membership_profile/footer.erb +3 -3
  219. data/app/cells/decidim/user_profile/footer.erb +1 -1
  220. data/app/cells/decidim/user_profile/unlinked_user_data.erb +16 -0
  221. data/app/cells/decidim/user_profile/user_data.erb +1 -1
  222. data/app/cells/decidim/user_profile_cell.rb +7 -1
  223. data/app/cells/decidim/user_timeline_cell.rb +4 -0
  224. data/app/cells/decidim/version/show.erb +31 -0
  225. data/app/{views/decidim/shared/_version_author.html.erb → cells/decidim/version_author/show.erb} +1 -1
  226. data/app/cells/decidim/version_author_cell.rb +9 -0
  227. data/app/cells/decidim/version_cell.rb +83 -0
  228. data/app/cells/decidim/versions_list/show.erb +32 -0
  229. data/app/cells/decidim/versions_list_cell.rb +64 -0
  230. data/app/cells/decidim/versions_list_item/show.erb +20 -0
  231. data/app/cells/decidim/versions_list_item_cell.rb +51 -0
  232. data/app/cells/decidim/wizard_step_form/wizard_aside.erb +1 -1
  233. data/app/cells/decidim/wizard_step_form/wizard_header.erb +2 -2
  234. data/app/cells/decidim/wizard_step_form_cell.rb +4 -1
  235. data/app/commands/decidim/amendable/accept.rb +18 -7
  236. data/app/commands/decidim/amendable/create_draft.rb +2 -0
  237. data/app/commands/decidim/amendable/publish_draft.rb +5 -0
  238. data/app/commands/decidim/amendable/reject.rb +5 -0
  239. data/app/commands/decidim/amendable/update_draft.rb +2 -0
  240. data/app/commands/decidim/amendable/withdraw.rb +3 -12
  241. data/app/commands/decidim/attachment_methods.rb +47 -0
  242. data/app/commands/decidim/create_registration.rb +7 -7
  243. data/app/commands/decidim/create_user_group.rb +12 -0
  244. data/app/commands/decidim/destroy_account.rb +13 -0
  245. data/app/commands/decidim/endorse_resource.rb +64 -0
  246. data/app/commands/decidim/gallery_methods.rb +71 -0
  247. data/app/commands/decidim/invite_user_again.rb +2 -4
  248. data/app/commands/decidim/messaging/reply_to_conversation.rb +35 -4
  249. data/app/commands/decidim/messaging/start_conversation.rb +36 -5
  250. data/app/commands/decidim/multiple_attachments_methods.rb +56 -0
  251. data/app/commands/decidim/unendorse_resource.rb +38 -0
  252. data/app/commands/decidim/update_notifications_settings.rb +1 -0
  253. data/app/commands/decidim/update_user_group.rb +14 -1
  254. data/app/controllers/concerns/decidim/devise_controllers.rb +1 -0
  255. data/app/controllers/concerns/decidim/filter_resource.rb +24 -6
  256. data/app/controllers/concerns/decidim/flaggable.rb +20 -0
  257. data/app/controllers/concerns/decidim/force_authentication.rb +1 -0
  258. data/app/controllers/concerns/decidim/impersonate_users.rb +14 -1
  259. data/app/controllers/concerns/decidim/needs_snippets.rb +20 -0
  260. data/app/controllers/concerns/decidim/paginable.rb +5 -1
  261. data/app/controllers/concerns/decidim/resource_versions_concern.rb +28 -0
  262. data/app/controllers/concerns/decidim/use_organization_time_zone.rb +32 -0
  263. data/app/controllers/concerns/decidim/withdrawable.rb +20 -0
  264. data/app/controllers/decidim/application_controller.rb +19 -0
  265. data/app/controllers/decidim/components/base_controller.rb +7 -1
  266. data/app/controllers/decidim/cookie_policy_controller.rb +6 -3
  267. data/app/controllers/decidim/data_portability_controller.rb +12 -19
  268. data/app/controllers/decidim/devise/omniauth_registrations_controller.rb +1 -1
  269. data/app/controllers/decidim/devise/registrations_controller.rb +3 -4
  270. data/app/controllers/decidim/devise/sessions_controller.rb +5 -0
  271. data/app/controllers/decidim/endorsements_controller.rb +71 -0
  272. data/app/controllers/decidim/messaging/conversations_controller.rb +57 -14
  273. data/app/controllers/decidim/newsletters_controller.rb +2 -2
  274. data/app/controllers/decidim/profiles_controller.rb +6 -0
  275. data/app/controllers/decidim/scopes_controller.rb +42 -7
  276. data/app/controllers/decidim/user_activities_controller.rb +19 -2
  277. data/app/controllers/decidim/user_conversations_controller.rb +142 -0
  278. data/app/controllers/decidim/user_timeline_controller.rb +19 -2
  279. data/app/events/decidim/resource_endorsed_event.rb +35 -0
  280. data/app/events/decidim/user_group_admin_event.rb +37 -0
  281. data/app/events/decidim/user_group_created_event.rb +6 -0
  282. data/app/events/decidim/user_group_updated_event.rb +6 -0
  283. data/app/forms/decidim/account_form.rb +5 -1
  284. data/app/forms/decidim/amendable/create_form.rb +1 -1
  285. data/app/forms/decidim/amendable/form.rb +44 -3
  286. data/app/forms/decidim/attachment_form.rb +5 -0
  287. data/app/forms/decidim/messaging/conversation_form.rb +10 -4
  288. data/app/forms/decidim/notifications_settings_form.rb +6 -0
  289. data/app/forms/decidim/registration_form.rb +6 -0
  290. data/app/forms/decidim/user_group_form.rb +5 -1
  291. data/app/functions/decidim/core/component_finder_base.rb +40 -0
  292. data/app/functions/decidim/core/component_list.rb +38 -0
  293. data/app/functions/decidim/core/component_list_base.rb +67 -0
  294. data/app/functions/decidim/core/needs_api_filter_and_order.rb +52 -0
  295. data/app/functions/decidim/core/participatory_space_finder.rb +11 -0
  296. data/app/functions/decidim/core/participatory_space_finder_base.rb +29 -0
  297. data/app/functions/decidim/core/participatory_space_list.rb +11 -0
  298. data/app/functions/decidim/core/participatory_space_list_base.rb +34 -0
  299. data/app/functions/decidim/core/user_entity_finder.rb +33 -0
  300. data/app/functions/decidim/core/user_entity_list.rb +31 -0
  301. data/app/helpers/concerns/decidim/flash_helper_extensions.rb +47 -0
  302. data/app/helpers/decidim/action_authorization_helper.rb +24 -2
  303. data/app/helpers/decidim/amendments_helper.rb +29 -1
  304. data/app/helpers/decidim/application_helper.rb +38 -4
  305. data/app/helpers/decidim/categories_helper.rb +26 -0
  306. data/app/helpers/decidim/cells_helper.rb +3 -15
  307. data/app/helpers/decidim/check_boxes_tree_helper.rb +123 -0
  308. data/app/helpers/decidim/cookies_helper.rb +1 -1
  309. data/app/helpers/decidim/cta_button_helper.rb +1 -1
  310. data/app/helpers/decidim/decidim_form_helper.rb +24 -1
  311. data/app/helpers/decidim/endorsable_helper.rb +93 -0
  312. data/app/helpers/decidim/filter_params_helper.rb +30 -0
  313. data/app/helpers/decidim/filters_helper.rb +15 -5
  314. data/app/helpers/decidim/followable_helper.rb +11 -0
  315. data/app/helpers/decidim/layout_helper.rb +23 -5
  316. data/app/helpers/decidim/map_helper.rb +97 -21
  317. data/app/helpers/decidim/markup_helper.rb +9 -0
  318. data/app/helpers/decidim/messaging/conversation_helper.rb +61 -7
  319. data/app/helpers/decidim/omniauth_helper.rb +6 -13
  320. data/app/helpers/decidim/orders_helper.rb +15 -1
  321. data/app/helpers/decidim/paginate_helper.rb +3 -1
  322. data/app/helpers/decidim/participatory_space_helpers.rb +1 -1
  323. data/app/helpers/decidim/resource_versions_helper.rb +46 -0
  324. data/app/helpers/decidim/rich_text_editor_helper.rb +23 -0
  325. data/app/helpers/decidim/sanitize_helper.rb +13 -3
  326. data/app/helpers/decidim/scopes_helper.rb +7 -6
  327. data/app/helpers/decidim/tooltip_helper.rb +1 -1
  328. data/app/helpers/decidim/traceability_helper.rb +2 -8
  329. data/app/helpers/decidim/translations_helper.rb +7 -1
  330. data/app/helpers/decidim/user_profile_helper.rb +1 -1
  331. data/app/helpers/decidim/widget_urls_helper.rb +4 -2
  332. data/app/jobs/decidim/data_portability_export_job.rb +18 -10
  333. data/app/jobs/decidim/event_publisher_job.rb +1 -1
  334. data/app/jobs/decidim/export_job.rb +1 -1
  335. data/app/jobs/decidim/machine_translation_fields_job.rb +30 -0
  336. data/app/jobs/decidim/machine_translation_resource_job.rb +113 -0
  337. data/app/jobs/decidim/machine_translation_save_job.rb +33 -0
  338. data/app/mailers/concerns/decidim/multitenant_asset_host.rb +33 -0
  339. data/app/mailers/decidim/application_mailer.rb +1 -0
  340. data/app/mailers/decidim/export_mailer.rb +9 -5
  341. data/app/mailers/decidim/messaging/conversation_mailer.rb +53 -4
  342. data/app/mailers/decidim/newsletter_mailer.rb +22 -4
  343. data/app/mailers/decidim/reported_mailer.rb +8 -1
  344. data/app/middleware/decidim/strip_x_forwarded_host.rb +14 -0
  345. data/app/models/decidim/action_log.rb +2 -2
  346. data/app/models/decidim/amendment.rb +0 -18
  347. data/app/models/decidim/area.rb +3 -0
  348. data/app/models/decidim/area_type.rb +4 -0
  349. data/app/models/decidim/attachment.rb +30 -2
  350. data/app/models/decidim/attachment_collection.rb +3 -0
  351. data/app/models/decidim/authorization.rb +27 -0
  352. data/app/models/decidim/category.rb +4 -0
  353. data/app/models/decidim/component.rb +14 -0
  354. data/app/models/decidim/content_block.rb +16 -4
  355. data/app/models/decidim/contextual_help_section.rb +4 -0
  356. data/app/models/decidim/endorsement.rb +30 -0
  357. data/app/models/decidim/follow.rb +3 -1
  358. data/app/models/decidim/messaging/conversation.rb +39 -11
  359. data/app/models/decidim/messaging/message.rb +32 -6
  360. data/app/models/decidim/messaging/participation.rb +1 -1
  361. data/app/models/decidim/messaging/receipt.rb +8 -0
  362. data/app/models/decidim/moderation.rb +1 -1
  363. data/app/models/decidim/newsletter.rb +10 -1
  364. data/app/models/decidim/oauth_application.rb +2 -0
  365. data/app/models/decidim/omniauth_provider.rb +28 -0
  366. data/app/models/decidim/organization.rb +94 -0
  367. data/app/models/decidim/participatory_space_role_config/admin.rb +8 -0
  368. data/app/models/decidim/participatory_space_role_config/base.rb +31 -0
  369. data/app/models/decidim/participatory_space_role_config/collaborator.rb +8 -0
  370. data/app/models/decidim/participatory_space_role_config/moderator.rb +11 -0
  371. data/app/models/decidim/participatory_space_role_config/null_object.rb +11 -0
  372. data/app/models/decidim/participatory_space_role_config/participatory_space_admin.rb +8 -0
  373. data/app/models/decidim/participatory_space_role_config/valuator.rb +11 -0
  374. data/app/models/decidim/scope.rb +8 -3
  375. data/app/models/decidim/scope_type.rb +3 -0
  376. data/app/models/decidim/share_token.rb +49 -0
  377. data/app/models/decidim/static_page.rb +4 -1
  378. data/app/models/decidim/static_page_topic.rb +3 -0
  379. data/app/models/decidim/user.rb +51 -3
  380. data/app/models/decidim/user_base_entity.rb +6 -2
  381. data/app/models/decidim/user_group.rb +23 -0
  382. data/app/permissions/decidim/permissions.rb +28 -6
  383. data/app/presenters/decidim/admin_log/user_presenter.rb +1 -1
  384. data/app/presenters/decidim/home_stats_presenter.rb +5 -2
  385. data/app/presenters/decidim/log/base_presenter.rb +1 -1
  386. data/app/presenters/decidim/log/value_types/default_presenter.rb +1 -1
  387. data/app/presenters/decidim/metric_charts_presenter.rb +33 -13
  388. data/app/presenters/decidim/nil_presenter.rb +29 -0
  389. data/app/presenters/decidim/official_author_presenter.rb +36 -0
  390. data/app/presenters/decidim/resource_locator_presenter.rb +71 -10
  391. data/app/presenters/decidim/user_group_presenter.rb +1 -1
  392. data/app/presenters/decidim/user_presenter.rb +6 -0
  393. data/app/queries/decidim/metric_manage.rb +5 -0
  394. data/app/queries/decidim/metrics/followers_metric_manage.rb +1 -6
  395. data/app/queries/decidim/similar_emendations.rb +4 -4
  396. data/app/queries/decidim/user_groups/admin_memberships.rb +3 -3
  397. data/app/scrubbers/decidim/user_input_scrubber.rb +1 -1
  398. data/app/serializers/decidim/exporters/participatory_space_components_serializer.rb +1 -1
  399. data/app/serializers/decidim/importers/participatory_space_components_importer.rb +14 -5
  400. data/app/services/decidim/activity_search.rb +1 -0
  401. data/app/services/decidim/base_diff_renderer.rb +42 -3
  402. data/app/services/decidim/data_portability_exporter.rb +72 -0
  403. data/app/services/decidim/events_manager.rb +4 -1
  404. data/app/services/decidim/open_data_exporter.rb +2 -0
  405. data/app/services/decidim/resource_search.rb +122 -17
  406. data/app/services/decidim/static_map_generator.rb +10 -26
  407. data/app/services/decidim/zip_stream/zip_stream_writer.rb +56 -0
  408. data/app/types/decidim/core/amendment_type.rb +26 -0
  409. data/app/types/decidim/core/area_api_type.rb +16 -0
  410. data/app/types/decidim/core/area_type_type.rb +14 -0
  411. data/app/types/decidim/core/base_input_filter.rb +8 -0
  412. data/app/types/decidim/core/base_input_sort.rb +22 -0
  413. data/app/types/decidim/core/component_input_filter.rb +50 -0
  414. data/app/types/decidim/core/component_input_sort.rb +32 -0
  415. data/app/types/decidim/core/decidim_type.rb +0 -4
  416. data/app/types/decidim/core/fingerprint_type.rb +15 -0
  417. data/app/types/decidim/core/has_endorsable_input_sort.rb +17 -0
  418. data/app/types/decidim/core/has_hastaggable_input_filter.rb +15 -0
  419. data/app/types/decidim/core/has_localized_input_filter.rb +21 -0
  420. data/app/types/decidim/core/has_localized_input_sort.rb +21 -0
  421. data/app/types/decidim/core/has_publishable_input_filter.rb +34 -0
  422. data/app/types/decidim/core/has_publishable_input_sort.rb +13 -0
  423. data/app/types/decidim/core/has_timestamp_input_filter.rb +52 -0
  424. data/app/types/decidim/core/has_timestamp_input_sort.rb +12 -0
  425. data/app/types/decidim/core/participatory_space_input_filter.rb +26 -0
  426. data/app/types/decidim/core/participatory_space_input_sort.rb +14 -0
  427. data/app/types/decidim/core/participatory_space_link_type.rb +24 -0
  428. data/app/types/decidim/core/trace_version_type.rb +29 -0
  429. data/app/types/decidim/core/user_entity_input_filter.rb +81 -0
  430. data/app/types/decidim/core/user_entity_input_sort.rb +24 -0
  431. data/app/types/decidim/core/user_group_type.rb +17 -5
  432. data/app/types/decidim/core/user_type.rb +17 -6
  433. data/app/uploaders/decidim/application_uploader.rb +15 -1
  434. data/app/uploaders/decidim/attachment_uploader.rb +23 -17
  435. data/app/uploaders/decidim/avatar_uploader.rb +4 -0
  436. data/app/uploaders/decidim/banner_image_uploader.rb +1 -1
  437. data/app/uploaders/decidim/data_portability_uploader.rb +2 -7
  438. data/app/uploaders/decidim/hero_image_uploader.rb +1 -1
  439. data/app/uploaders/decidim/homepage_image_uploader.rb +1 -1
  440. data/app/uploaders/decidim/image_uploader.rb +34 -6
  441. data/app/uploaders/decidim/newsletter_template_image_uploader.rb +36 -0
  442. data/app/uploaders/decidim/oauth_application_logo_uploader.rb +1 -1
  443. data/app/uploaders/decidim/official_image_footer_uploader.rb +1 -1
  444. data/app/uploaders/decidim/official_image_header_uploader.rb +1 -1
  445. data/app/uploaders/decidim/organization_logo_uploader.rb +1 -1
  446. data/app/uploaders/decidim/record_image_uploader.rb +15 -0
  447. data/app/validators/etiquette_validator.rb +0 -7
  448. data/app/validators/geocoding_validator.rb +9 -4
  449. data/app/validators/passthru_validator.rb +111 -0
  450. data/app/validators/scope_belongs_to_component_validator.rb +16 -0
  451. data/app/validators/time_zone_validator.rb +10 -0
  452. data/app/validators/uploader_content_type_validator.rb +44 -0
  453. data/app/views/decidim/account/delete.html.erb +6 -3
  454. data/app/views/decidim/account/show.html.erb +17 -10
  455. data/app/views/decidim/amendments/_edit_form_fields.html.erb +7 -13
  456. data/app/views/decidim/amendments/_similar_emendation.html.erb +4 -4
  457. data/app/views/decidim/amendments/compare_draft.html.erb +2 -2
  458. data/app/views/decidim/amendments/edit_draft.html.erb +2 -2
  459. data/app/views/decidim/amendments/new.html.erb +2 -2
  460. data/app/views/decidim/amendments/preview_draft.html.erb +3 -3
  461. data/app/views/decidim/amendments/review.html.erb +3 -3
  462. data/app/views/decidim/application/_collection.html.erb +2 -2
  463. data/app/views/decidim/application/_document.html.erb +4 -4
  464. data/app/views/decidim/application/_documents.html.erb +1 -1
  465. data/app/views/decidim/application/_photos.html.erb +1 -1
  466. data/app/views/decidim/authorization_modals/_content.html.erb +2 -2
  467. data/app/views/decidim/authorization_modals/show.html.erb +1 -1
  468. data/app/views/decidim/data_portability/show.html.erb +3 -0
  469. data/app/views/decidim/devise/confirmations/new.html.erb +3 -3
  470. data/app/views/decidim/devise/invitations/edit.html.erb +13 -13
  471. data/app/views/decidim/devise/omniauth_registrations/new.html.erb +5 -3
  472. data/app/views/decidim/devise/passwords/edit.html.erb +5 -3
  473. data/app/views/decidim/devise/passwords/new.html.erb +3 -3
  474. data/app/views/decidim/devise/registrations/edit.html.erb +2 -1
  475. data/app/views/decidim/devise/registrations/new.html.erb +10 -9
  476. data/app/views/decidim/devise/sessions/new.html.erb +7 -7
  477. data/app/views/decidim/devise/shared/_newsletter_modal.html.erb +3 -3
  478. data/app/views/decidim/devise/shared/_omniauth_buttons.html.erb +11 -11
  479. data/app/views/decidim/devise/shared/_omniauth_buttons_mini.html.erb +9 -8
  480. data/app/views/decidim/devise/unlocks/new.html.erb +3 -3
  481. data/app/views/decidim/doorkeeper/authorizations/new.html.erb +2 -2
  482. data/app/views/decidim/endorsements/_identity.html.erb +9 -0
  483. data/app/views/decidim/endorsements/identities.html.erb +12 -0
  484. data/app/views/decidim/endorsements/update_buttons_and_counters.js.erb +20 -0
  485. data/app/views/decidim/errors/internal_server_error.html.erb +2 -2
  486. data/app/views/decidim/errors/not_found.html.erb +2 -2
  487. data/app/views/decidim/export_mailer/data_portability_export.html.erb +2 -2
  488. data/app/views/decidim/gamification/badges/index.html.erb +4 -4
  489. data/app/views/decidim/group_admins/index.html.erb +6 -4
  490. data/app/views/decidim/group_invites/index.html.erb +5 -2
  491. data/app/views/decidim/group_members/index.html.erb +6 -4
  492. data/app/views/decidim/groups/_form.html.erb +2 -0
  493. data/app/views/decidim/groups/edit.html.erb +4 -2
  494. data/app/views/decidim/groups/new.html.erb +2 -2
  495. data/app/views/decidim/last_activities/index.html.erb +2 -0
  496. data/app/views/decidim/messaging/conversation_mailer/comanagers_new_conversation.html.erb +17 -0
  497. data/app/views/decidim/messaging/conversation_mailer/comanagers_new_message.html.erb +17 -0
  498. data/app/views/decidim/messaging/conversation_mailer/new_conversation.html.erb +2 -2
  499. data/app/views/decidim/messaging/conversation_mailer/new_group_conversation.html.erb +17 -0
  500. data/app/views/decidim/messaging/conversation_mailer/new_group_message.html.erb +17 -0
  501. data/app/views/decidim/messaging/conversation_mailer/new_message.html.erb +2 -2
  502. data/app/views/decidim/messaging/conversations/_add_conversation_users.html.erb +24 -0
  503. data/app/views/decidim/messaging/conversations/_conversation.html.erb +54 -0
  504. data/app/views/decidim/messaging/conversations/_error_modal.html.erb +21 -0
  505. data/app/views/decidim/messaging/conversations/_messages.html.erb +15 -0
  506. data/app/views/decidim/messaging/conversations/_new_conversation_button.html.erb +33 -0
  507. data/app/views/decidim/messaging/conversations/_reply.html.erb +3 -3
  508. data/app/views/decidim/messaging/conversations/_show.html.erb +34 -15
  509. data/app/views/decidim/messaging/conversations/_start.html.erb +7 -1
  510. data/app/views/decidim/messaging/conversations/create.js.erb +1 -1
  511. data/app/views/decidim/messaging/conversations/error.js.erb +10 -0
  512. data/app/views/decidim/messaging/conversations/index.html.erb +34 -29
  513. data/app/views/decidim/messaging/conversations/new.html.erb +1 -1
  514. data/app/views/decidim/messaging/conversations/show.html.erb +8 -4
  515. data/app/views/decidim/messaging/conversations/update.js.erb +1 -1
  516. data/app/views/decidim/newsletter_mailer/newsletter.html.erb +2 -2
  517. data/app/views/decidim/newsletters/show.html.erb +8 -1
  518. data/app/views/decidim/notification_mailer/event_received.html.erb +2 -2
  519. data/app/views/decidim/notifications/index.html.erb +4 -2
  520. data/app/views/decidim/notifications_settings/show.html.erb +14 -1
  521. data/app/views/decidim/own_user_groups/index.html.erb +4 -0
  522. data/app/views/decidim/pages/_standalone.html.erb +1 -1
  523. data/app/views/decidim/pages/_tabbed.html.erb +5 -5
  524. data/app/views/decidim/pages/index.html.erb +22 -13
  525. data/app/views/decidim/profiles/_user_follow.erb +3 -3
  526. data/app/views/decidim/profiles/show.html.erb +2 -0
  527. data/app/views/decidim/reported_mailer/report.html.erb +49 -3
  528. data/app/views/decidim/scopes/_scopes_picker_input.html.erb +15 -7
  529. data/app/views/decidim/scopes/picker.html.erb +31 -17
  530. data/app/views/decidim/searches/_count.html.erb +14 -11
  531. data/app/views/decidim/searches/_filters.html.erb +3 -2
  532. data/app/views/decidim/searches/index.html.erb +5 -3
  533. data/app/views/decidim/shared/_check_boxes_tree.html.erb +56 -0
  534. data/app/views/decidim/shared/_confirm_modal.html.erb +18 -0
  535. data/app/views/decidim/shared/_embed_modal.html.erb +4 -1
  536. data/app/views/decidim/shared/_extended_navigation_bar.html.erb +3 -3
  537. data/app/views/decidim/shared/_filter_form_help.erb +8 -0
  538. data/app/views/decidim/shared/_floating_help.html.erb +7 -7
  539. data/app/views/decidim/shared/_login_modal.html.erb +17 -6
  540. data/app/views/decidim/shared/_orders.html.erb +16 -5
  541. data/app/views/decidim/shared/_results_per_page.html.erb +16 -6
  542. data/app/views/decidim/shared/_share_modal.html.erb +8 -4
  543. data/app/views/decidim/shared/_static_map.html.erb +2 -2
  544. data/app/views/decidim/shared/participatory_space_filters/_filters.html.erb +1 -1
  545. data/app/views/decidim/user_activities/index.html.erb +4 -0
  546. data/app/views/decidim/user_activities/index.js.erb +14 -0
  547. data/app/views/decidim/user_conversations/index.html.erb +4 -0
  548. data/app/views/decidim/user_conversations/show.html.erb +4 -0
  549. data/app/views/decidim/user_conversations/update.js.erb +8 -0
  550. data/app/views/decidim/user_interests/_scopes.html.erb +12 -10
  551. data/app/views/decidim/user_interests/show.html.erb +4 -1
  552. data/app/views/decidim/user_timeline/index.html.erb +5 -1
  553. data/app/views/decidim/user_timeline/index.js.erb +14 -0
  554. data/app/views/decidim/widgets/show.html.erb +4 -0
  555. data/app/views/kaminari/decidim/_first_page.html.erb +5 -1
  556. data/app/views/kaminari/decidim/_last_page.html.erb +5 -1
  557. data/app/views/kaminari/decidim/_next_page.html.erb +6 -1
  558. data/app/views/kaminari/decidim/_page.html.erb +2 -2
  559. data/app/views/kaminari/decidim/_paginator.html.erb +16 -14
  560. data/app/views/kaminari/decidim/_prev_page.html.erb +6 -1
  561. data/app/views/layouts/decidim/_admin_links.html.erb +2 -0
  562. data/app/views/layouts/decidim/_application.html.erb +4 -2
  563. data/app/views/layouts/decidim/_cookie_warning.html.erb +1 -1
  564. data/app/views/layouts/decidim/_edit_link.html.erb +0 -8
  565. data/app/views/layouts/decidim/_head.html.erb +4 -0
  566. data/app/views/layouts/decidim/_js_configuration.html.erb +34 -0
  567. data/app/views/layouts/decidim/_language_chooser.html.erb +10 -5
  568. data/app/views/layouts/decidim/_logo.html.erb +2 -22
  569. data/app/views/layouts/decidim/_mailer_logo.html.erb +2 -22
  570. data/app/views/layouts/decidim/_main_footer.html.erb +3 -1
  571. data/app/views/layouts/decidim/_mini_footer.html.erb +7 -7
  572. data/app/views/layouts/decidim/_omnipresent_banner.html.erb +1 -1
  573. data/app/views/layouts/decidim/_organization_colors.html.erb +4 -3
  574. data/app/views/layouts/decidim/_social_media_links.html.erb +15 -10
  575. data/app/views/layouts/decidim/_topbar_search.html.erb +12 -2
  576. data/app/views/layouts/decidim/_user_menu.html.erb +6 -6
  577. data/app/views/layouts/decidim/_wrapper.html.erb +21 -15
  578. data/app/views/layouts/decidim/newsletter_base.html.erb +46 -0
  579. data/app/views/layouts/decidim/user_profile.html.erb +8 -3
  580. data/app/views/layouts/decidim/widget.html.erb +2 -43
  581. data/config/initializers/browser.rb +5 -0
  582. data/config/initializers/devise.rb +11 -25
  583. data/config/initializers/invisible_captcha.rb +1 -0
  584. data/config/initializers/omniauth.rb +56 -0
  585. data/config/initializers/rack_attack.rb +25 -16
  586. data/config/locales/am-ET.yml +1 -0
  587. data/config/locales/ar.yml +16 -12
  588. data/config/locales/bg-BG.yml +1512 -0
  589. data/config/locales/bg.yml +1508 -0
  590. data/config/locales/ca.yml +302 -14
  591. data/config/locales/cs.yml +341 -45
  592. data/config/locales/da-DK.yml +9 -0
  593. data/config/locales/da.yml +1 -0
  594. data/config/locales/de.yml +307 -12
  595. data/config/locales/el-GR.yml +0 -2
  596. data/config/locales/el.yml +1587 -0
  597. data/config/locales/en.yml +308 -20
  598. data/config/locales/eo-UY.yml +2 -2
  599. data/config/locales/eo.yml +92 -0
  600. data/config/locales/es-MX.yml +297 -9
  601. data/config/locales/es-PY.yml +297 -9
  602. data/config/locales/es.yml +301 -13
  603. data/config/locales/et-EE.yml +9 -0
  604. data/config/locales/et.yml +1 -0
  605. data/config/locales/eu.yml +14 -9
  606. data/config/locales/fi-plain.yml +297 -9
  607. data/config/locales/fi.yml +359 -71
  608. data/config/locales/fr-CA.yml +1613 -0
  609. data/config/locales/fr.yml +301 -13
  610. data/config/locales/ga-IE.yml +1 -0
  611. data/config/locales/gl.yml +14 -9
  612. data/config/locales/hr-HR.yml +9 -0
  613. data/config/locales/hr.yml +1 -0
  614. data/config/locales/hu.yml +106 -12
  615. data/config/locales/id-ID.yml +14 -9
  616. data/config/locales/is-IS.yml +4 -9
  617. data/config/locales/is.yml +463 -0
  618. data/config/locales/it.yml +326 -38
  619. data/config/locales/ja-JP.yml +1587 -0
  620. data/config/locales/ja.yml +1605 -0
  621. data/config/locales/ko-KR.yml +1 -0
  622. data/config/locales/ko.yml +1 -0
  623. data/config/locales/lt-LT.yml +9 -0
  624. data/config/locales/lt.yml +1 -0
  625. data/config/locales/lv.yml +1481 -0
  626. data/config/locales/mt-MT.yml +9 -0
  627. data/config/locales/mt.yml +1 -0
  628. data/config/locales/nl.yml +292 -10
  629. data/config/locales/no.yml +262 -50
  630. data/config/locales/om-ET.yml +1 -0
  631. data/config/locales/pl.yml +801 -434
  632. data/config/locales/pt-BR.yml +16 -12
  633. data/config/locales/pt.yml +887 -541
  634. data/config/locales/ro-RO.yml +1609 -0
  635. data/config/locales/ru.yml +14 -14
  636. data/config/locales/sk-SK.yml +1426 -0
  637. data/config/locales/sk.yml +1440 -0
  638. data/config/locales/sl.yml +72 -0
  639. data/config/locales/so-SO.yml +1 -0
  640. data/config/locales/sr-CS.yml +122 -0
  641. data/config/locales/sv.yml +342 -30
  642. data/config/locales/ti-ER.yml +1 -0
  643. data/config/locales/tr-TR.yml +14 -9
  644. data/config/locales/uk.yml +10 -15
  645. data/config/locales/vi-VN.yml +1 -0
  646. data/config/locales/vi.yml +1 -0
  647. data/config/locales/zh-CN.yml +1584 -0
  648. data/config/locales/zh-TW.yml +1 -0
  649. data/config/routes.rb +5 -0
  650. data/db/migrate/20180810092428_move_organization_fields_to_hero_content_block.rb +2 -2
  651. data/db/migrate/20191113092826_add_omniauth_settings_to_decidim_organization.rb +7 -0
  652. data/db/migrate/20191113144432_add_rich_text_editor_in_public_views_to_organizations.rb +10 -0
  653. data/db/migrate/20191118123154_add_admin_terms_of_use_body_field_to_organization.rb +9 -0
  654. data/db/migrate/20191130151925_create_decidim_endorsements.rb +13 -0
  655. data/db/migrate/20191204075509_add_session_token_to_users.rb +7 -0
  656. data/db/migrate/20200107142226_add_organization_timezone.rb +7 -0
  657. data/db/migrate/20200211173227_add_direct_message_types_to_users.rb +12 -0
  658. data/db/migrate/20200320105904_index_foreign_keys_in_decidim_action_logs.rb +9 -0
  659. data/db/migrate/20200320105905_index_foreign_keys_in_decidim_amendments.rb +7 -0
  660. data/db/migrate/20200320105909_index_foreign_keys_in_decidim_authorizations.rb +7 -0
  661. data/db/migrate/20200320105917_index_foreign_keys_in_decidim_contextual_help_sections.rb +7 -0
  662. data/db/migrate/20200320105919_index_foreign_keys_in_decidim_endorsements.rb +7 -0
  663. data/db/migrate/20200320105923_index_foreign_keys_in_decidim_notifications.rb +7 -0
  664. data/db/migrate/20200320105927_index_foreign_keys_in_oauth_access_grants.rb +7 -0
  665. data/db/migrate/20200323094443_add_id_to_content_blocks_scope.rb +7 -0
  666. data/db/migrate/20200326102407_rename_scope_column.rb +7 -0
  667. data/db/migrate/20200327082257_migrate_newsletters_to_templates.rb +33 -0
  668. data/db/migrate/20200327082954_remove_newsletter_body.rb +7 -0
  669. data/db/migrate/20200401073419_add_index_on_content_block_scope_id.rb +11 -0
  670. data/db/migrate/20200525184143_add_enable_machine_translation_to_decidim_organizations.rb +7 -0
  671. data/db/migrate/20200702073419_create_decidim_share_tokens.rb +16 -0
  672. data/db/migrate/20200707132401_add_comments_max_length_to_decidim_organization.rb +7 -0
  673. data/db/migrate/20200730142511_add_file_upload_settings_to_decidim_organizations.rb +36 -0
  674. data/db/migrate/20200806092109_add_machine_translation_display_priority_to_organizations.rb +17 -0
  675. data/db/migrate/20201004160335_remove_notifications_with_continuity_badge.rb +9 -0
  676. data/db/seeds.rb +8 -6
  677. data/{app/controllers/concerns → lib}/decidim/action_authorization.rb +0 -0
  678. data/lib/decidim/amendable.rb +7 -4
  679. data/lib/decidim/api/amendable_entity_interface.rb +18 -0
  680. data/lib/decidim/api/amendable_interface.rb +18 -0
  681. data/lib/decidim/api/attachable_interface.rb +1 -1
  682. data/lib/decidim/api/author_interface.rb +4 -0
  683. data/lib/decidim/api/categorizable_interface.rb +1 -1
  684. data/lib/decidim/api/coauthorable_interface.rb +29 -0
  685. data/lib/decidim/api/endorsable_interface.rb +22 -0
  686. data/lib/decidim/api/fingerprint_interface.rb +13 -0
  687. data/lib/decidim/api/participatory_space_interface.rb +11 -9
  688. data/lib/decidim/api/participatory_space_resourceable_interface.rb +21 -0
  689. data/lib/decidim/api/scopable_interface.rb +1 -1
  690. data/lib/decidim/api/timestamps_interface.rb +21 -0
  691. data/lib/decidim/api/traceable_interface.rb +14 -0
  692. data/lib/decidim/authorable.rb +22 -1
  693. data/lib/decidim/authorization_form_builder.rb +7 -0
  694. data/lib/decidim/coauthorable.rb +32 -3
  695. data/lib/decidim/component_manifest.rb +16 -2
  696. data/lib/decidim/content_parsers.rb +1 -0
  697. data/lib/decidim/content_parsers/user_group_parser.rb +61 -0
  698. data/lib/decidim/content_parsers/user_parser.rb +3 -5
  699. data/lib/decidim/content_processor.rb +54 -29
  700. data/lib/decidim/content_renderers.rb +1 -0
  701. data/lib/decidim/content_renderers/base_renderer.rb +1 -1
  702. data/lib/decidim/content_renderers/hashtag_renderer.rb +2 -0
  703. data/lib/decidim/content_renderers/link_renderer.rb +4 -1
  704. data/lib/decidim/content_renderers/user_group_renderer.rb +32 -0
  705. data/lib/decidim/content_renderers/user_renderer.rb +3 -1
  706. data/lib/decidim/core.rb +133 -34
  707. data/lib/decidim/core/api.rb +8 -0
  708. data/lib/decidim/core/engine.rb +148 -27
  709. data/lib/decidim/core/test.rb +15 -0
  710. data/lib/decidim/core/test/factories.rb +152 -10
  711. data/lib/decidim/core/test/shared_examples/admin_resource_gallery_examples.rb +79 -0
  712. data/lib/decidim/core/test/shared_examples/amendable/accept_amendment_examples.rb +4 -4
  713. data/lib/decidim/core/test/shared_examples/amendable_interface_examples.rb +14 -0
  714. data/lib/decidim/core/test/shared_examples/amendable_proposals_interface_examples.rb +50 -0
  715. data/lib/decidim/core/test/shared_examples/authorable_interface_examples.rb +3 -0
  716. data/lib/decidim/core/test/shared_examples/back_to_list_button_examples.rb +17 -0
  717. data/lib/decidim/core/test/shared_examples/coauthorable_interface_examples.rb +60 -0
  718. data/lib/decidim/core/test/shared_examples/comments_examples.rb +77 -11
  719. data/lib/decidim/core/test/shared_examples/edit_link_shared_examples.rb +5 -1
  720. data/lib/decidim/core/test/shared_examples/embed_resource_examples.rb +49 -0
  721. data/lib/decidim/core/test/shared_examples/endorsable_interface_examples.rb +22 -0
  722. data/lib/decidim/core/test/shared_examples/endorsements_controller_shared_context.rb +22 -0
  723. data/lib/decidim/core/test/shared_examples/fingerprintable_interface_examples.rb +17 -0
  724. data/lib/decidim/core/test/shared_examples/follows_examples.rb +18 -2
  725. data/lib/decidim/core/test/shared_examples/input_filter_examples.rb +118 -0
  726. data/lib/decidim/core/test/shared_examples/input_sort_examples.rb +126 -0
  727. data/lib/decidim/core/test/shared_examples/logo_email.rb +20 -0
  728. data/lib/decidim/core/test/shared_examples/manage_component_share_tokens.rb +83 -0
  729. data/lib/decidim/core/test/shared_examples/map_examples.rb +186 -0
  730. data/lib/decidim/core/test/shared_examples/metric_manage_shared_context.rb +9 -0
  731. data/lib/decidim/core/test/shared_examples/participatory_space_resourcable_interface_examples.rb +43 -0
  732. data/lib/decidim/core/test/shared_examples/permissions.rb +143 -0
  733. data/lib/decidim/core/test/shared_examples/preview_component_with_share_token_examples.rb +55 -0
  734. data/lib/decidim/core/test/shared_examples/reports_examples.rb +4 -4
  735. data/lib/decidim/core/test/shared_examples/resource_search_examples.rb +200 -0
  736. data/lib/decidim/core/test/shared_examples/rich_text_editor_examples.rb +59 -0
  737. data/lib/decidim/core/test/shared_examples/scopable_resource_examples.rb +43 -0
  738. data/lib/decidim/core/test/shared_examples/scope_helper_examples.rb +12 -1
  739. data/lib/decidim/core/test/shared_examples/searchable_participatory_space_examples.rb +2 -2
  740. data/lib/decidim/core/test/shared_examples/searchable_results_examples.rb +15 -2
  741. data/lib/decidim/core/test/shared_examples/simple_event.rb +8 -0
  742. data/lib/decidim/core/test/shared_examples/system_endorse_resource_examples.rb +166 -0
  743. data/lib/decidim/core/test/shared_examples/timestamps_interface_examples.rb +21 -0
  744. data/lib/decidim/core/test/shared_examples/traceable_interface_examples.rb +47 -0
  745. data/lib/decidim/core/test/shared_examples/uncommentable_component_examples.rb +1 -1
  746. data/lib/decidim/core/test/shared_examples/with_endorsable_permissions_examples.rb +89 -0
  747. data/lib/decidim/core/version.rb +1 -1
  748. data/lib/decidim/deprecations.rb +19 -0
  749. data/lib/decidim/diffy_extension.rb +47 -0
  750. data/lib/decidim/endorsable.rb +25 -0
  751. data/lib/decidim/events.rb +1 -0
  752. data/lib/decidim/events/base_event.rb +29 -11
  753. data/lib/decidim/events/user_group_event.rb +45 -0
  754. data/lib/decidim/exporters.rb +7 -0
  755. data/lib/decidim/exporters/csv.rb +16 -2
  756. data/lib/decidim/exporters/excel.rb +1 -1
  757. data/lib/decidim/exporters/export_manifest.rb +35 -2
  758. data/lib/decidim/exporters/pdf.rb +56 -0
  759. data/lib/decidim/file_validator_humanizer.rb +98 -0
  760. data/lib/decidim/filter_form_builder.rb +38 -11
  761. data/lib/decidim/form_builder.rb +239 -42
  762. data/lib/decidim/geocodable.rb +79 -0
  763. data/lib/decidim/has_attachments.rb +11 -1
  764. data/lib/decidim/has_settings.rb +10 -4
  765. data/lib/decidim/has_upload_validations.rb +36 -0
  766. data/lib/decidim/map.rb +214 -0
  767. data/lib/decidim/map/autocomplete.rb +67 -0
  768. data/lib/decidim/map/dynamic_map.rb +89 -0
  769. data/lib/decidim/map/frontend.rb +97 -0
  770. data/lib/decidim/map/geocoding.rb +115 -0
  771. data/lib/decidim/map/provider.rb +12 -0
  772. data/lib/decidim/map/provider/autocomplete/here.rb +20 -0
  773. data/lib/decidim/map/provider/autocomplete/osm.rb +20 -0
  774. data/lib/decidim/map/provider/dynamic_map/here.rb +51 -0
  775. data/lib/decidim/map/provider/dynamic_map/osm.rb +13 -0
  776. data/lib/decidim/map/provider/geocoding/here.rb +58 -0
  777. data/lib/decidim/map/provider/geocoding/osm.rb +30 -0
  778. data/lib/decidim/map/provider/here.rb +21 -0
  779. data/lib/decidim/map/provider/osm.rb +22 -0
  780. data/lib/decidim/map/provider/static_map/here.rb +35 -0
  781. data/lib/decidim/map/provider/static_map/osm.rb +29 -0
  782. data/lib/decidim/map/static_map.rb +133 -0
  783. data/lib/decidim/map/utility.rb +38 -0
  784. data/lib/decidim/organization_settings.rb +267 -0
  785. data/lib/decidim/participable.rb +6 -0
  786. data/lib/decidim/participatory_space_manifest.rb +35 -0
  787. data/lib/decidim/participatory_space_resourceable.rb +35 -1
  788. data/lib/decidim/query_extensions.rb +17 -37
  789. data/lib/decidim/resource_manifest.rb +1 -1
  790. data/lib/decidim/scopable.rb +19 -6
  791. data/lib/decidim/scopable_component.rb +29 -1
  792. data/lib/decidim/scopable_participatory_space.rb +19 -0
  793. data/lib/decidim/scopable_resource.rb +21 -0
  794. data/lib/decidim/search_resource_fields_mapper.rb +17 -4
  795. data/lib/decidim/searchable.rb +6 -0
  796. data/lib/decidim/settings_manifest.rb +16 -1
  797. data/lib/decidim/shareable_with_token.rb +27 -0
  798. data/lib/decidim/snippets.rb +30 -0
  799. data/lib/decidim/translatable_attributes.rb +42 -4
  800. data/lib/decidim/translatable_resource.rb +78 -0
  801. data/lib/decidim/view_model.rb +5 -0
  802. data/lib/tasks/decidim_data_portability_tasks.rake +66 -5
  803. data/lib/tasks/decidim_locales_tasks.rake +35 -0
  804. data/lib/tasks/decidim_metrics_tasks.rake +18 -7
  805. data/lib/tasks/decidim_tasks.rake +2 -0
  806. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.bg.js +14 -0
  807. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.da.js +14 -0
  808. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.el.js +14 -0
  809. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.eo.js +17 -0
  810. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.et.js +18 -0
  811. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.fr-CA.js +16 -0
  812. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.ga.js +15 -0
  813. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.hr.js +13 -0
  814. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.is.js +14 -0
  815. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.ja.js +16 -0
  816. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.lt.js +16 -0
  817. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.lv.js +17 -0
  818. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.mt.js +15 -0
  819. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.ro.js +15 -0
  820. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.sk.js +14 -0
  821. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.sl.js +14 -0
  822. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.sr.js +16 -0
  823. data/vendor/assets/javascripts/svg4everybody.min.js +1 -2
  824. data/vendor/assets/javascripts/tribute.js +11 -4
  825. metadata +431 -37
  826. data/app/assets/javascripts/decidim/vizzs/orgchart.js.es6 +0 -699
  827. data/app/assets/stylesheets/decidim/email.css +0 -1403
  828. data/app/assets/stylesheets/decidim/modules/_input-hashtags.scss +0 -124
  829. data/app/helpers/decidim/multi_translation_helper.rb +0 -0
  830. data/app/models/decidim/participatory_process_user_role.rb +0 -32
  831. data/app/resolvers/decidim/core/user_resolver.rb +0 -61
  832. data/app/views/decidim/messaging/conversations/_message.html.erb +0 -14
  833. data/lib/decidim/data_portability_file_reader.rb +0 -56
  834. data/lib/decidim/data_portability_file_zipper.rb +0 -67
  835. data/lib/decidim/hashtaggable.rb +0 -24
@@ -3,6 +3,8 @@ fi:
3
3
  attributes:
4
4
  account:
5
5
  delete_reason: Syy tilisi poistoon
6
+ common:
7
+ created_at: Luontiaika
6
8
  group:
7
9
  about: Tietoja
8
10
  avatar: Avatar
@@ -33,6 +35,7 @@ fi:
33
35
  decidim/profile_updated_event: Profiili päivitetty
34
36
  decidim/promote_to_admin: Nimetty ryhmän ylläpitäjäksi
35
37
  decidim/removed_from_group: Poistettu ryhmästä
38
+ decidim/resource_endorsed_event: Kohdetta suositeltu
36
39
  activerecord:
37
40
  attributes:
38
41
  decidim/user:
@@ -46,6 +49,9 @@ fi:
46
49
  decidim/amendment:
47
50
  one: muutos
48
51
  other: Muutokset
52
+ decidim/endorsement:
53
+ one: Suositus
54
+ other: Suositusta
49
55
  decidim/user:
50
56
  one: Osallistuja
51
57
  other: Osallistujat
@@ -57,7 +63,9 @@ fi:
57
63
  'true': 'Kyllä'
58
64
  carrierwave:
59
65
  errors:
66
+ general: Kuvan käsittely epäonnistui
60
67
  image_too_big: Kuva on liian suuri
68
+ not_inside_organization: Tiedostoa ei ole liitetty mihinkään organisaatioon
61
69
  date:
62
70
  formats:
63
71
  decidim_short: "%d.%m.%Y"
@@ -66,11 +74,13 @@ fi:
66
74
  decidim_with_month_name: "%B %d. %Y"
67
75
  decidim_with_month_name_short: "%d. %b"
68
76
  decidim:
77
+ accessibility:
78
+ external_link: Ulkoinen linkki
79
+ logo: "Organisaation %{organization} virallinen logo"
80
+ skip_button: Siirry sisältöön
69
81
  account:
70
82
  data_portability_export:
71
83
  file_no_exists: Tiedostoa ei ole olemassa
72
- invalid_token: Varmennustunniste ei kelpaa.
73
- no_token: Varmennustunniste puuttuu
74
84
  notice: Tietojen vienti on käynnissä. Saat sähköpostiviestin, kun se valmistuu.
75
85
  delete:
76
86
  alert: Tätä toimintoa ei voi peruuttaa. Jos poistat käyttäjätilisi, et voi enää kirjautua sisään.
@@ -90,19 +100,22 @@ fi:
90
100
  error: Tilisi päivitys epäonnistui.
91
101
  success: Tilisi päivitys onnistui.
92
102
  success_with_email_confirmation: Tilisi päivittäminen onnistui. Sähköpostiisi on lähetetty viesti uuden sähköpostiosoitteesi vahvistamiseksi.
103
+ admin:
104
+ actions:
105
+ cancel: Peruuta
93
106
  admin_log:
94
107
  area:
95
108
  create: "%{user_name} loi %{resource_name} alueen"
96
109
  delete: "%{user_name} poisti %{resource_name} -alueen"
97
110
  update: "%{user_name} päivitti %{resource_name} -alueen"
98
111
  component:
99
- create: "%{user_name} lisäsi %{resource_name} -komponentin %{space_name} -tilaan"
112
+ create: "%{user_name} lisäsi komponentin %{resource_name} osallistumistilaan %{space_name}"
100
113
  delete: "%{user_name} poisti %{resource_name} -komponentin %{space_name} -tilasta"
101
- publish: "%{user_name} julkaisi %{resource_name} -komponentin %{space_name} -tilassa"
102
- unpublish: "%{user_name} lopetti %{resource_name} -komponentin julkaisemisen %{space_name} -tilassa"
114
+ publish: "%{user_name} julkaisi komponentin %{resource_name} osallistumistilassa %{space_name}"
115
+ unpublish: "%{user_name} lopetti komponentin %{resource_name} julkaisemisen osallistumistilassa %{space_name}"
103
116
  moderation:
104
- hide: "%{user_name} piilotti %{resource_type} tyyppisen resurssin %{space_name} -tilaan"
105
- unreport: "%{user_name} poisti %{resource_type} -tyyppisen resurssin ilmoituksen %{space_name} tilassa"
117
+ hide: "%{user_name} piilotti %{resource_type} tyyppisen resurssin osallistumistilaan %{space_name}"
118
+ unreport: "%{user_name} poisti %{resource_type} -tyyppisen resurssin ilmoituksen osallistumistilassa %{space_name}"
106
119
  newsletter:
107
120
  create: "%{user_name} loi %{resource_name} uutiskirjeen"
108
121
  delete: "%{user_name} poisti %{resource_name} uutiskirjeen"
@@ -133,11 +146,16 @@ fi:
133
146
  invite: "%{user_name} kutsui käyttäjän %{resource_name} roolilla: %{role}"
134
147
  officialize: "%{user_name} virallisti käyttäjän %{resource_name}"
135
148
  remove_from_admin: "%{user_name} poisti käyttäjän %{resource_name} roolilla: %{role}"
149
+ show_email: "%{user_name} tarkasteli osallistujan %{resource_name} sähköpostiosoitetta"
136
150
  unofficialize: "%{user_name} poisti käyttäjän %{resource_name} virallistamisen"
137
151
  user_group:
138
152
  reject: "%{user_name} hylkäsi käyttäjäryhmän %{resource_name} vahvistaminen"
139
153
  verify: "%{user_name} vahvisti käyttäjäryhmän %{resource_name}"
140
154
  verify_via_csv: "%{user_name} vahvisti käyttäjäryhmän %{resource_name} CSV-tiedoston avulla"
155
+ admin_terms_of_use:
156
+ default_body: "<h2>HALLINTAKÄYTTÄJÄN KÄYTTÖEHDOT</h2><p>Oletamme, että olet saanut järjestelmänvalvojalta koulutuksen järjestelmän turvalliseen hallintakäyttöön. Usein siinä korostuu seuraavat asiat:</p><ol><li>Kunnioita muiden käyttäjien yksityisyyttä ja tietosuojaa.</li><li>Mieti hetki ennen kuin klikkaat painikkeita.</li><li>Mitä enemmän sinulla on valtaa, sitä enemmän sinulla on vastuuta tekemisistäsi.</li></ol>"
157
+ alert:
158
+ dismiss: Piilota ilmoitus
141
159
  amendments:
142
160
  accepted:
143
161
  error: Muutoksen hyväksyntä epäonnistui.
@@ -145,7 +163,7 @@ fi:
145
163
  amendable:
146
164
  amended_by: 'Muuttanut:'
147
165
  button: Muuta %{model_name}
148
- error: Tämän resurssin muuttamisessa tapahtui virhe.
166
+ error: Tämän resurssin muutoksen tallennus epäonnistui.
149
167
  help_text: Paranna tätä %{model_name} kohdetta muuttamalla sen kenttiä %{amendable_fields}
150
168
  promote_button: Korosta kohteeksi %{model_name}
151
169
  promote_confirm_text: Haluatko varmasti korostaa tätä muutosta?
@@ -208,9 +226,6 @@ fi:
208
226
  update_draft:
209
227
  error: Muutosluonnoksen päivitys epäonnistui.
210
228
  success: Muutosluonnoksen päivitys onnistui.
211
- visibility_options:
212
- all: Muutokset ovat näkyvillä kaikille
213
- participants: Muutokset ovat näkyvillä ainoastaan niiden laatijoille
214
229
  withdraw:
215
230
  error: Muutoksen peruuttaminen epäonnistui
216
231
  success: Muutoksen peruuttaminen onnistui
@@ -226,38 +241,49 @@ fi:
226
241
  documents:
227
242
  one: Asiakirja
228
243
  other: Asiakirjaa
244
+ document:
245
+ download: Lataa tiedosto
229
246
  documents:
230
247
  related_documents: Liittyvät dokumentit
231
248
  photos:
232
249
  related_photos: Liittyvät kuvat
233
250
  author:
251
+ avatar: Avatar
234
252
  comments:
235
253
  one: kommentti
236
254
  other: kommentit
255
+ endorsements:
256
+ one: suositus
257
+ other: suositusta
237
258
  authorization_handlers:
238
259
  another_dummy_authorization_handler:
239
260
  explanation: Vahvista tilisi syöttämällä passin numero, joka alkaa kirjaimella "A"
240
261
  fields:
241
262
  passport_number: Passin numero
242
- name: Toinen esimerkkivarmennustapa
263
+ postal_code: Postinumero
264
+ name: Toinen esimerkkivahvistustapa
243
265
  dummy_authorization_handler:
244
266
  explanation: Vahvista tilisi syöttämällä asiakirjan numero, joka pääättyy kirjaimeen "X"
245
267
  fields:
268
+ allowed_postal_codes: Sallitut postinumerot (erottele pilkuilla)
269
+ allowed_scope_id: Sallittu teema
246
270
  document_number: Organisaatiotunnus (esim. Y-tunnus)
247
271
  postal_code: Postinumero
248
- name: Esimerkkivarmennus
272
+ scope_id: Teema
273
+ name: Esimerkkivahvistus
249
274
  dummy_authorization_workflow:
250
- name: Dummy-varmennuksen työnkulku
275
+ name: Esimerkkivahvistuksen työnkulku
251
276
  errors:
252
- duplicate_authorization: Käyttäjätili on jo varmennettu samoilla tiedoilla.
277
+ duplicate_authorization: Toinen käyttäjätili on jo vahvistettu samoilla tiedoilla.
253
278
  expired_at: Umpeutuu %{timestamp}
254
279
  expires_at: Umpeutuu %{timestamp}
255
280
  foo_authorization:
256
281
  fields:
257
282
  bar: Bar
258
283
  foo: Foo
259
- name: Foo-varmennus
284
+ name: Foo-vahvistus
260
285
  granted_at: Myönnetty %{timestamp}
286
+ renew: Vahvista uudestaan
261
287
  sms:
262
288
  explanation: Lähetä matkapuhelinnumerosi, jotta voimme tarkistaa henkilöllisyytesi.
263
289
  name: Koodi tekstiviestinä
@@ -265,33 +291,35 @@ fi:
265
291
  authorization_modals:
266
292
  content:
267
293
  expired:
268
- authorize: Varmenna varmennustavalla "%{authorization}"
269
- explanation: Varmennuksesi on vanhentunut. Jotta voit suorittaa tämän toiminnon, sinun on oltava varmennettava itsesi uudestaan varmennustavalla "%{authorization}".
270
- title: Varmennus on vanhentunut
294
+ authorize: Vahvista uudestaan palvelulla "%{authorization}"
295
+ explanation: Vahvistuksesi on vanhentunut. Jotta voit suorittaa tämän toiminnon, sinun on vahvistettava itsesi uudestaan palvelulla "%{authorization}".
296
+ title: Vahvistus on vanhentunut
271
297
  incomplete:
272
298
  cancel: Peruuta
273
- explanation: 'Vaikka kirjautumisesi on tällä hetkellä varmennettu varmennustavalla "%{authorization}", tarvitsemme uuden varmennuksen, koska seuraavat tiedot puuttuvat:'
299
+ explanation: 'Vaikka kirjautumisesi on tällä hetkellä vahvistettu palvelulla "%{authorization}", tarvitsemme uuden vahvistuksen, koska seuraavat tiedot puuttuvat:'
274
300
  invalid_field: "%{field}"
275
- reauthorize: Varmenna uudestaan
276
- title: Varmenna uudestaan
301
+ reauthorize: Vahvista uudestaan
302
+ title: Vahvista uudestaan
277
303
  missing:
278
- authorize: Varmenna varmennustavalla "%{authorization}"
279
- explanation: Suorittaaksesi tämän toiminnon, sinun tulee varmentaa tilisi varmennustavalla "%{authorization}".
280
- title: Varmennus vaaditaan
304
+ authorize: Vahvista palvelulla "%{authorization}"
305
+ explanation: Suorittaaksesi tämän toiminnon, sinun tulee vahvistaa tilisi palvelulla "%{authorization}".
306
+ title: Vahvistus vaaditaan
281
307
  pending:
282
- explanation: Tämän toiminnon suorittamiseksi sinun varmennettava itsesi palvelulla "%{authorization}", mutta varmennuksesi on edelleen kesken
283
- resume: Tarkista "%{authorization}" varmennuksen eteneminen
284
- title: Varmennus on edelleen kesken
308
+ explanation: Tämän toiminnon suorittamiseksi sinun vahvistettava käyttäjätilisi palvelulla "%{authorization}", mutta vahvistuksesi on edelleen kesken
309
+ resume: Tarkista "%{authorization}" vahvistuksen eteneminen
310
+ title: Vahvistus on edelleen kesken
285
311
  unauthorized:
286
- explanation: Pahoittelut, et voi suorittaa tätä toimintoa, koska varmennustietosi eivät täsmää.
312
+ explanation: Pahoittelut, et voi suorittaa tätä toimintoa, koska vahvistustietosi eivät täsmää.
287
313
  invalid_field: "Kentän %{field} arvo %{value} ei kelpaa."
288
314
  ok: Ok
289
- title: Ei varmennettu
315
+ title: Ei vahvistettu
290
316
  unconfirmed:
291
- confirmation_instructions: 'Jos et ole saanut vahvistusohjeita, voit pyytää niitä uudelleen:'
317
+ confirmation_instructions: 'Jos et ole saanut vahvistusohjeita, voit pyytää ne uudestaan:'
292
318
  explanation_html: Jotta voit suorittaa tämän toiminnon, sinun on oltava valtuutettu toiminnon suorittamiseen. Ennen tätä sinun on vahvistettava sähköpostiosoitteesi <strong>%{email}</strong>.
293
319
  request_confirmation_instructions: Pyydä vahvistusohjeita
294
320
  title: Vahvista sähköpostiosoitteesi
321
+ show:
322
+ close_modal: Sulje ikkuna
295
323
  collapsible_list:
296
324
  hidden_elements_count:
297
325
  one: ja %{count} lisää
@@ -299,6 +327,19 @@ fi:
299
327
  see_less: "(näytä vähemmän)"
300
328
  see_more: "(näytä enemmän)"
301
329
  components:
330
+ component_order_selector:
331
+ no_content: Sisältöä ei löytynyt annetuilla hakuehdoilla
332
+ order:
333
+ all_types: Kaikki tyypit
334
+ collaborative_draft: Yhteistyöluonnos
335
+ comment: Kommentti
336
+ debate: Keskustelu
337
+ initiative: Aloite
338
+ meeting: Tapahtuma
339
+ post: Artikkeli
340
+ proposal: Ehdotus
341
+ question: Kysymys
342
+ title: 'Näytä:'
302
343
  dummy:
303
344
  actions:
304
345
  bar: Bar
@@ -308,11 +349,14 @@ fi:
308
349
  global:
309
350
  amendments_enabled: Muutokset käytössä
310
351
  comments_enabled: Kommentit käytössä
352
+ comments_max_length: Kommenttien maksimipituus
311
353
  dummy_global_attribute_1: Esimerkkitietue 1
312
354
  dummy_global_attribute_2: Esimerkkitietue 2
313
355
  dummy_global_translatable_text: Käännettävän tekstin esimerkki
314
356
  enable_pads_creation: Ota käyttöön muistioiden luominen
315
357
  resources_permissions_enabled: Resurssien käyttöoikeudet ovat käytössä
358
+ scope_id: Teema
359
+ scopes_enabled: Teemat käytössä
316
360
  step:
317
361
  amendment_creation_enabled: Muutosten luonti käytössä
318
362
  amendment_promotion_enabled: Muutosten siirto uusiksi ehdotuksiksi käytössä
@@ -328,6 +372,9 @@ fi:
328
372
  name: Alaosion esialueen banneri
329
373
  hero:
330
374
  name: Hero-kuva
375
+ hero_settings_form:
376
+ background_image: Taustakuva
377
+ welcome_text: Tervetuloa-teksti
331
378
  highlighted_content_banner:
332
379
  name: Tärkeä sisältöbanneri
333
380
  how_to_participate:
@@ -340,14 +387,14 @@ fi:
340
387
  title: Viimeisin tapahtuma
341
388
  view_all: Näytä kaikki
342
389
  metrics:
343
- name: Organisaation mittarit
390
+ name: Organisaation tilastomittarit
344
391
  stats:
345
392
  name: Organisaation tilastot
346
393
  sub_hero:
347
394
  name: Hero-kuvan alabanneri
348
395
  core:
349
396
  actions:
350
- login_before_access: Sinun täytyy kirjautua sisään, jotta kuin voit tarkastella tätä sisältöä
397
+ login_before_access: Sinun täytyy kirjautua sisään, jotta voit tarkastella tätä sisältöä
351
398
  unauthorized: Tiliäsi ei ole varmennettu tämän toiminnon suorittamiseen
352
399
  data_portability:
353
400
  export:
@@ -400,7 +447,7 @@ fi:
400
447
  <p>Hei, oletko varma, että et halua saada uutiskirjeitä?<br>
401
448
  Ole hyvä ja harkitse uudelleen uutiskirjeiden tilausta.<br>
402
449
  Meille on erittäin tärkeää, että voit vastaanottaa silloin tällöin ​​sähköposteja tärkeistä tiedoteluontoisista asioista. Voit aina muuttaa mieltäsi ja estää uutiskirjeet käyttäjäprofiilisi ilmoitusasetusten kautta.</p>
403
- <p>Jos et hyväksy uutiskirjeiden vastaanottoa, voit jäädä paitsi olennaisesta tiedosta palvelun uusista osallisuusmahdollisuuksista.<br>
450
+ <p>Jos et hyväksy uutiskirjeiden vastaanottoa, voit jäädä paitsi olennaisesta tiedosta palvelun uusista osallistumismahdollisuuksista.<br>
404
451
  Mikäli silti haluat estää uutiskirjeiden vastaanottamisen, ymmärrämme täysin päätöksesi.</p>
405
452
  <p>Kiitos, että jaksoit lukea tämän ilmoituksen!</p>
406
453
  title: Uutiskirjeitä koskeva ilmoitus
@@ -421,6 +468,16 @@ fi:
421
468
  this_application_will_not_be_able_to: 'Tämä sovellus ei voi:'
422
469
  update_profile: Päivittää profiiliasi
423
470
  wants_to_use_your_account_html: "<strong>%{application_name}</strong> haluaa käyttää tiliäsi"
471
+ endorsable:
472
+ endorsements: Suositukset
473
+ endorsements_count: Suositusten määrä
474
+ endorsement_buttons_cell:
475
+ already_endorsed: Suositeltu
476
+ endorse: Suosittele
477
+ endorsements:
478
+ identities:
479
+ done: Valmis
480
+ select_identity: Valitse henkilöllisyys
424
481
  errors:
425
482
  internal_server_error:
426
483
  title: Palvelimellamme tapahtui virhe
@@ -433,57 +490,57 @@ fi:
433
490
  amendments:
434
491
  amendment_accepted:
435
492
  affected_user:
436
- email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hyväksytty. Näet sen tältä sivulta:'
493
+ email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hyväksytty. Voit tutustua siihen tältä sivulta:'
437
494
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet luonut kohteen %{amendable_title}.
438
495
  email_subject: Kohdetta %{amendable_title} koskeva muutos on hyväksytty käyttäjältä %{emendation_author_nickname}
439
496
  notification_title: Käyttäjän <a href="%{emendation_author_path}">%{emendation_author_nickname}</a> luoma <a href="%{emendation_path}">muutos</a> hyväksyttiin kohteelle <a href="%{amendable_path}">%{amendable_title}</a>.
440
497
  follower:
441
- email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hyväksytty. Näet sen tältä sivulta:'
498
+ email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hyväksytty. Voit tutustua siihen tältä sivulta:'
442
499
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat %{amendable_title}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
443
500
  email_subject: Kohdetta %{amendable_title} koskeva muutos on hyväksytty käyttäjältä %{emendation_author_nickname}
444
501
  notification_title: Käyttäjän <a href="%{emendation_author_path}">%{emendation_author_nickname}</a> luoma <a href="%{emendation_path}">muutos</a> hyväksyttiin kohteelle <a href="%{amendable_path}">%{amendable_title}</a>.
445
502
  amendment_created:
446
503
  affected_user:
447
- email_intro: 'Uusi muutos on luotu kohteelle %{amendable_title}. Näet sen tältä sivulta:'
504
+ email_intro: 'Uusi muutos on luotu kohteelle %{amendable_title}. Voit tutustua siihen tältä sivulta:'
448
505
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet luonut kohteen %{amendable_title}.
449
506
  email_subject: Uusi muutos kohteelle %{amendable_title}
450
507
  notification_title: Kohteelle <a href="%{amendable_path}">%{amendable_title}</a> luotiin uusi muutos.
451
508
  follower:
452
- email_intro: 'Uusi muutos on luotu kohteelle %{amendable_title}. Näet sen tältä sivulta:'
509
+ email_intro: 'Uusi muutos on luotu kohteelle %{amendable_title}. Voit tutustua siihen tältä sivulta:'
453
510
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta %{amendable_title}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
454
511
  email_subject: Uusi muutos %{amendable_title}
455
512
  notification_title: Kohteelle <a href="%{amendable_path}">%{amendable_title}</a> luotiin uusi muutos.
456
513
  amendment_promoted:
457
514
  affected_user:
458
- email_intro: 'Kohdetta %{amendable_title} koskeva muutos on julkaistu uutena kohteena %{amendable_type}. Näet sen tältä sivulta:'
515
+ email_intro: 'Kohdetta %{amendable_title} koskeva muutos on julkaistu uutena kohteena %{amendable_type}. Voit tutustua siihen tältä sivulta:'
459
516
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet luonut kohteen %{amendable_title}.
460
517
  email_subject: Käyttäjän %{emendation_author_nickname} laatima muutos on julkaistu uutena %{amendable_type} -kohteena
461
518
  notification_title: <a href="%{emendation_path}">Hylätty muutos</a> kohteelle <a href="%{amendable_path}">%{amendable_title}</a> on julkaistu uutena %{amendable_type} -kohteena käyttäjän <a href="%{emendation_author_path}">%{emendation_author_nickname}</a> toimesta.
462
519
  follower:
463
- email_intro: 'Kohdetta %{amendable_title} koskeva muutos on julkaistu uutena kohteena %{amendable_type}. Näet sen tältä sivulta:'
520
+ email_intro: 'Kohdetta %{amendable_title} koskeva muutos on julkaistu uutena kohteena %{amendable_type}. Voit tutustua siihen tältä sivulta:'
464
521
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta %{amendable_title}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
465
522
  email_subject: Muutos %{emendation_author_nickname} on julkaistu uutena %{amendable_type} -kohteena
466
523
  notification_title: <a href="%{emendation_path}">Hylätty muutos</a> kohteelle <a href="%{amendable_path}">%{amendable_title}</a> on julkaistu uutena %{amendable_type} -kohteena käyttäjän <a href="%{emendation_author_path}">%{emendation_author_nickname}</a> toimesta.
467
524
  amendment_rejected:
468
525
  affected_user:
469
- email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hylätty. Näet sen tältä sivulta:'
470
- email_outro: Olet saanut tämän ilmoituksen, koska olet kirjailija %{amendable_title}.
526
+ email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hylätty. Voit tutustua siihen tältä sivulta:'
527
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet luonut kohteen %{amendable_title}.
471
528
  email_subject: Kohdetta %{amendable_title} koskeva muutos on hylätty käyttäjältä %{emendation_author_nickname}
472
529
  notification_title: Käyttäjän <a href="%{emendation_author_path}">%{emendation_author_nickname}</a> luoma <a href="%{emendation_path}">muutos</a> hylättiin kohteelle <a href="%{amendable_path}">%{amendable_title}</a>.
473
530
  follower:
474
- email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hylätty. Näet sen tältä sivulta:'
531
+ email_intro: 'Kohdetta %{amendable_title} koskeva muutos on hylätty. Voit tutustua siihen tältä sivulta:'
475
532
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta %{amendable_title}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
476
533
  email_subject: Kohdetta %{amendable_title} koskeva muutos on hylätty käyttäjältä %{emendation_author_nickname}
477
534
  notification_title: Käyttäjän <a href="%{emendation_author_path}">%{emendation_author_nickname}</a> luoma <a href="%{emendation_path}">muutos</a> hylättiin kohteelle <a href="%{amendable_path}">%{amendable_title}</a>.
478
535
  attachments:
479
536
  attachment_created:
480
- email_intro: 'Uusi asiakirja on lisätty kohteeseen %{resource_title}. Näet sen tältä sivulta:'
537
+ email_intro: 'Uusi asiakirja on lisätty kohteeseen %{resource_title}. Voit tutustua siihen tältä sivulta:'
481
538
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta %{resource_title}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
482
539
  email_subject: Päivitys kohteessa %{resource_title}
483
540
  notification_title: <a href="%{resource_path}">Uusi dokumentti</a> on lisätty kohteeseen <a href="%{attached_to_url}">%{resource_title}</a>
484
541
  components:
485
542
  component_published:
486
- email_intro: 'Osio %{resource_title} on nyt käytössä kohteessa %{participatory_space_title}. Näet sen tältä sivulta:'
543
+ email_intro: 'Osio %{resource_title} on nyt käytössä kohteessa %{participatory_space_title}. Voit tutustua siihen tältä sivulta:'
487
544
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta %{participatory_space_title}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
488
545
  email_subject: Päivitys kohteessa %{participatory_space_title}
489
546
  notification_title: Osio %{resource_title} on nyt aktiivinen kohteessa <a href="%{resource_path}">%{participatory_space_title}</a>
@@ -506,41 +563,56 @@ fi:
506
563
  groups:
507
564
  demoted_membership:
508
565
  email_intro: Ryhmän <a href="%{resource_url}">%{user_group_name}</a> ylläpitäjä on poistanut ylläpitäjän oikeutesi kyseiselle ryhmälle.
509
- email_outro: Saat tämän ilmoituksen, koska olet kyseisen ryhmän jäsen.
566
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet kyseisen ryhmän jäsen.
510
567
  email_subject: Et ole enää ryhmän %{user_group_name} ylläpitäjä!
511
568
  notification_title: Et ole enää ryhmän <a href="%{resource_path}">%{user_group_name}</a> ylläpitäjä.
512
569
  invited_to_group:
513
570
  email_intro: Ryhmän <a href="%{resource_url}">%{user_group_name}</a> ylläpitäjä on kutsunut sinut liittymään kyseiseen ryhmään.
514
- email_outro: Saat tämän ilmoituksen, koska sinut on kutsuttu ryhmään. Tarkista profiilisi Ryhmät-välilehti ja hyväksy kutsu.
571
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska sinut on kutsuttu ryhmään. Tarkista profiilisi Ryhmät-välilehti ja hyväksy kutsu.
515
572
  email_subject: Sinut on kutsuttu liittymään ryhmään %{user_group_name}!
516
573
  notification_title: Sinut on kutsuttu liittymään ryhmään <a href="%{resource_path}">%{user_group_name}</a>. Tarkista profiilisi <a href="%{groups_profile_tab_path}">Ryhmät-sivu</a> hyväksyäksesi kutsun!
517
574
  join_request_accepted:
518
575
  email_intro: Onnittelut! Ryhmän <a href="%{resource_url}">%{user_group_name}</a> ylläpitäjä on hyväksynyt pyyntösi liittyä kyseiseen ryhmään.
519
- email_outro: Saat tämän ilmoituksen, koska liittymispyyntöäsi on päivitetty.
576
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska liittymispyyntöäsi on päivitetty.
520
577
  email_subject: Sinut on hyväksytty ryhmään %{user_group_name}!
521
578
  notification_title: Sinut on hyväksytty ryhmään <a href="%{resource_path}">%{user_group_name}</a>.
522
579
  join_request_created:
523
580
  email_intro: Joku pyysi sinua liittymään ryhmään %{user_group_name}. Voit hyväksyä tai hylätä kutsun <a href="%{resource_url}">ryhmän jäsenten sivulta</a>.
524
- email_outro: Saat tämän ilmoituksen, koska voit hallita ryhmää %{user_group_name}.
581
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska voit hallita ryhmää %{user_group_name}.
525
582
  email_subject: Joku pyysi sinua liittymään ryhmään %{user_group_name}!
526
583
  notification_title: Joku pyysi sinua liittymään ryhmään %{user_group_name}. Voit hyväksyä tai hylätä kutsun <a href="%{resource_path}">ryhmän jäsenten sivulta</a>.
527
584
  join_request_rejected:
528
585
  email_intro: Ryhmän <a href="%{resource_url}">%{user_group_name}</a> ylläpitäjä hylkäsi pyyntösi liittyä kyseiseen ryhmään.
529
- email_outro: Saat tämän ilmoituksen, koska liittymispyyntöäsi on päivitetty.
586
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska liittymispyyntöäsi on päivitetty.
530
587
  email_subject: Pyyntösi liittyä ryhmään %{user_group_name} on hylätty!
531
588
  notification_title: Pyyntösi liittyä ryhmään <a href="%{resource_path}">%{user_group_name}</a> on hylätty.
532
589
  promoted_to_admin:
533
590
  email_intro: Ryhmän <a href="%{resource_url}">%{user_group_name}</a> ylläpitäjä on antanut sinulle ylläpitäjän oikeudet kyseiseen ryhmään.
534
- email_outro: Saat tämän ilmoituksen, koska olet kyseisen ryhmän jäsen.
591
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet kyseisen ryhmän jäsen.
535
592
  email_subject: Olet nyt ryhmän %{user_group_name} ylläpitäjä!
536
593
  notification_title: Olet nyt ryhmän <a href="%{resource_path}">%{user_group_name}</a> ylläpitäjä.
537
594
  removed_from_group:
538
595
  email_intro: Ryhmän <a href="%{resource_url}">%{user_group_name}</a> ylläpitäjä on poistanut sinut kyseisestä ryhmästä.
539
- email_outro: Saat tämän ilmoituksen, koska olit kyseisen ryhmän jäsen.
596
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olit kyseisen ryhmän jäsen.
540
597
  email_subject: Sinut on poistettu ryhmästä %{user_group_name}!
541
598
  notification_title: Sinut on poistettu ryhmästä <a href="%{resource_path}">%{user_group_name}</a>.
599
+ user_group_created:
600
+ email_intro: Uusi ryhmä on luotu nimellä %{user_group_name}. Voit varmentaa ryhmän <a href="%{groups_admin_url}">hallintapaneelin kautta</a>.
601
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet palvelun hallintakäyttäjä.
602
+ email_subject: Uusi ryhmä on luotu
603
+ notification_title: Uusi ryhmä nimellä %{user_group_name} on luotu. Voit varmentaa ryhmän <a href="%{groups_admin_path}">hallintapaneelin kautta</a>.
604
+ user_group_updated:
605
+ email_intro: Ryhmä nimeltä %{user_group_name} on päivittänyt profiiliaan, jättäen käyttäjän varmentamattomaksi. Voit varmentaa ryhmän <a href="%{groups_admin_url}">hallintapaneelin kautta</a>.
606
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet palvelun hallintakäyttäjä.
607
+ email_subject: Ryhmä on päivittänyt profiiliaan
608
+ 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>.
542
609
  notification_event:
543
610
  notification_title: Kohteelle <a href="%{resource_path}">%{resource_title}</a> järjestettiin tapahtuma.
611
+ resource_endorsed:
612
+ email_intro: '%{endorser_name} %{endorser_nickname}, jota seuraat, on juuri suositellut kohdetta "%{resource_title}" ja uskomme, että tämä voi kiinnostaa sinua. Tutustu ehdotukseen ja osallistu:'
613
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet seuraat käyttäjää %{endorser_nickname}. Voit lopettaa ilmoitusten vastaanottamisen edellä esitetyn linkin kautta.
614
+ email_subject: "%{endorser_nickname} on tehnyt uuden suosituksen"
615
+ notification_title: <a href="%{endorser_path}">%{endorser_name} %{endorser_nickname}</a> on suositellut kohdetta <a href="%{resource_path}">%{resource_title}</a>.
544
616
  users:
545
617
  profile_updated:
546
618
  email_intro: Seuraamasi käyttäjän %{name} (%{nickname}) <a href="%{resource_url}">profiilisivua</a> on päivitetty.
@@ -549,7 +621,7 @@ fi:
549
621
  notification_title: Seuraamasi käyttäjän %{name} (%{nickname}) <a href="%{resource_path}">profiilisivua</a> on päivitetty.
550
622
  export_mailer:
551
623
  data_portability_export:
552
- click_button: Klikkaa seuraavaa painiketta ladataksesi tietosi. <br/> Tiedosto on käytettävissäsi %{date} saakka.
624
+ click_button: 'Klikkaa seuraavaa painiketta ladataksesi tietosi. <br/> Tiedosto on käytettävissäsi %{date} saakka.'
553
625
  download: Lataa
554
626
  export:
555
627
  ready: Tähän viestiin on liitetty palvelusta löytyvät tiedot zip-pakettina.
@@ -572,6 +644,9 @@ fi:
572
644
  title: Sormenjälki
573
645
  value: Arvo
574
646
  followers:
647
+ followers_count:
648
+ one: "%{count} seuraaja"
649
+ other: "%{count} seuraajaa"
575
650
  no_followers: Ei vielä seuraajia.
576
651
  following:
577
652
  no_followings: Ei vielä seuraa ketään tai mitään.
@@ -579,6 +654,7 @@ fi:
579
654
  create:
580
655
  button: Seuraa
581
656
  error: Tämän kohteen seuraaminen epäonnistui.
657
+ participatory_space: Seuraat jo osallistumistilaa <span class="show-for-sr">%{resource_name}</span>
582
658
  destroy:
583
659
  button: Lopeta seuranta
584
660
  error: Tämän kohteen seuraamisen lopetus epäonnistui.
@@ -591,6 +667,18 @@ fi:
591
667
  password: Salasana on liian lyhyt.
592
668
  password_confirmation: Salasanan vahvistuksen on oltava sama kuin salasanan.
593
669
  error: Tässä kentässä on virhe.
670
+ file_help:
671
+ file:
672
+ explanation: 'Tiedoston ohjeistus:'
673
+ message_1: On oltava kuva tai asiakirja.
674
+ message_2: Kuvina käytä mieluiten vaakasuintaisia kuvia, palvelu rajaa kuvaa.
675
+ image:
676
+ explanation: 'Kuvan ohjeistus:'
677
+ message_1: Käytä mieluiten vaakasuuntaista kuvaa, jossa ei ole tekstiä.
678
+ message_2: Palvelu rajaa kuvaa.
679
+ file_validation:
680
+ allowed_file_extensions: 'Sallitut tiedostopäätteet: %{extensions}'
681
+ max_file_size: 'Tiedoston koon rajoitus: %{megabytes}Mt'
594
682
  remove_this_file: Poista tiedosto
595
683
  gamification:
596
684
  all_badges_link: Kaikki saatavilla olevat kunniamerkit.
@@ -712,7 +800,7 @@ fi:
712
800
  help:
713
801
  main_topic:
714
802
  default_page:
715
- content: "<p>Palvelussa %{organization} voit osallistua ja päättää eri aiheista ylävalikossa näkyvien osallisuustilojen kautta: prosessit, ryhmät, aloitteet ja kuulemiset.</p> <p>Jokaisessa tilassa voit osallistua: tehdä ehdotuksia - itsenäisesti tai muiden ihmisten kanssa, osallistua keskusteluihin, priorisoida toteutettavia hankkeita sekä osallistua tapaamisiin ja muihin toimiin.</p>\n"
803
+ content: "<p>Palvelussa %{organization} voit osallistua ja päättää eri aiheista ylävalikossa näkyvien osallistumistilojen kautta: prosessit, ryhmät, aloitteet ja kuulemiset.</p> <p>Jokaisessa tilassa voit osallistua: tehdä ehdotuksia - itsenäisesti tai muiden ihmisten kanssa, osallistua keskusteluihin, priorisoida toteutettavia hankkeita sekä osallistua tapaamisiin ja muihin toimiin.</p>\n"
716
804
  title: Mitä voin tehdä palvelussa %{organization}?
717
805
  description: Lue lisää palvelusta %{organization}
718
806
  title: Yleisiä ohjeita
@@ -726,13 +814,13 @@ fi:
726
814
  log:
727
815
  base_presenter:
728
816
  create: "%{user_name} loi %{resource_name}"
729
- create_with_space: "%{user_name} loi %{resource_name} tilassa %{space_name}"
817
+ create_with_space: "%{user_name} loi %{resource_name} osallistumistilassa %{space_name}"
730
818
  delete: "%{user_name} poisti %{resource_name}"
731
- delete_with_space: "%{user_name} poisti %{resource_name} tilassa %{space_name}"
819
+ delete_with_space: "%{user_name} poisti %{resource_name} osallistumistilassa %{space_name}"
732
820
  unknown_action: "%{user_name} suoritti toimenpiteen koskien kohdetta %{resource_name}"
733
- unknown_action_with_space: "%{user_name} suoritti toimenpiteen koskien kohdetta %{resource_name} tilassa %{space_name}"
821
+ unknown_action_with_space: "%{user_name} suoritti toimenpiteen koskien kohdetta %{resource_name} osallistumistilassa %{space_name}"
734
822
  update: "%{user_name} päivitti %{resource_name}"
735
- update_with_space: "%{user_name} päivitti %{resource_name} tilassa %{space_name}"
823
+ update_with_space: "%{user_name} päivitti %{resource_name} osallistumistilassa %{space_name}"
736
824
  value_types:
737
825
  area_presenter:
738
826
  not_found: 'Aluetta ei löytynyt tietokannasta (ID: %{id})'
@@ -744,6 +832,13 @@ fi:
744
832
  not_found: 'Teeman tyyppiä ei löytynyt tietokannasta (ID: %{id})'
745
833
  managed_users:
746
834
  expired_session: Käyttäjän hallintaistunto on vanhentunut.
835
+ map:
836
+ dynamic:
837
+ screen_reader_explanation: Seuraavassa elementissä on kartta, joka esittää tämän sivun tietueet karttapisteinä. Elementtiä voi käyttää ruudunlukijalla, mutta se voi olla vaikeaselkoinen.
838
+ skip_button: Ohita kartta
839
+ static:
840
+ latlng_text: 'leveysaste: %{latitude}, pituusaste: %{longitude}'
841
+ map_service_brand: OpenStreetMap
747
842
  members:
748
843
  no_members: Tällä käyttäjäryhmällä ei ole vielä yhtään jäsentä.
749
844
  menu:
@@ -751,37 +846,85 @@ fi:
751
846
  home: Etusivu
752
847
  messaging:
753
848
  conversation_mailer:
849
+ comanagers_new_conversation:
850
+ admin_in_group: Tämä viesti on lähetetty sinulle, koska olet hallintakäyttäjä ryhmässä %{group}.
851
+ greeting: Hei %{recipient}!
852
+ intro: "%{manager} on aloittanut uuden keskustelun ryhmän %{group} nimellä. Napsauta tätä linkkiä nähdäksesi keskustelun:"
853
+ outro: Nauti decidimistä!
854
+ subject: "%{manager} on aloittanut uuden keskutelun ryhmänä %{group}"
855
+ comanagers_new_message:
856
+ admin_in_group: Tämä viesti on lähetetty sinulle, koska olet hallintakäyttäjä ryhmässä %{group}.
857
+ greeting: Hei %{recipient}!
858
+ intro: "%{manager} on lähettänyt uusia viestejä keskustelussa ryhmän %{group} nimellä. Napsauta tätä linkkiä nähdäksesi ne:"
859
+ outro: Nauti decidimistä!
860
+ subject: "%{manager} on lähettänyt uusia viestejä ryhmänä %{group}"
754
861
  new_conversation:
755
862
  greeting: Hei, %{recipient}!
756
863
  intro: "%{sender} on aloittanut uuden keskustelun kanssasi. Napsauta tätä linkkiä nähdäksesi keskustelun:"
757
864
  outro: Nauti decidimistä!
758
865
  subject: "%{sender} on aloittanut keskustelun kanssasi"
866
+ new_group_conversation:
867
+ admin_in_group: Tämä viesti on lähetetty sinulle, koska olet hallintakäyttäjä ryhmässä %{group}.
868
+ greeting: Hei %{recipient}!
869
+ intro: "%{sender} on aloittanut uuden keskustelun ryhmänä %{group}. Napsauta tätä linkkiä nähdäksesi keskustelun:"
870
+ outro: Nauti decidimistä!
871
+ subject: "%{sender} on aloittanut keskustelun ryhmän %{group} kanssa"
872
+ new_group_message:
873
+ admin_in_group: Tämä viesti on lähetetty sinulle, koska olet hallintakäyttäjä ryhmässä %{group}.
874
+ greeting: Hei %{recipient}!
875
+ intro: "%{sender} on lähettänyt uusia viestejä keskustelussa ryhmän %{group} kesken. Napsauta tätä linkkiä nähdäksesi ne:"
876
+ outro: Nauti decidimistä!
877
+ subject: "Ryhmällä %{group} on uusia viestejä lähettäjältä %{sender}"
759
878
  new_message:
760
879
  greeting: Hei, %{recipient}!
761
880
  intro: "%{sender} on lähettänyt uusia viestejä keskusteluusi. Klikkaa tästä linkistä nähdäksesi ne:"
762
881
  outro: Nauti decidimistä!
763
882
  subject: Sinulla on uusia viestejä lähettäjältä %{sender}
764
883
  conversations:
884
+ add_conversation_users:
885
+ add_max_users: 'Lisää käyttäjiä keskusteluun: enintään 9 käyttäjää'
886
+ add_users_placeholder: Hae...
887
+ modal_title: Uusi keskustelu
888
+ no_results: Ei tuloksia
889
+ participant_with_disabled_message_reception: Tämä osallistuja on estänyt itseltään viestien vastaanottamisen
890
+ conversation:
891
+ show: Näytä keskustelu henkilöiden %{sender} kanssa
765
892
  create:
766
893
  error: Keskustelua ei aloitettu. Yritä myöhemmin uudelleen
894
+ error_modal:
895
+ close: Sulje ikkuna
896
+ correct_errors: Korjaa virheet ja yritä uudestaan.
897
+ intro: 'Viestisi sisältää seuraavia virheitä:'
898
+ ok: OK
767
899
  index:
900
+ ago: sitten
901
+ close: Sulje ikkuna
902
+ from: Lähettäjältä
903
+ groups: Omat ryhmäni
904
+ last_message: Viimeisin viesti
905
+ new_conversation: Uusi keskustelu
906
+ next: Seuraava
768
907
  no_conversations: Sinulla ei vielä ole keskusteluja
769
908
  title: Keskustelut
770
909
  reply:
910
+ placeholder: Vastauksesi...
771
911
  send: Lähetä
772
912
  title: Vastaa
773
913
  show:
914
+ back: Takaisin kaikkiin keskusteluihin
915
+ chat_with: Keskustelu osallistujien kanssa
916
+ not_allowed: Tämä käyttäjä ei ole sallinut yksityisviestejä muilta käyttäjiltä.
774
917
  title: 'Keskustelu: %{usernames}'
775
918
  start:
776
919
  send: Lähetä
777
920
  title: Aloita keskustelu
778
921
  update:
779
- error: Viestiä ei lähetetty. Yritä myöhemmin uudelleen
922
+ error: Viestiä ei lähetetty virheen takia
780
923
  metrics:
781
924
  download:
782
925
  csv: Lataa tiedot (csv)
783
926
  followers:
784
- description: Tätä osallisuustilaa seuraavien käyttäjien määrä
927
+ description: Tätä osallistumistilaa seuraavien käyttäjien määrä
785
928
  object: seuraajat
786
929
  title: Seuraajat
787
930
  participants:
@@ -797,6 +940,25 @@ fi:
797
940
  note: Tämä viesti on lähetetty sinulle, koska olet tilannut uutiskirjeet organisaatiolta %{organization_name}. Voit muuttaa asetuksiasi <a href="%{link}">ilmoitusten sivulla</a>.
798
941
  see_on_website: Etkö näe tätä sähköpostia oikein? Avaa sähköposti <a href="%{link}" target="_blank">selaimessasi</a>.
799
942
  unsubscribe: Voit lopettaa tämäntyyppisten sähköpostien vastaanottamisen <a href="%{link}" target="_blank" class="unsubscribe">poistumalla sähköpostilistalta</a>.
943
+ newsletter_templates:
944
+ basic_only_text:
945
+ body_preview: 'Esimerkkiteksti vietsin rungolle: Lyökämme käsi kätehen, sormet sormien lomahan, lauloaksemme hyviä, parahia pannaksemme, kuulla noien kultaisien, tietä mielitehtoisien, nuorisossa nousevassa, kansassa kasuavassa: noita saamia sanoja, virsiä virittämiä vyöltä vanhan Väinämöisen, alta ahjon Ilmarisen, päästä kalvan Kaukomielen, Joukahaisen jousen tiestä, Pohjan peltojen periltä, Kalevalan kankahilta.'
946
+ name: Yksinkertainen (vain teksti)
947
+ basic_only_text_settings_form:
948
+ body: Tekstin runko
949
+ interpolations_hint: 'Vinkki: Voit käyttää "%{name}" -viittausta tekstirungossa tai otsikossa ja sen tilalle kirjoitetaan vastaanottajan nimi.'
950
+ image_text_cta:
951
+ body_preview: 'Esimerkkiteksti vietsin rungolle: Lyökämme käsi kätehen, sormet sormien lomahan, lauloaksemme hyviä, parahia pannaksemme, kuulla noien kultaisien, tietä mielitehtoisien, nuorisossa nousevassa, kansassa kasuavassa: noita saamia sanoja, virsiä virittämiä vyöltä vanhan Väinämöisen, alta ahjon Ilmarisen, päästä kalvan Kaukomielen, Joukahaisen jousen tiestä, Pohjan peltojen periltä, Kalevalan kankahilta.'
952
+ cta_text_preview: Toimintopainikkeen (Call to Action) teksti
953
+ introduction_preview: 'Esimerkkiteksti esittelytekstille: Lyökämme käsi kätehen, sormet sormien lomahan, lauloaksemme hyviä, parahia pannaksemme, kuulla noien kultaisien, tietä mielitehtoisien, nuorisossa nousevassa, kansassa kasuavassa: noita saamia sanoja, virsiä virittämiä vyöltä vanhan Väinämöisen, alta ahjon Ilmarisen, päästä kalvan Kaukomielen, Joukahaisen jousen tiestä, Pohjan peltojen periltä, Kalevalan kankahilta.'
954
+ name: Kuva, teksti ja toimintopainike (Call to Action)
955
+ image_text_cta_settings_form:
956
+ body: Sisältöteksti
957
+ cta_text: Toimintopainikkeen (Call To Action) teksti
958
+ cta_url: Toimintopainikkeen (Call To Action) URL-osoite
959
+ interpolations_hint: 'Vinkki: Voit käyttää "%{name}" -viittausta esittelytekstissä, viestirungossa tai toimintopainikkeen tekstissä ja sen tilalle kirjoitetaan vastaanottajan nimi.'
960
+ introduction: Esittelyteksti
961
+ main_image: Pääkuva
800
962
  newsletters:
801
963
  unsubscribe:
802
964
  check_subscription: Jos haluat muuttaa asetuksiasi, voit tehdä sen <a href="%{link}" target="_blank">asetussivulla</a>
@@ -822,6 +984,8 @@ fi:
822
984
  no_notifications: Ei vielä ilmoituksia.
823
985
  notifications_settings:
824
986
  show:
987
+ allow_public_contact: Salli kenen tahansa lähettää minulle yksityisviestejä, vaikka en seuraisi heitä.
988
+ direct_messages: Vastaanota yksityisviestejä kaikilta
825
989
  email_on_notification: Haluan saada sähköpostia aina, kun saan ilmoituksen.
826
990
  everything_followed: Kaikki mitä seuraan
827
991
  newsletter_notifications: Haluan vastaanottaa uutiskirjeitä
@@ -852,12 +1016,12 @@ fi:
852
1016
  how_to_participate: Kuinka osallistun prosessiin?
853
1017
  meetings: Tapahtumat
854
1018
  meetings_explanation: Selvitä missä ja milloin voit osallistua julkisiin tapahtumiin.
855
- more_info: Lisätietoja
1019
+ more_info: Lisätietoja kohteesta %{resource_name}
856
1020
  proposals: Ehdotukset
857
1021
  proposals_explanation: Tee ehdotuksia, tue muiden tekemiä ehdotuksia ja edistä muutoksia, joita haluat nähdä.
858
1022
  footer_sub_hero:
859
1023
  footer_sub_hero_body: Rakennetaan avoimempi, läpinäkyvämpi ja yhteisöllisempi yhteiskunta.<br /> Liity, osallistu ja päätä.
860
- footer_sub_hero_headline: Tervetuloa yhteisölliseen osallisuuspalveluun %{organization}.
1024
+ footer_sub_hero_headline: Tervetuloa yhteisölliseen osallistumispalveluun %{organization}.
861
1025
  register: Rekisteröidy
862
1026
  hero:
863
1027
  participate: Osallistu
@@ -894,7 +1058,7 @@ fi:
894
1058
  participatory_space:
895
1059
  metrics:
896
1060
  headline: Osallistuminen lukuina
897
- link: Näytä kaikki tilastot
1061
+ link: Näytä kaikki tilastomittarit
898
1062
  terms_and_conditions:
899
1063
  accept:
900
1064
  error: Ehtojen hyväksyminen epäonnistui.
@@ -924,10 +1088,12 @@ fi:
924
1088
  show:
925
1089
  activity: Aktiviteetti
926
1090
  badges: Kunniamerkit
1091
+ conversations: Keskustelut
927
1092
  followers: Seuraajat
928
1093
  following: Seurattavat
929
1094
  groups: Ryhmät
930
1095
  members: Jäsenet
1096
+ officialized: Virallinen osallistuja
931
1097
  timeline: Aikajana
932
1098
  view_full_profile: Näytä koko profiili
933
1099
  sidebar:
@@ -953,23 +1119,37 @@ fi:
953
1119
  report_html: <p>Tämä <a href="%{url}">sisältö</a> on piilotettu automaattisesti.</p>
954
1120
  subject: Resurssi on piilotettu automaattisesti
955
1121
  report:
1122
+ authors: Tekijät
1123
+ content: Ilmoitettu sisältö
1124
+ date: Ilmoituksen aika
1125
+ details: Tarkemmat tiedot
956
1126
  hello: Hei %{name},
957
1127
  manage_moderations: Hallitse moderointeja
1128
+ participatory_space: Osallistumistila
1129
+ reason: Syy
958
1130
  report_html: <p>Tämä <a href="%{url}">sisältö</a> on ilmoitettu.</p>
959
1131
  subject: Resurssi on ilmoitettu
960
1132
  reports:
961
1133
  create:
962
1134
  error: Raportin luonti epäonnistui. Yritä uudestaan.
963
1135
  success: Ilmoituksen luonti onnistui. Hallintakäyttäjä tarkastaa sen.
1136
+ resource_endorsements:
1137
+ create:
1138
+ error: Suosituksen antaminen ei onnistunut.
964
1139
  scopes:
965
1140
  global: Yleinen teema
966
1141
  picker:
967
1142
  cancel: Peruuta
1143
+ change: Muuta valittua teemaa
968
1144
  choose: Valitse
1145
+ currently_selected: Tällä hetkellä valittu teema
969
1146
  title: Valitse %{field}
970
1147
  prompt: Valitse teema
971
1148
  scopes: Teemat
1149
+ scopes_picker_input:
1150
+ select_scope: 'Valitse teema (tämänhetkinen valinta: %{current})'
972
1151
  search:
1152
+ results: Hakutulokset
973
1153
  results_found_for_term: 'Tulosten määrä haulle "%{term}": %{count}'
974
1154
  term_input_placeholder: Hae
975
1155
  searches:
@@ -991,7 +1171,16 @@ fi:
991
1171
  one: "%{count} tulos"
992
1172
  other: "%{count} tulosta"
993
1173
  view_all: Näytä kaikki (%{count})
1174
+ security:
1175
+ selfxss_warning:
1176
+ description: Tämä selainominaisuus on tarkoitettu kehittäjille ja sinun ei tule liittää tähän mitään tekstiä, jos sinulta on pyydetty sellaista. Tekstin liittäminen tähän ikkunaan voi vaarantaa yksityisyytesi ja antaa hakkereille pääsyn tilillesi.
1177
+ title: Seis!
994
1178
  shared:
1179
+ confirm_modal:
1180
+ cancel: Peruuta
1181
+ close_modal: Sulje ikkuna
1182
+ ok: OK
1183
+ title: Vahvista
995
1184
  embed_modal:
996
1185
  close_window: Sulje ikkuna
997
1186
  embed: Liitä tämä koodi sivullesi
@@ -999,6 +1188,9 @@ fi:
999
1188
  extended_navigation_bar:
1000
1189
  more: Lisää
1001
1190
  unfold: Avaa
1191
+ filter_form_help:
1192
+ help: Alla oleva lomake suodattaa hakutulokset dynaamisesti, kun hakuehtoja muutetaan.
1193
+ skip: Siirry tuloksiin
1002
1194
  flag_modal:
1003
1195
  already_reported: Tästä sisällöstä on jo tehty ilmoitus ja palvelun hallinnoija tarkastaa sen.
1004
1196
  close: Sulje
@@ -1007,12 +1199,14 @@ fi:
1007
1199
  offensive: Sisältää rasismia, seksismiä, loukkauksia, henkilöihin kohdistuneita hyökkäyksiä, tappouhkauksia, itsemurhapyyntöjä tai mitä tahansa vihapuhetta.
1008
1200
  report: Tee ilmoitus
1009
1201
  spam: Tämä ehdotus sisältää klikkihoukutteita, mainostusta, huijauksia tai bottiskriptejä.
1010
- title: Ilmoita ongelmasta
1202
+ title: Ilmoita asiatonta sisältöä
1011
1203
  floating_help:
1204
+ close: Sulje ohjeet
1012
1205
  help: Ohjeet
1013
1206
  follow_button:
1014
1207
  sign_in_before_follow: Kirjaudu sisään ennen tämän toiminnon suorittamista
1015
1208
  login_modal:
1209
+ close_modal: Sulje ikkuna
1016
1210
  please_sign_in: Kirjaudu sisään
1017
1211
  sign_up: Rekisteröidy
1018
1212
  participatory_space_filters:
@@ -1026,15 +1220,52 @@ fi:
1026
1220
  select_user_group: Valitse ryhmä
1027
1221
  results_per_page:
1028
1222
  label: 'Tulosten määrä sivulla:'
1223
+ title: Valitse tulosten määrä sivua kohti
1029
1224
  share_modal:
1030
1225
  close_window: Sulje ikkuna
1031
1226
  share: Jaa
1032
1227
  share_link: Jaa linkki
1033
- version_author:
1034
- deleted: Käyttäjä poistettu
1228
+ tags:
1229
+ filter_results_for_category: 'Rajaa tulokset aihepiirin mukaan: %{resource}'
1230
+ filter_results_for_scope: 'Rajaa tulokset teeman mukaan: %{resource}'
1231
+ translation_bar:
1232
+ help_text: "<strong>Varoitus:</strong> Sisältö saatetaan kääntää automaattisesti eikä koneelliset käännökset ole 100% tarkkoja."
1233
+ show_original: Näytä alkuperäinen teksti
1234
+ show_translated: Näytä automaattisesti käännetty teksti
1035
1235
  user_activity:
1036
1236
  index:
1037
1237
  no_activities_warning: Tämä käyttäjä ei ole vielä ollut aktiivinen.
1238
+ user_contact_disabled: Tämä osallistuja ei ole sallinut yksityisviestejä muilta käyttäjiltä.
1239
+ user_conversations:
1240
+ create:
1241
+ error: Viestiä ei voitu luoda. Yritä myöhemmin uudestaan
1242
+ existing_error: Viestiä ei voitu luoda, koska keskustelu on jo olemassa. Yritä uudestaan nyt.
1243
+ success: Keskustelun aloittaminen onnistui!
1244
+ index:
1245
+ add_max_users: 'Lisää käyttäjiä keskusteluun: enintään 9 käyttäjää'
1246
+ add_users_placeholder: Hae...
1247
+ close: Sulje
1248
+ conversations_info: Keskustelut ovat yksityisiä. Kukaan muu ei voi nähdä niitä. Voit aloittaa keskustelun osallistujien tai ryhmien kanssa tässä palvelussa.
1249
+ from: Lähettäjältä
1250
+ last_message: Viimeisin viesti
1251
+ modal_title: Uusi keskustelu
1252
+ new_conversation: Uusi keskustelu
1253
+ next: Seuraava
1254
+ no_conversations_warning: Ei vielä yhtään keskustelua.
1255
+ no_results: Ei tuloksia
1256
+ participant_with_disabled_message_reception: Tämä osallistuja on estänyt itseltään viestien vastaanottamisen
1257
+ time_ago: "%{time} sitten"
1258
+ new:
1259
+ title: Aloita keskustelu
1260
+ reply:
1261
+ placeholder: Vastauksesi...
1262
+ send: Lähetä
1263
+ title_reply: Vastaa
1264
+ show:
1265
+ not_allowed: Tämä käyttäjä ei ole sallinut yksityisviestejä muilta käyttäjiltä.
1266
+ title: 'Keskustelu: %{usernames}'
1267
+ update:
1268
+ error: Viestiä ei lähetetty. Yritä myöhemmin uudelleen
1038
1269
  user_interests:
1039
1270
  show:
1040
1271
  my_interests: Omat kiinnostuksen kohteet
@@ -1044,6 +1275,33 @@ fi:
1044
1275
  update:
1045
1276
  error: Kiinnostuksen kohteiden päivitys epäonnistui.
1046
1277
  success: Kiinnostuksen kohteiden päivitys onnistui.
1278
+ version:
1279
+ show:
1280
+ back_to_resource: Siirry takaisin
1281
+ changes_at_title: Muutokset kohteessa "%{title}"
1282
+ number_of_versions: Versiot
1283
+ show_all_versions: Näytä kaikki versiot
1284
+ version_author: Version laatija
1285
+ version_created_at: Version luontiaika
1286
+ version_number: Versionumero
1287
+ version_number_out_of_total: "%{current_version} / %{total_count}"
1288
+ version_author:
1289
+ show:
1290
+ deleted: Käyttäjä poistettu
1291
+ versions:
1292
+ resource_version:
1293
+ of_versions: "(yhteensä %{number} kpl)"
1294
+ see_other_versions: näytä muut versiot
1295
+ version: Versio %{number}
1296
+ versions_list:
1297
+ show:
1298
+ back_to_resource: Siirry takaisin
1299
+ changes_at_title: Muutokset kohteessa "%{title}"
1300
+ number_of_versions: Versiot
1301
+ title: Versiot
1302
+ versions_list_item:
1303
+ show:
1304
+ version_index: Versio %{index}
1047
1305
  welcome_notification:
1048
1306
  default_body: <p>Hei {{name}}, kiitos liittymisestä palveluun {{organization}} ja tervetuloa!</p><ul><li>Jos haluat saada nopean käsityksen siitä, mitä voit tehdä palvelussa, tutustu <a href="{{help_url}}">ohjeisiin</a>.</li><li>Kun olet lukenut ohjeet, saat ensimmäisen kunniamerkkisi. Tässä on <a href="{{badges_url}}">lista kaikista kunniamerkeistä</a>, joita saat osallistuessasi palvelussa {{organization}}</li><li>Viimeisenä, mutta ei vähäisimpänä, yhdistä voimasi muiden ihmisten kanssa, jaa heidän kanssaan kokemuksiasi osallistumisestasi palvelussa {{organization}}. Tee ehdotuksia, kommentoi, keskustele, mieti tapoja edistää yhteistä hyvää, vakuuta argumenteillasi, vakuutu kuuntelemalla ja lukemalla, ilmaise ideasi konkreettisella ja suoraviivaisella tavalla, vastaa kärsivällisesti ja päättäväisesti, puolusta ajatuksiasi, tee yhteistyötä avoimin mielin ja osallistu muiden ihmisten ideoiden kehittämiseen.</li></ul>
1049
1307
  default_subject: Kiitos liittymisestäsi palveluun {{organization}}!
@@ -1114,7 +1372,7 @@ fi:
1114
1372
  invite_collaborator:
1115
1373
  subject: Sinut on kutsuttu osallistumaan organisaatioon %{organization}
1116
1374
  invite_private_user:
1117
- subject: Sinut on kutsuttu yksityiseen osallisuusprosessiin organisaatiossa %{organization}
1375
+ subject: Sinut on kutsuttu yksityiseen osallistumisprosessiin organisaatiossa %{organization}
1118
1376
  organization_admin_invitation_instructions:
1119
1377
  subject: Sinut on kutsuttu hallitsemaan organisaatiota %{organization}
1120
1378
  password_change:
@@ -1206,6 +1464,7 @@ fi:
1206
1464
  cycle_detected: teeman isäntä ei voi olla sen jälkeläinen
1207
1465
  expired: on vanhentunut, pyydä uutta
1208
1466
  file_size_is_less_than_or_equal_to: tiedoston koko tulee olla %{count} tai vähemmän
1467
+ invalid_time_zone: virheellinen aikavyöhyke
1209
1468
  long_words: sisältää liian pitkiä sanoja (yli 35 merkkiä)
1210
1469
  must_start_with_caps: tulee alkaa isolla kirjaimella
1211
1470
  nesting_too_deep: ei voi olla ala-aihepiirin sisällä
@@ -1218,19 +1477,27 @@ fi:
1218
1477
  too_much_caps: liian monta isoa kirjainta (yli 25% tekstistä)
1219
1478
  too_short: liian lyhyt (alle 15 merkkiä)
1220
1479
  forms:
1221
- required: Vaadittu
1480
+ correct_errors: Lomakkeella on virheitä, korjaa ne jatkaaksesi.
1481
+ length_validator:
1482
+ minimum:
1483
+ one: vähintään %{count} kirjain
1484
+ other: vähintään %{count} kirjainta
1485
+ required: Pakollinen kenttä
1486
+ required_explanation: "* Vaaditut kentät on merkitty tähtimerkillä"
1222
1487
  invisible_captcha:
1223
1488
  sentence_for_humans: Jos olet ihminen, jätä tämä kenttä huomiotta
1224
1489
  timestamp_error_message: Pahoittelut, olit liian nopea! Lähetä lomake uudestaan.
1225
1490
  layouts:
1226
1491
  decidim:
1227
1492
  cookie_warning:
1228
- description_html: Tämä sivusto käyttää evästeitä. Jatkamalla tämän sivuston käyttöä hyväksyt selaimeesi asettamamme evästeet. Lue lisää %{link}.
1229
- link_label: täältä
1493
+ description_html: Tämä sivusto käyttää evästeitä. Jatkamalla tämän sivuston käyttöä hyväksyt selaimeesi asettamamme evästeet. %{link}.
1494
+ link_label: Lue lisää evästeistä
1230
1495
  ok: Hyväksyn
1231
1496
  edit_link:
1232
1497
  edit: Muokkaa
1233
1498
  footer:
1499
+ cc_by_license: Creative Commons -lisenssi
1500
+ decidim_logo: Decidim-logo
1234
1501
  download_open_data: Lataa avoimet datatiedostot
1235
1502
  made_with_open_source: Verkkosivusto luotu <a target="_blank" href="https://github.com/decidim/decidim">vapaan ohjelmiston</a> avulla.
1236
1503
  header:
@@ -1242,9 +1509,19 @@ fi:
1242
1509
  close_session: Sulje istunto
1243
1510
  description_html: Esiinnyt käyttäjänä <b>%{user_name}</b>.
1244
1511
  expire_time_html: Istuntosi vanhenee <b><span class="minutes">%{minutes}</span> minuutin kuluttua</b>.
1512
+ language_chooser:
1513
+ choose_language: Valitse kieli
1245
1514
  notifications_dashboard:
1246
1515
  mark_all_as_read: Merkitse kaikki luetuiksi
1516
+ mark_as_read: Merkitse luetuiksi
1517
+ social_media_links:
1518
+ facebook: "%{organization} Facebookissa"
1519
+ github: "%{organization} GitHubissa"
1520
+ instagram: "%{organization} Instagramissa"
1521
+ twitter: "%{organization} Twitterissä"
1522
+ youtube: "%{organization} YouTubessa"
1247
1523
  user_menu:
1524
+ account: 'Käyttäjätili: %{name}'
1248
1525
  admin_dashboard: Hallintapaneeli
1249
1526
  conversations: Keskustelut
1250
1527
  notifications: Ilmoitukset
@@ -1253,7 +1530,7 @@ fi:
1253
1530
  sign_out: Kirjaudu ulos
1254
1531
  user_profile:
1255
1532
  account: Käyttäjätili
1256
- authorizations: Varmennukset
1533
+ authorizations: Vahvistukset
1257
1534
  delete_my_account: Poista tilini
1258
1535
  my_data: Omat tiedot
1259
1536
  my_interests: Kiinnostuksen kohteeni
@@ -1264,6 +1541,7 @@ fi:
1264
1541
  see_more: Näytä lisää
1265
1542
  locale:
1266
1543
  name: Suomi
1544
+ name_with_error: Suomi (virhe!)
1267
1545
  password_validator:
1268
1546
  domain_included_in_password: liian samankaltainen palvelun verkko-osoitteen kanssa
1269
1547
  email_included_in_password: liian samankaltainen sähköpostisi kanssa
@@ -1311,6 +1589,7 @@ fi:
1311
1589
  invitation_instructions:
1312
1590
  accept_until_format: "%B %d, %Y klo %k:%M"
1313
1591
  long: "%B %d., %Y %H:%M"
1592
+ long_dashed: "%Y-%m-%d %H:%M:%S"
1314
1593
  short: "%d.%m.%Y %H:%M"
1315
1594
  time_of_day: "%H:%M"
1316
1595
  versions:
@@ -1318,13 +1597,22 @@ fi:
1318
1597
  left: Poistot
1319
1598
  right: Lisäykset
1320
1599
  dropdown:
1600
+ choose_diff_view_html: 'HTML-tarkastelutapa:'
1321
1601
  choose_diff_view_mode: 'Vertailutila:'
1602
+ option_escaped: Teknisten elementtien käsittely käytössä
1322
1603
  option_split: Vierekkäin
1604
+ option_unescaped: Teknisten elementtien käsittely pois käytöstä
1323
1605
  option_unified: Yhdistetty
1324
1606
  views:
1325
1607
  pagination:
1326
1608
  first: "&laquo; Ensimmäinen"
1609
+ first_title: Linkki ensimmäiselle sivulle
1327
1610
  last: Viimeinen &raquo;
1611
+ last_title: Linkki viimeiselle sivulle
1328
1612
  next: Seuraava &rsaquo;
1613
+ next_title: Linkki seuraavalle sivulle
1614
+ pagination: Sivutus
1329
1615
  previous: "&lsaquo; Edellinen"
1616
+ previous_title: Linkki edelliselle sivulle
1617
+ title: 'Sivunumero: '
1330
1618
  truncate: "&hellip;"