decidim-plans 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (182) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE-AGPLv3.txt +661 -0
  3. data/README.md +157 -0
  4. data/Rakefile +48 -0
  5. data/app/assets/config/admin/decidim_plans_manifest.js +3 -0
  6. data/app/assets/config/decidim_plans_manifest.css +4 -0
  7. data/app/assets/config/decidim_plans_manifest.js +2 -0
  8. data/app/assets/images/decidim/plans/icon.svg +3 -0
  9. data/app/assets/javascripts/decidim/plans/admin/plans.js.es6 +3 -0
  10. data/app/assets/javascripts/decidim/plans/admin/sections.js.es6 +78 -0
  11. data/app/assets/javascripts/decidim/plans/multifield/component.js.es6 +101 -0
  12. data/app/assets/javascripts/decidim/plans/multifield.js.es6 +5 -0
  13. data/app/assets/javascripts/decidim/plans/plans_form.js.es6 +9 -0
  14. data/app/assets/javascripts/decidim/plans/proposal_picker.js.es6 +41 -0
  15. data/app/assets/javascripts/decidim/plans/remaining_characters.es6 +42 -0
  16. data/app/assets/javascripts/decidim/plans/social_share.js +2 -0
  17. data/app/assets/javascripts/decidim/plans/tab_focus.es6 +20 -0
  18. data/app/assets/stylesheets/decidim/plans/plans_form.scss +26 -0
  19. data/app/assets/stylesheets/decidim/plans/proposal_picker.scss +3 -0
  20. data/app/assets/stylesheets/decidim/plans/social_share.css.scss +22 -0
  21. data/app/cells/decidim/plans/author/flag.erb +5 -0
  22. data/app/cells/decidim/plans/author/withdraw.erb +6 -0
  23. data/app/cells/decidim/plans/author_cell.rb +9 -0
  24. data/app/cells/decidim/plans/coauthorships_cell.rb +23 -0
  25. data/app/cells/decidim/plans/collapsible_authors/show.erb +17 -0
  26. data/app/cells/decidim/plans/collapsible_authors_cell.rb +9 -0
  27. data/app/cells/decidim/plans/plan_activity_cell.rb +19 -0
  28. data/app/cells/decidim/plans/plan_cell.rb +59 -0
  29. data/app/cells/decidim/plans/plan_m/footer.erb +8 -0
  30. data/app/cells/decidim/plans/plan_m_cell.rb +62 -0
  31. data/app/commands/decidim/plans/accept_access_to_plan.rb +53 -0
  32. data/app/commands/decidim/plans/admin/answer_plan.rb +82 -0
  33. data/app/commands/decidim/plans/admin/create_plan.rb +102 -0
  34. data/app/commands/decidim/plans/admin/update_plan.rb +98 -0
  35. data/app/commands/decidim/plans/admin/update_sections.rb +54 -0
  36. data/app/commands/decidim/plans/attachment_methods.rb +78 -0
  37. data/app/commands/decidim/plans/create_plan.rb +90 -0
  38. data/app/commands/decidim/plans/destroy_plan.rb +33 -0
  39. data/app/commands/decidim/plans/nested_updater.rb +26 -0
  40. data/app/commands/decidim/plans/publish_plan.rb +79 -0
  41. data/app/commands/decidim/plans/reject_access_to_plan.rb +46 -0
  42. data/app/commands/decidim/plans/request_access_to_plan.rb +50 -0
  43. data/app/commands/decidim/plans/respond_to_access_request.rb +76 -0
  44. data/app/commands/decidim/plans/update_plan.rb +90 -0
  45. data/app/commands/decidim/plans/withdraw_plan.rb +50 -0
  46. data/app/controllers/concerns/decidim/plans/orderable.rb +53 -0
  47. data/app/controllers/decidim/plans/admin/application_controller.rb +16 -0
  48. data/app/controllers/decidim/plans/admin/plan_answers_controller.rb +40 -0
  49. data/app/controllers/decidim/plans/admin/plans_controller.rb +80 -0
  50. data/app/controllers/decidim/plans/admin/sections_controller.rb +75 -0
  51. data/app/controllers/decidim/plans/application_controller.rb +30 -0
  52. data/app/controllers/decidim/plans/plan_collaborator_requests_controller.rb +53 -0
  53. data/app/controllers/decidim/plans/plan_widgets_controller.rb +19 -0
  54. data/app/controllers/decidim/plans/plans_controller.rb +192 -0
  55. data/app/controllers/decidim/plans/versions_controller.rb +51 -0
  56. data/app/events/decidim/plans/accepted_plan_event.rb +9 -0
  57. data/app/events/decidim/plans/evaluating_plan_event.rb +8 -0
  58. data/app/events/decidim/plans/plan_access_accepted_event.rb +8 -0
  59. data/app/events/decidim/plans/plan_access_rejected_event.rb +8 -0
  60. data/app/events/decidim/plans/plan_access_request_event.rb +27 -0
  61. data/app/events/decidim/plans/plan_access_requested_event.rb +8 -0
  62. data/app/events/decidim/plans/plan_access_requester_accepted_event.rb +8 -0
  63. data/app/events/decidim/plans/plan_access_requester_rejected_event.rb +8 -0
  64. data/app/events/decidim/plans/publish_plan_event.rb +25 -0
  65. data/app/events/decidim/plans/rejected_plan_event.rb +9 -0
  66. data/app/forms/decidim/plans/accept_access_to_plan_form.rb +10 -0
  67. data/app/forms/decidim/plans/access_to_plan_form.rb +35 -0
  68. data/app/forms/decidim/plans/admin/plan_answer_form.rb +19 -0
  69. data/app/forms/decidim/plans/admin/plan_form.rb +88 -0
  70. data/app/forms/decidim/plans/admin/plan_sections_form.rb +20 -0
  71. data/app/forms/decidim/plans/admin/section_form.rb +34 -0
  72. data/app/forms/decidim/plans/attachment_form.rb +20 -0
  73. data/app/forms/decidim/plans/content_form.rb +58 -0
  74. data/app/forms/decidim/plans/plan_form.rb +85 -0
  75. data/app/forms/decidim/plans/reject_access_to_plan_form.rb +9 -0
  76. data/app/forms/decidim/plans/request_access_to_plan_form.rb +20 -0
  77. data/app/helpers/decidim/plans/admin/application_helper.rb +19 -0
  78. data/app/helpers/decidim/plans/application_helper.rb +78 -0
  79. data/app/helpers/decidim/plans/attached_proposals_helper.rb +44 -0
  80. data/app/helpers/decidim/plans/attachments_helper.rb +59 -0
  81. data/app/helpers/decidim/plans/cells_helper.rb +26 -0
  82. data/app/helpers/decidim/plans/plan_cells_helper.rb +67 -0
  83. data/app/helpers/decidim/plans/remaining_characters_helper.rb +32 -0
  84. data/app/helpers/decidim/plans/traceability_helper.rb +79 -0
  85. data/app/helpers/decidim/plans/user_group_helper.rb +23 -0
  86. data/app/models/concerns/decidim/plans/traceable.rb +48 -0
  87. data/app/models/decidim/plans/application_record.rb +10 -0
  88. data/app/models/decidim/plans/attached_proposal.rb +12 -0
  89. data/app/models/decidim/plans/content.rb +21 -0
  90. data/app/models/decidim/plans/paper_trail/version.rb +26 -0
  91. data/app/models/decidim/plans/paper_trail/version_association.rb +14 -0
  92. data/app/models/decidim/plans/plan.rb +206 -0
  93. data/app/models/decidim/plans/plan_collaborator_request.rb +13 -0
  94. data/app/models/decidim/plans/section.rb +16 -0
  95. data/app/permissions/decidim/plans/admin/permissions.rb +44 -0
  96. data/app/permissions/decidim/plans/permissions.rb +67 -0
  97. data/app/presenters/decidim/plans/admin_log/plan_presenter.rb +49 -0
  98. data/app/presenters/decidim/plans/admin_log/value_types/plan_state_presenter.rb +16 -0
  99. data/app/presenters/decidim/plans/content_presenter.rb +25 -0
  100. data/app/presenters/decidim/plans/log/resource_presenter.rb +18 -0
  101. data/app/presenters/decidim/plans/official_author_presenter.rb +38 -0
  102. data/app/presenters/decidim/plans/plan_presenter.rb +48 -0
  103. data/app/queries/decidim/plans/filtered_plans.rb +37 -0
  104. data/app/services/decidim/plans/diff_renderer/base.rb +108 -0
  105. data/app/services/decidim/plans/diff_renderer/categorization.rb +23 -0
  106. data/app/services/decidim/plans/diff_renderer/content.rb +33 -0
  107. data/app/services/decidim/plans/diff_renderer/plan.rb +25 -0
  108. data/app/services/decidim/plans/loggability.rb +19 -0
  109. data/app/services/decidim/plans/plan_builder.rb +68 -0
  110. data/app/services/decidim/plans/plan_search.rb +95 -0
  111. data/app/services/decidim/plans/tracer.rb +29 -0
  112. data/app/views/decidim/plans/admin/plan_answers/edit.html.erb +22 -0
  113. data/app/views/decidim/plans/admin/plans/_bulk-actions.html.erb +9 -0
  114. data/app/views/decidim/plans/admin/plans/_form.html.erb +62 -0
  115. data/app/views/decidim/plans/admin/plans/_js-callout.html.erb +6 -0
  116. data/app/views/decidim/plans/admin/plans/_plan-tr.html.erb +53 -0
  117. data/app/views/decidim/plans/admin/plans/edit.html.erb +7 -0
  118. data/app/views/decidim/plans/admin/plans/index.html.erb +64 -0
  119. data/app/views/decidim/plans/admin/plans/new.html.erb +7 -0
  120. data/app/views/decidim/plans/admin/sections/_bulk-actions.html.erb +7 -0
  121. data/app/views/decidim/plans/admin/sections/_form.html.erb +27 -0
  122. data/app/views/decidim/plans/admin/sections/_section.html.erb +66 -0
  123. data/app/views/decidim/plans/admin/sections/index.html.erb +7 -0
  124. data/app/views/decidim/plans/admin/shared/_info_plan.html.erb +17 -0
  125. data/app/views/decidim/plans/attached_proposals/_proposals.html.erb +12 -0
  126. data/app/views/decidim/plans/plan_widgets/show.html.erb +3 -0
  127. data/app/views/decidim/plans/plans/_accept_request_access_form.html.erb +8 -0
  128. data/app/views/decidim/plans/plans/_attached_proposals.html.erb +10 -0
  129. data/app/views/decidim/plans/plans/_collaborator_requests.html.erb +20 -0
  130. data/app/views/decidim/plans/plans/_content.html.erb +6 -0
  131. data/app/views/decidim/plans/plans/_contents.html.erb +8 -0
  132. data/app/views/decidim/plans/plans/_count.html.erb +1 -0
  133. data/app/views/decidim/plans/plans/_filters.html.erb +32 -0
  134. data/app/views/decidim/plans/plans/_filters_small_view.html.erb +18 -0
  135. data/app/views/decidim/plans/plans/_form.html.erb +57 -0
  136. data/app/views/decidim/plans/plans/_new_plan_button.html.erb +11 -0
  137. data/app/views/decidim/plans/plans/_plan.html.erb +1 -0
  138. data/app/views/decidim/plans/plans/_plan_preview.html.erb +1 -0
  139. data/app/views/decidim/plans/plans/_plans.html.erb +14 -0
  140. data/app/views/decidim/plans/plans/_reject_request_access_form.html.erb +10 -0
  141. data/app/views/decidim/plans/plans/_request_access_form.html.erb +7 -0
  142. data/app/views/decidim/plans/plans/edit.html.erb +21 -0
  143. data/app/views/decidim/plans/plans/index.html.erb +28 -0
  144. data/app/views/decidim/plans/plans/index.js.erb +10 -0
  145. data/app/views/decidim/plans/plans/new.html.erb +15 -0
  146. data/app/views/decidim/plans/plans/preview.html.erb +15 -0
  147. data/app/views/decidim/plans/plans/show.html.erb +133 -0
  148. data/app/views/decidim/plans/shared/_attachment_fields.html.erb +45 -0
  149. data/app/views/decidim/plans/shared/_attachments.html.erb +23 -0
  150. data/app/views/decidim/plans/shared/_remaining_characters_container.html.erb +12 -0
  151. data/app/views/decidim/plans/shared/_section_content_field.html.erb +39 -0
  152. data/app/views/decidim/plans/versions/_version.html.erb +20 -0
  153. data/app/views/decidim/plans/versions/index.html.erb +34 -0
  154. data/app/views/decidim/plans/versions/show.html.erb +41 -0
  155. data/config/locales/en.yml +341 -0
  156. data/config/locales/fi.yml +341 -0
  157. data/config/locales/sv.yml +341 -0
  158. data/db/migrate/20181230110225_enable_pg_trgm_extension_for_plans.rb +18 -0
  159. data/db/migrate/20181230110848_create_decidim_plans.rb +20 -0
  160. data/db/migrate/20181230111731_create_decidim_plans_sections.rb +13 -0
  161. data/db/migrate/20181230111931_create_decidim_plans_plan_contents.rb +14 -0
  162. data/db/migrate/20181230122035_create_decidim_plans_plan_collaborator_requests.rb +12 -0
  163. data/db/migrate/20190110125855_create_decidim_plans_attached_proposals.rb +12 -0
  164. data/db/migrate/20190129140441_add_help_to_decidim_plans_sections.rb +7 -0
  165. data/db/migrate/20190129143607_add_mandatory_to_decidim_plans_sections.rb +7 -0
  166. data/db/migrate/20190129172040_add_section_type_to_decidim_plans_sections.rb +12 -0
  167. data/db/migrate/20190129231439_add_answer_length_to_decidim_plans_sections.rb +11 -0
  168. data/db/migrate/20190202123044_create_version_associations.rb +25 -0
  169. data/db/migrate/20190202123045_add_transaction_id_column_to_versions.rb +15 -0
  170. data/db/migrate/20190202200716_add_update_token_to_decidim_plans.rb +7 -0
  171. data/lib/decidim/plans/admin.rb +10 -0
  172. data/lib/decidim/plans/admin_engine.rb +29 -0
  173. data/lib/decidim/plans/component.rb +163 -0
  174. data/lib/decidim/plans/engine.rb +43 -0
  175. data/lib/decidim/plans/locale_aware.rb +32 -0
  176. data/lib/decidim/plans/optionally_translatable_attributes.rb +85 -0
  177. data/lib/decidim/plans/paper_trail/record_trail.rb +24 -0
  178. data/lib/decidim/plans/paper_trail.rb +10 -0
  179. data/lib/decidim/plans/test/factories.rb +130 -0
  180. data/lib/decidim/plans/version.rb +8 -0
  181. data/lib/decidim/plans.rb +24 -0
  182. metadata +323 -0
@@ -0,0 +1,341 @@
1
+ ---
2
+ en:
3
+ activemodel:
4
+ attributes:
5
+ plan:
6
+ proposals: Proposals
7
+ category_id: Category
8
+ decidim_category_id: Category
9
+ decidim_scope_id: Scope
10
+ state: State
11
+ title: Title
12
+ user_group_id: Create as
13
+ errors:
14
+ models:
15
+ attachment:
16
+ attributes:
17
+ file:
18
+ needs_to_be_reattached: Needs to be reattached
19
+ decidim:
20
+ assemblies:
21
+ statistics:
22
+ plans_count: Plans
23
+ components:
24
+ plans:
25
+ actions:
26
+ create: Create
27
+ withdraw: Withdraw
28
+ name: Plans
29
+ settings:
30
+ global:
31
+ announcement: Announcement
32
+ attachments_allowed: Attachments allowed
33
+ comments_enabled: Comments enabled
34
+ multilingual_answers: Multilingual answers
35
+ plan_answering_enabled: Answering enabled
36
+ plan_title_length: Title length
37
+ step:
38
+ announcement: Announcement
39
+ comments_blocked: Comments blocked
40
+ creation_enabled: Creation enabled
41
+ plan_answering_enabled: Answering enabled
42
+ participatory_processes:
43
+ statistics:
44
+ plans_count: Plans
45
+ plans:
46
+ actions:
47
+ answer: Answer
48
+ edit_plan: Edit
49
+ new: Submit new plan
50
+ sections: Sections
51
+ title: Actions
52
+ admin:
53
+ actions:
54
+ preview: Preview
55
+ plan_answers:
56
+ edit:
57
+ accepted: Accepted
58
+ answer_plan: Answer
59
+ evaluating: Evaluating
60
+ rejected: Rejected
61
+ title: Answer for %{title}
62
+ plans:
63
+ answer:
64
+ invalid: Error occured while answering.
65
+ success: Answered successfully.
66
+ edit:
67
+ title: Edit
68
+ update: Update
69
+ form:
70
+ attachment_legend: "Add an attachment"
71
+ select_a_category: Select a category
72
+ index:
73
+ selected: Selected
74
+ title: Plans
75
+ new:
76
+ create: Create
77
+ title: Submit new plan
78
+ sections:
79
+ form:
80
+ add_section: Add section
81
+ index:
82
+ save: Save
83
+ title: Sections
84
+ section:
85
+ answer_length: Answer length
86
+ body: Body
87
+ down: Down
88
+ help: Help
89
+ mandatory: Mandatory
90
+ remove: Remove
91
+ section: Section
92
+ up: Up
93
+ update:
94
+ invalid: Error updating sections.
95
+ success: Sections updated successfully.
96
+ shared:
97
+ info_plan:
98
+ body: Body
99
+ created_at: Creation date
100
+ plans: Plans
101
+ admin_log:
102
+ plan:
103
+ answer: "%{user_name} answered %{resource_name} on the %{space_name}
104
+ space."
105
+ create: "%{user_name} created %{resource_name} on the %{space_name}
106
+ space."
107
+ update: "%{user_name} updated %{resource_name} on the %{space_name}
108
+ space."
109
+ plan_note:
110
+ create: "%{user_name} left a private note on %{resource_name} on the
111
+ %{space_name} space."
112
+ answers:
113
+ accepted: Accepted
114
+ evaluating: Evaluating
115
+ not_answered: Not answered
116
+ rejected: Rejected
117
+ withdrawn: Withdrawn
118
+ application_helper:
119
+ filter_state_values:
120
+ accepted: Accepted
121
+ all: All
122
+ evaluating: Evaluating
123
+ except_rejected: All except rejected
124
+ rejected: Rejected
125
+ filter_type_values:
126
+ all: All
127
+ amendments: Amendments
128
+ plans: Plans
129
+ attached_proposals_helper:
130
+ attach_proposal: Attach proposal
131
+ close: Close
132
+ current_selection: Search proposals by name
133
+ select: Select
134
+ create:
135
+ invalid: Failed to create new content.
136
+ success: Created successfully.
137
+ last_activity:
138
+ new_plan_at_html: "<span>New plan at %{link}</span>"
139
+ models:
140
+ plan:
141
+ fields:
142
+ authors: Authors
143
+ category: Category
144
+ comments: Comments
145
+ contributions: Contributions
146
+ id: ID
147
+ notes: Notes
148
+ official_plan: Official plan
149
+ published_at: Published at
150
+ scope: Scope
151
+ state: State
152
+ title: Title
153
+ plans:
154
+ attached_proposals:
155
+ attached_proposals: Attached proposals
156
+ count:
157
+ plans_count:
158
+ one: "%{count} plan"
159
+ other: "%{count} plans"
160
+ create:
161
+ error: Failed to create new content.
162
+ success: Created successfully.
163
+ destroy:
164
+ error: Error deleting the item.
165
+ success: Deleted successfully.
166
+ edit:
167
+ discard: Discard this draft
168
+ discard_confirmation: Are you sure you want to discard this draft?
169
+ update: Update
170
+ preview:
171
+ modify: Modify
172
+ publish: Publish
173
+ filters:
174
+ accepted: Accepted
175
+ activity: Activity
176
+ all: All
177
+ category: Category
178
+ category_prompt: Select a category
179
+ citizens: Citizens
180
+ evaluating: Evaluating
181
+ except_rejected: All except rejected
182
+ official: Official
183
+ origin: Origin
184
+ rejected: Rejected
185
+ related_to: Related to
186
+ search: Search
187
+ state: State
188
+ voted: Voted
189
+ filters_small_view:
190
+ close_modal: Close modal
191
+ filter: Filter
192
+ filter_by: Filter by
193
+ unfold: Unfold
194
+ form:
195
+ attachment_legend: "Add an attachment"
196
+ select_a_category: Select a category
197
+ index:
198
+ new_plan: New plan
199
+ see_all_withdrawn: See all withdrawn
200
+ new:
201
+ create: Create
202
+ title: Create plan
203
+ new_plan_button:
204
+ new_plan: New plan
205
+ orders:
206
+ label: 'Order plans by:'
207
+ random: Random
208
+ recent: Recent
209
+ plan:
210
+ publish:
211
+ error: Error publishing new content.
212
+ success: Published successfully.
213
+ view_plan: View plan
214
+ withdraw:
215
+ error: Error withdrawing.
216
+ success: Withdrawn successfully.
217
+ show:
218
+ back: Back
219
+ edit: Edit
220
+ hidden_authors_count:
221
+ one: and %{count} more person
222
+ other: and %{count} more people
223
+ info-message: You can participate either by submitting a comment or by
224
+ asking for a permission to edit content directly.
225
+ of_versions: "(of %{number})"
226
+ plan_accepted_reason: 'This plan has been accepted because:'
227
+ plan_in_evaluation_reason: This plan is being evaluated
228
+ plan_rejected_reason: 'This plan has been rejected because:'
229
+ publish: Publish
230
+ publish_info: Publish this version of the draft or
231
+ published_proposal: published plan
232
+ report: Report
233
+ request_access: Request editing permissions
234
+ requested_access: Editing permissions requested
235
+ see_other_versions: see other versions
236
+ version: Version %{number}
237
+ version_history: see version history
238
+ withdraw: withdraw the draft
239
+ withdraw_btn: Withdraw
240
+ withdraw_btn_hint: You can withdraw this item if you change your mind, as long as you have not received any support. The item is not deleted, it will appear in the list of withdrawn items.
241
+ withdraw_confirmation: Are you sure to withdraw this item?
242
+ update:
243
+ error: Error updating content.
244
+ success: Updated successfully.
245
+ withdraw:
246
+ error: Error withdrawing the item.
247
+ success: Item withdrawn successfully.
248
+ requests:
249
+ accept_request: Accept
250
+ accepted_request:
251
+ error: Could not be accepted as a collaborator, try again later.
252
+ success: "@%{user} has been successfully accepted as a collaborator."
253
+ access_requested:
254
+ error: Your request could not be completed, try again later.
255
+ success: Your request to collaborate has been sent successfully
256
+ reject_request: Reject
257
+ rejected_request:
258
+ error: Could not be rejected as a collaborator, try again later.
259
+ success: "@%{user} has been successfully rejected as a collaborator."
260
+ title: Collaboration requests
261
+ sections:
262
+ actions:
263
+ new: New section
264
+ section_types:
265
+ field_text_multiline: Field - Multiple lines
266
+ field_text: Field - Single line
267
+ shared:
268
+ attachment_fields:
269
+ attachment_legend: Attachment
270
+ down: Down
271
+ remove: Remove
272
+ up: Up
273
+ attachments:
274
+ legend: Attachments
275
+ add_attachment: Add attachment
276
+ update:
277
+ invalid: Error updating content.
278
+ success: Updated successfully.
279
+ versions:
280
+ changes_at_title: Changes at "%{title}"
281
+ index:
282
+ title: Versions
283
+ stats:
284
+ back_to_plan: Go back
285
+ number_of_versions: Versions
286
+ show_all_versions: Show all versions
287
+ version_author: Version author
288
+ version_created_at: Version created at
289
+ version_number: Version number
290
+ version_number_out_of_total: "%{current_version} out of %{total_count}"
291
+ version:
292
+ version_index: Version %{index}
293
+ scopes:
294
+ global: Global
295
+ events:
296
+ plans:
297
+ plan_access_accepted:
298
+ email_intro: '%{requester_name} has been accepted to access as a contributor of <a href="%{resource_path}">%{resource_title}</a>.'
299
+ email_outro: You have received this notification because you are a collaborator of <a href="%{resource_path}">%{resource_title}</a>.
300
+ email_subject: "%{requester_name} has been accepted to access as a contributor of %{resource_title}."
301
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> has been <strong>accepted to access as a contributor</strong> of <a href="%{resource_path}">%{resource_title}</a>.
302
+ plan_access_rejected:
303
+ email_intro: '%{requester_name} has been rejected to access as a contributor of <a href="%{resource_path}">%{resource_title}</a>.'
304
+ email_outro: You have received this notification because you are a collaborator of <a href="%{resource_path}">%{resource_title}</a>.
305
+ email_subject: "%{requester_name} has been rejected to access as a contributor of %{resource_title}."
306
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> has been <strong>rejected to access as a contributor</strong> of <a href="%{resource_path}">%{resource_title}</a>.
307
+ plan_access_requested:
308
+ email_intro: '%{requester_name} requested access as a contributor. You can <strong>accept or reject the request</strong> from the <a href="%{resource_path}">%{resource_title}</a> page.'
309
+ email_outro: You have received this notification because you are a collaborator of <a href="%{resource_path}">%{resource_title}</a>.
310
+ email_subject: "%{requester_name} requested access to contribute to %{resource_title}."
311
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> requested access to contribute to <a href="%{resource_path}">%{resource_title}</a>. Please <strong>accept or reject the request</strong>.
312
+ plan_access_requester_accepted:
313
+ email_intro: You have been accepted to access as a contributor of <a href="%{resource_path}">%{resource_title}</a>.
314
+ email_outro: You have received this notification because you requested to become a collaborator of <a href="%{resource_path}">%{resource_title}</a>.
315
+ email_subject: You have been accepted as a contributor of %{resource_title}.
316
+ notification_title: You have been <strong>accepted to access as a contributor</strong> of <a href="%{resource_path}">%{resource_title}</a>.
317
+ plan_access_requester_rejected:
318
+ email_intro: You have been rejected to access as a contributor of <a href="%{resource_path}">%{resource_title}</a>.
319
+ email_outro: You have received this notification because you requested to become a collaborator of <a href="%{resource_path}">%{resource_title}</a>.
320
+ email_subject: You have been rejected as a contributor of %{resource_title}.
321
+ notification_title: You have been <strong>rejected to access as a contributor</strong> of <a href="%{resource_path}">%{resource_title}</a>.
322
+ plan_accepted:
323
+ email_intro: 'The plan "%{resource_title}" has been accepted. You can read the answer in this page:'
324
+ email_outro: You have received this notification because you are following "%{resource_title}". You can unfollow it from the previous link.
325
+ email_subject: A plan you're following has been accepted
326
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> has been accepted.
327
+ plan_evaluating:
328
+ email_intro: '"%{resource_title}" is currently being evaluated. You can check for an answer in this page:'
329
+ email_outro: You have received this notification because you are following "%{resource_title}". You can unfollow it from the previous link.
330
+ email_subject: A plan you're following is being evaluated
331
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> is being evaluated.
332
+ plan_published_for_space:
333
+ email_intro: '"%{resource_title}" has been published. You can see it here:'
334
+ email_outro: You have received this notification because you are following "%{resource_title}". You can unfollow it from the previous link.
335
+ email_subject: A plan you're following has been published
336
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> has been published.
337
+ plan_rejected:
338
+ email_intro: '"%{resource_title}" has been rejected. You can read the answer in this page:'
339
+ email_outro: You have received this notification because you are following "%{resource_title}". You can unfollow it from the previous link.
340
+ email_subject: A plan you're following has been rejected
341
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> has been rejected.
@@ -0,0 +1,341 @@
1
+ ---
2
+ fi:
3
+ activemodel:
4
+ attributes:
5
+ plan:
6
+ proposals: Ehdotukset
7
+ category_id: Kategoria
8
+ decidim_category_id: Kategoria
9
+ decidim_scope_id: Teema
10
+ state: Tila
11
+ title: Otsikko
12
+ user_group_id: Luo käyttäjänä
13
+ errors:
14
+ models:
15
+ attachment:
16
+ attributes:
17
+ file:
18
+ needs_to_be_reattached: Pitää liittää uudestaan
19
+ decidim:
20
+ assemblies:
21
+ statistics:
22
+ plans_count: Suunnitelmaa
23
+ components:
24
+ plans:
25
+ actions:
26
+ create: Luo
27
+ withdraw: Peruuta
28
+ name: Suunnitelmat
29
+ settings:
30
+ global:
31
+ announcement: Ilmoitus
32
+ attachments_allowed: Liitteet sallittu
33
+ comments_enabled: Kommentointi sallittu
34
+ multilingual_answers: Monikieliset vastaukset
35
+ plan_answering_enabled: Vastaaminen sallittu
36
+ plan_title_length: Otsikon pituus
37
+ step:
38
+ announcement: Ilmoitus
39
+ comments_blocked: Kommentointi estetty
40
+ creation_enabled: Luonti sallittu
41
+ plan_answering_enabled: Vastaaminen sallittu
42
+ participatory_processes:
43
+ statistics:
44
+ plans_count: Suunnitelmaa
45
+ plans:
46
+ actions:
47
+ answer: Vastaa
48
+ edit_plan: Muokkaa
49
+ new: Tee uusi suunnitelma
50
+ sections: Osiot
51
+ title: Toiminnot
52
+ admin:
53
+ actions:
54
+ preview: Esikatsele
55
+ plan_answers:
56
+ edit:
57
+ accepted: Hyväksytty
58
+ answer_plan: Vastaa
59
+ evaluating: Arvioitavana
60
+ rejected: Hylätty
61
+ title: Vastaa kohteeseen %{title}
62
+ plans:
63
+ answer:
64
+ invalid: Vastaamisessa tapahtui virhe.
65
+ success: Vastattu onnistuneesti.
66
+ edit:
67
+ title: Muokkaa
68
+ update: Päivitä
69
+ form:
70
+ attachment_legend: "Lisää liite"
71
+ select_a_category: Valitse kategoria
72
+ index:
73
+ selected: Valittu
74
+ title: Suunnitelmat
75
+ new:
76
+ create: Luo
77
+ title: Tee uusi suunnitelma
78
+ sections:
79
+ form:
80
+ add_section: Lisää osio
81
+ index:
82
+ save: Tallenna
83
+ title: Osiot
84
+ section:
85
+ answer_length: Vastauksen pituus
86
+ body: Runkoteksti
87
+ down: Alas
88
+ help: Ohjeteksti
89
+ mandatory: Pakollinen
90
+ remove: Poista
91
+ section: Osio
92
+ up: Ylös
93
+ update:
94
+ invalid: Osioiden päivityksessä tapahtui virhe.
95
+ success: Osiot päivitetty onnistuneesti.
96
+ shared:
97
+ info_plan:
98
+ body: Runkoteksti
99
+ created_at: Luontipäivä
100
+ plans: Suunnitelmat
101
+ admin_log:
102
+ plan:
103
+ answer: "%{user_name} vastasi sisältöön %{resource_name}
104
+ osallisuustilassa %{space_name}."
105
+ create: "%{user_name} loi sisällön %{resource_name} osallisuustilassa
106
+ %{space_name}."
107
+ update: "%{user_name} päivitti sisältöä %{resource_name}
108
+ osallisuustilassa %{space_name}."
109
+ plan_note:
110
+ create: "%{user_name} lisäsi yksityisen viestin sisältöön
111
+ %{resource_name} osallisuustilassa %{space_name}."
112
+ answers:
113
+ accepted: Hyväksytty
114
+ evaluating: Arvioitavana
115
+ not_answered: Vastaamaton
116
+ rejected: Hylätty
117
+ withdrawn: Peruutettu
118
+ application_helper:
119
+ filter_state_values:
120
+ accepted: Hyväksytty
121
+ all: Kaikki
122
+ evaluating: Arvioitavana
123
+ except_rejected: Kaikki paitsi hylätyt
124
+ rejected: Hylätty
125
+ filter_type_values:
126
+ all: Kaikki
127
+ amendments: Muutokset
128
+ plans: Suunnitelmat
129
+ attached_proposals_helper:
130
+ attach_proposal: Liitä ehdotus
131
+ close: Sulje
132
+ current_selection: Hae ehdotuksia nimellä
133
+ select: Valitse
134
+ create:
135
+ invalid: Virhe luotaessa suunnitelmaa.
136
+ success: Luonti onnistui.
137
+ last_activity:
138
+ new_plan_at_html: "<span>Uusi suunnitelma osoitteessa %{link}</span>"
139
+ models:
140
+ plan:
141
+ fields:
142
+ authors: Laatijat
143
+ category: Kategoria
144
+ comments: Kommentit
145
+ contributions: Muokkaukset
146
+ id: ID
147
+ notes: Muistiinpanot
148
+ official_plan: Virallinen suunnitelma
149
+ published_at: Julkaisuajankohta
150
+ scope: Teema
151
+ state: Tila
152
+ title: Otsikko
153
+ plans:
154
+ attached_proposals:
155
+ attached_proposals: Liitetyt ehdotukset
156
+ count:
157
+ plans_count:
158
+ one: "%{count} suunnitelma"
159
+ other: "%{count} suunnitelmaa"
160
+ create:
161
+ error: Uuden sisällön luominen epäonnistui.
162
+ success: Luonti onnistui.
163
+ destroy:
164
+ error: Virhe poistettaessa sisältöä.
165
+ success: Poisto onnistui.
166
+ edit:
167
+ discard: Tuhoa tämä luonnos
168
+ discard_confirmation: Haluatko varmasti tuhota tämän luonnoksen?
169
+ update: Päivitä
170
+ preview:
171
+ modify: Muokkaa
172
+ publish: Julkaise
173
+ filters:
174
+ accepted: Hyväksytty
175
+ activity: Aktiviteetti
176
+ all: Kaikki
177
+ category: Kategoria
178
+ category_prompt: Valitse kategoria
179
+ citizens: Kansalaiset
180
+ evaluating: Arvioitavana
181
+ except_rejected: Kaikki paitsi hylätyt
182
+ official: Virallinen
183
+ origin: Alkuperä
184
+ rejected: Hylätty
185
+ related_to: Liittyy kohteeseen
186
+ search: Hae
187
+ state: Tila
188
+ voted: Kannatettu
189
+ filters_small_view:
190
+ close_modal: Sulje ikkuna
191
+ filter: Suodata
192
+ filter_by: Suodata
193
+ unfold: Avaa
194
+ form:
195
+ attachment_legend: "Lisää liite"
196
+ select_a_category: Valitse kategoria
197
+ index:
198
+ new_plan: Uusi suunnitelma
199
+ see_all_withdrawn: Näytä kaikki peruutetut
200
+ new:
201
+ create: Luo
202
+ title: Luo suunnitelma
203
+ new_plan_button:
204
+ new_plan: Uusi suunnitelma
205
+ orders:
206
+ label: 'Järjestä suunnitelmat:'
207
+ random: Satunnainen
208
+ recent: Uusimmat
209
+ plan:
210
+ publish:
211
+ error: Uuden sisällön julkaiseminen epäonnistui.
212
+ success: Julkaisu onnistui.
213
+ view_plan: Näytä suunnitelma
214
+ withdraw:
215
+ error: Peruuttaminen epäonnistui.
216
+ success: Peruuttaminen onnistui.
217
+ show:
218
+ back: Takaisin
219
+ edit: Muokkaa
220
+ hidden_authors_count:
221
+ one: ja %{count} muu henkilö
222
+ other: ja %{count} muuta henkilöä
223
+ info-message: Voit osalllistua joko jättämällä kommentin sivun
224
+ alalaidassa tai pyytämällä itsellesi muokkausoikeudet sisältöön.
225
+ of_versions: "(versioista %{number})"
226
+ plan_accepted_reason: 'Tämä suunnitelma on hyväksytty, koska:'
227
+ plan_in_evaluation_reason: Tämä suunnitelma on arvioitavana
228
+ plan_rejected_reason: 'Tämä suunnitelma on hylätty, koska:'
229
+ publish: Julkaise
230
+ publish_info: Julkaise tämä luonnosversio tai
231
+ published_proposal: julkaistu suunnitelma
232
+ report: Ilmoita
233
+ request_access: Pyydä muokkausoikeudet
234
+ requested_access: Muokkausoikeudet pyydetty
235
+ see_other_versions: näytä muut versiot
236
+ version: Versio %{number}
237
+ version_history: näytä versiohistoria
238
+ withdraw: peru suunnitelma
239
+ withdraw_btn: Peru
240
+ withdraw_btn_hint: Jos muutat mieltäsi, voit perua tämän kohteen, mikäli se ei ole vielä kerännyt tukea. Kohdetta ei poisteta, se jää näkyviin peruttujen kohteiden listaan.
241
+ withdraw_confirmation: Haluatko varmasti perua?
242
+ update:
243
+ error: Sisälllön päivitys epäonnistui.
244
+ success: Sisälllön päivitys onnistui.
245
+ withdraw:
246
+ error: Virhe kohteen peruutuksessa.
247
+ success: Kohde peruutettu onnistuneesti.
248
+ requests:
249
+ accept_request: Hyväksy
250
+ accepted_request:
251
+ error: Ei voitu hyväksyä osallistujaa, yritä myöhemmin uudestaan.
252
+ success: "@%{user} on hyväksytty osallistujaksi onnistuneesti."
253
+ access_requested:
254
+ error: Pyyntöäsi ei voitu käsitellä, yritä myöhemmin uudestaan
255
+ success: Pyyntösi osallistua on lähetetty onnistuneesti
256
+ reject_request: Hylkää
257
+ rejected_request:
258
+ error: Ei voitu hylätä osallistujaa, yritä myöhemmin uudestaan.
259
+ success: "Käyttäjän @%{user} muokkauspyyntö hylätty onnistuneesti."
260
+ title: Muokkauspyynnöt
261
+ sections:
262
+ actions:
263
+ new: Uusi osio
264
+ section_types:
265
+ field_text_multiline: Kenttä - Monirivinen
266
+ field_text: Kenttä - Yksirivinen
267
+ shared:
268
+ attachment_fields:
269
+ attachment_legend: Liite
270
+ down: Alas
271
+ remove: Poista
272
+ up: Ylös
273
+ attachments:
274
+ legend: Liitteet
275
+ add_attachment: Lisää liite
276
+ update:
277
+ invalid: Sisällön päivittäminen epäonnistui.
278
+ success: Päivitys onnistui.
279
+ versions:
280
+ changes_at_title: Muutokset kohteelle "%{title}"
281
+ index:
282
+ title: Versiot
283
+ stats:
284
+ back_to_plan: Takaisin
285
+ number_of_versions: Versiot
286
+ show_all_versions: Näytä kaikki versiot
287
+ version_author: Version laatija
288
+ version_created_at: Version luontiaika
289
+ version_number: Version numero
290
+ version_number_out_of_total: "%{current_version} / %{total_count}"
291
+ version:
292
+ version_index: Versio %{index}
293
+ scopes:
294
+ global: Yleinen
295
+ events:
296
+ plans:
297
+ plan_access_accepted:
298
+ email_intro: '%{requester_name} on annettu oikeus muokata sisältöä <a href="%{resource_path}">%{resource_title}</a> osallistujana.'
299
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet osallistunut sisällön <a href="%{resource_path}">%{resource_title}</a> muokkaukseen.
300
+ email_subject: "%{requester_name} on hyväksytty muokkaajaksi sisältöön %{resource_title}."
301
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> on <strong>hyväksytty muokkaajaksi</strong> sisältöön <a href="%{resource_path}">%{resource_title}</a>.
302
+ plan_access_rejected:
303
+ email_intro: 'Käyttäjän %{requester_name} muokkausoikeudet sisältöön <a href="%{resource_path}">%{resource_title} </a> on estetty.'
304
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet osallistunut sisällön <a href="%{resource_path}">%{resource_title}</a> muokkaukseen.
305
+ email_subject: "%{requester_name} hakemus osallistua suunnitelmaan %{resource_title} on hylätty."
306
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> <strong>pyyntö muokata sisältöä on hylätty</strong> kohteelle <a href="%{resource_path}">%{resource_title}</a>.
307
+ plan_access_requested:
308
+ email_intro: '%{requester_name} pyysi pääsyä osallistujaksi. Voit <strong>hyväksyä tai hylätä pyynnön</strong> sivulla <a href="%{resource_path}">%{resource_title}</a>.'
309
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet osallistuja suunnitelmassa <a href="%{resource_path}">%{resource_title}</a>.
310
+ email_subject: "%{requester_name} pyysi osallistumisoikeutta suunnitelmaan %{resource_title}."
311
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> pyysi saada muokata sisältöä <a href="%{resource_path}">%{resource_title}</a>. <strong>Hyväksy tai hylkää pyyntö</strong>.
312
+ plan_access_requester_accepted:
313
+ email_intro: Sinut on hyväksytty osallistujaksi sisältöön <a href="%{resource_path}">%{resource_title}</a>.
314
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet hakenut muokkausoikeuksia sisältöön <a href="%{resource_path}">%{resource_title}</a>.
315
+ email_subject: Sinut on hyväksytty osallistujaksi sisältöön %{resource_title}.
316
+ notification_title: Sinut on <strong>hyväksytty osallistujaksi </strong> sisältöön <a href="%{resource_path}">%{resource_title}</a>.
317
+ plan_access_requester_rejected:
318
+ email_intro: Sinua ei ole hyväksytty osallistujaksi sisältöön <a href="%{resource_path}">%{resource_title}</a>.
319
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet pyytänyt pääsyä osallistujaksi sisältöön <a href="%{resource_path}">%{resource_title}</a>.
320
+ email_subject: Sinua ei ole hyväksytty osallistujaksi sisältöön %{resource_title}.
321
+ notification_title: Sinua <strong>ei ole hyväksytty osallistujaksi</strong> sisältöön <a href="%{resource_path}">%{resource_title}</a>.
322
+ plan_accepted:
323
+ email_intro: '"%{resource_title}" on hyväksytty. Voit lukea vastauksen täältä:'
324
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta "%{resource_title}". Voit lopettaa sen seuraamisen edellä esitetyn linkin kautta.
325
+ email_subject: Seuraamasi kohde on hyväksytty
326
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> on hyväksytty.
327
+ plan_evaluating:
328
+ email_intro: '"%{resource_title}" arvioidaan parhaillaan. Voit tarkistaa vastauksen tältä sivulla:'
329
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta "%{resource_title}". Voit lopettaa seuraamisen edellä esitetyn linkin kautta.
330
+ email_subject: Seuraamasi kohde on arvioitavana
331
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> on arvioitavana.
332
+ plan_published_for_space:
333
+ email_intro: '"%{resource_title}" on julkaistu. Näet sen täältä:'
334
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta "%{resource_title}". Voit lopettaa sen seuraamisen edellä esitetyn linkin kautta.
335
+ email_subject: Seuraamasi kohde on julkaistu
336
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> on julkaistu.
337
+ plan_rejected:
338
+ email_intro: '"%{resource_title}" on hylätty. Voit lukea vastauksen tällä sivulla:'
339
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat kohdetta "%{resource_title}". Voit lopettaa sen seuraamisen edellä esitetyn linkin kautta.
340
+ email_subject: Seuraamasi kohde on hylätty
341
+ notification_title: <a href="%{resource_path}">%{resource_title}</a> on hylätty.