decidim-budgets 0.26.10 → 0.27.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/budgets/budgets_header/show.erb +1 -1
  3. data/app/cells/decidim/budgets/order_activity_cell.rb +29 -0
  4. data/app/commands/decidim/budgets/add_line_item.rb +4 -2
  5. data/app/commands/decidim/budgets/admin/create_budget.rb +1 -1
  6. data/app/commands/decidim/budgets/admin/create_order_reminders.rb +66 -0
  7. data/app/commands/decidim/budgets/admin/create_project.rb +5 -2
  8. data/app/commands/decidim/budgets/admin/destroy_budget.rb +1 -1
  9. data/app/commands/decidim/budgets/admin/destroy_project.rb +1 -1
  10. data/app/commands/decidim/budgets/admin/import_proposals_to_budgets.rb +6 -6
  11. data/app/commands/decidim/budgets/admin/update_budget.rb +1 -1
  12. data/app/commands/decidim/budgets/admin/update_project.rb +5 -2
  13. data/app/commands/decidim/budgets/admin/update_project_category.rb +48 -0
  14. data/app/commands/decidim/budgets/admin/update_project_scope.rb +54 -0
  15. data/app/commands/decidim/budgets/admin/update_project_selection.rb +56 -0
  16. data/app/commands/decidim/budgets/cancel_order.rb +1 -1
  17. data/app/commands/decidim/budgets/checkout.rb +10 -3
  18. data/app/commands/decidim/budgets/remove_line_item.rb +1 -1
  19. data/app/controllers/decidim/budgets/admin/application_controller.rb +2 -0
  20. data/app/controllers/decidim/budgets/admin/attachment_collections_controller.rb +1 -3
  21. data/app/controllers/decidim/budgets/admin/attachments_controller.rb +1 -7
  22. data/app/controllers/decidim/budgets/admin/budgets_controller.rb +1 -1
  23. data/app/controllers/decidim/budgets/admin/projects_controller.rb +149 -1
  24. data/app/controllers/decidim/budgets/line_items_controller.rb +2 -2
  25. data/app/controllers/decidim/budgets/orders_controller.rb +1 -1
  26. data/app/controllers/decidim/budgets/projects_controller.rb +15 -19
  27. data/app/forms/decidim/budgets/admin/budget_form.rb +3 -4
  28. data/app/forms/decidim/budgets/admin/order_reminder_form.rb +75 -0
  29. data/app/forms/decidim/budgets/admin/project_form.rb +19 -3
  30. data/app/helpers/decidim/budgets/admin/project_bulk_actions_helper.rb +20 -0
  31. data/app/helpers/decidim/budgets/projects_helper.rb +29 -0
  32. data/app/jobs/decidim/budgets/send_vote_reminder_job.rb +16 -0
  33. data/app/mailers/decidim/budgets/vote_reminder_mailer.rb +39 -0
  34. data/app/models/decidim/budgets/order.rb +2 -4
  35. data/app/models/decidim/budgets/project.rb +14 -10
  36. data/app/packs/entrypoints/decidim_budgets_admin.js +1 -0
  37. data/app/packs/src/decidim/budgets/admin/projects.js +143 -0
  38. data/app/permissions/decidim/budgets/admin/permissions.rb +8 -3
  39. data/app/queries/decidim/budgets/filtered_projects.rb +1 -1
  40. data/app/serializers/decidim/budgets/{data_portability_budgets_order_serializer.rb → download_your_data_budgets_order_serializer.rb} +2 -2
  41. data/app/services/decidim/budgets/order_reminder_generator.rb +85 -0
  42. data/app/views/decidim/budgets/admin/budgets/_form.html.erb +1 -1
  43. data/app/views/decidim/budgets/admin/budgets/edit.html.erb +0 -1
  44. data/app/views/decidim/budgets/admin/budgets/index.html.erb +3 -1
  45. data/app/views/decidim/budgets/admin/budgets/new.html.erb +0 -1
  46. data/app/views/decidim/budgets/admin/projects/_bulk-actions.html.erb +13 -0
  47. data/app/views/decidim/budgets/admin/projects/_form.html.erb +6 -0
  48. data/app/views/decidim/budgets/admin/projects/_project-tr.html.erb +50 -0
  49. data/app/views/decidim/budgets/admin/projects/bulk_actions/_change-selected.html.erb +15 -0
  50. data/app/views/decidim/budgets/admin/projects/bulk_actions/_dropdown.html.erb +36 -0
  51. data/app/views/decidim/budgets/admin/projects/bulk_actions/_recategorize.html.erb +15 -0
  52. data/app/views/decidim/budgets/admin/projects/bulk_actions/_scope-change.html.erb +25 -0
  53. data/app/views/decidim/budgets/admin/projects/edit.html.erb +0 -1
  54. data/app/views/decidim/budgets/admin/projects/index.html.erb +6 -55
  55. data/app/views/decidim/budgets/admin/projects/new.html.erb +0 -1
  56. data/app/views/decidim/budgets/admin/projects/update_attribute.js.erb +26 -0
  57. data/app/views/decidim/budgets/admin/proposals_imports/new.html.erb +0 -1
  58. data/app/views/decidim/budgets/order_summary_mailer/order_summary.html.erb +0 -1
  59. data/app/views/decidim/budgets/projects/_filters.html.erb +4 -4
  60. data/app/views/decidim/budgets/projects/index.html.erb +28 -1
  61. data/app/views/decidim/budgets/projects/show.html.erb +7 -2
  62. data/app/views/decidim/budgets/vote_reminder_mailer/vote_reminder.html.erb +21 -0
  63. data/config/assets.rb +2 -1
  64. data/config/locales/am-ET.yml +1 -0
  65. data/config/locales/ar.yml +5 -1
  66. data/config/locales/bg.yml +1 -0
  67. data/config/locales/ca.yml +48 -5
  68. data/config/locales/cs.yml +53 -8
  69. data/config/locales/da.yml +1 -0
  70. data/config/locales/de.yml +50 -16
  71. data/config/locales/el.yml +3 -33
  72. data/config/locales/en.yml +46 -4
  73. data/config/locales/eo.yml +1 -0
  74. data/config/locales/es-MX.yml +46 -6
  75. data/config/locales/es-PY.yml +49 -6
  76. data/config/locales/es.yml +50 -7
  77. data/config/locales/et.yml +1 -0
  78. data/config/locales/eu.yml +46 -62
  79. data/config/locales/fi-plain.yml +47 -4
  80. data/config/locales/fi.yml +93 -50
  81. data/config/locales/fr-CA.yml +47 -5
  82. data/config/locales/fr.yml +48 -6
  83. data/config/locales/ga-IE.yml +2 -1
  84. data/config/locales/gl.yml +11 -0
  85. data/config/locales/hr.yml +1 -0
  86. data/config/locales/hu.yml +21 -149
  87. data/config/locales/id-ID.yml +2 -1
  88. data/config/locales/is-IS.yml +4 -2
  89. data/config/locales/it.yml +4 -2
  90. data/config/locales/ja.yml +44 -5
  91. data/config/locales/ko.yml +1 -0
  92. data/config/locales/lb.yml +5 -5
  93. data/config/locales/lt.yml +1 -338
  94. data/config/locales/lv.yml +2 -1
  95. data/config/locales/mt.yml +1 -0
  96. data/config/locales/nl.yml +16 -30
  97. data/config/locales/no.yml +18 -1
  98. data/config/locales/om-ET.yml +1 -0
  99. data/config/locales/pl.yml +3 -24
  100. data/config/locales/pt-BR.yml +4 -21
  101. data/config/locales/pt.yml +3 -3
  102. data/config/locales/ro-RO.yml +2 -3
  103. data/config/locales/ru.yml +2 -1
  104. data/config/locales/si-LK.yml +1 -0
  105. data/config/locales/sk.yml +2 -1
  106. data/config/locales/sl.yml +1 -0
  107. data/config/locales/so-SO.yml +1 -0
  108. data/config/locales/sr-CS.yml +1 -0
  109. data/config/locales/sv.yml +26 -7
  110. data/config/locales/sw-KE.yml +1 -0
  111. data/config/locales/ti-ER.yml +1 -0
  112. data/config/locales/tr-TR.yml +3 -3
  113. data/config/locales/uk.yml +3 -2
  114. data/config/locales/val-ES.yml +1 -0
  115. data/config/locales/vi.yml +1 -0
  116. data/config/locales/zh-CN.yml +1 -3
  117. data/config/locales/zh-TW.yml +1 -326
  118. data/db/migrate/20200804175222_votes_enabled_to_votes_choices.rb +2 -2
  119. data/db/migrate/20220428072638_add_geolocalization_fields_to_projects.rb +9 -0
  120. data/lib/decidim/budgets/admin_engine.rb +3 -0
  121. data/lib/decidim/budgets/component.rb +7 -6
  122. data/lib/decidim/budgets/engine.rb +17 -0
  123. data/lib/decidim/budgets/test/factories.rb +11 -0
  124. data/lib/decidim/budgets/version.rb +1 -1
  125. data/lib/decidim/budgets/workflows/all.rb +1 -1
  126. data/lib/decidim/budgets/workflows/base.rb +1 -1
  127. metadata +38 -27
  128. data/app/services/decidim/budgets/project_search.rb +0 -45
  129. data/config/environment.rb +0 -3
  130. data/config/locales/fa-IR.yml +0 -1
  131. data/config/locales/gn-PY.yml +0 -1
  132. data/config/locales/ka-GE.yml +0 -1
  133. data/config/locales/kaa.yml +0 -11
  134. data/config/locales/lo-LA.yml +0 -1
  135. data/config/locales/oc-FR.yml +0 -1
  136. data/config/locales/sq-AL.yml +0 -1
  137. data/config/locales/th-TH.yml +0 -1
@@ -4,7 +4,7 @@
4
4
  <div class="filters__section">
5
5
  <div class="filters__search">
6
6
  <div class="input-group">
7
- <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), "aria-label": t(".search"), data: { disable_dynamic_change: true } %>
7
+ <%= form.search_field :search_text_cont, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), "aria-label": t(".search"), data: { disable_dynamic_change: true } %>
8
8
  <div class="input-group-button">
9
9
  <button type="submit" class="button" aria-controls="projects">
10
10
  <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
@@ -15,15 +15,15 @@
15
15
  </div>
16
16
 
17
17
  <% if voting_finished? %>
18
- <%= form.check_boxes_tree :status, filter_status_values, legend_title: t(".status"), "aria-controls": "projects" %>
18
+ <%= form.check_boxes_tree :with_any_status, filter_status_values, legend_title: t(".status"), "aria-controls": "projects" %>
19
19
  <% end %>
20
20
 
21
21
  <% if current_component.has_subscopes? %>
22
- <%= form.check_boxes_tree :scope_id, resource_filter_scope_values(budget.scope), legend_title: t(".scope"), "aria-controls": "projects" %>
22
+ <%= form.check_boxes_tree :with_any_scope, resource_filter_scope_values(budget.scope), legend_title: t(".scope"), "aria-controls": "projects" %>
23
23
  <% end %>
24
24
 
25
25
  <% if current_participatory_space.categories.any? %>
26
- <%= form.check_boxes_tree :category_id, filter_categories_values, legend_title: t(".category"), "aria-controls": "projects" %>
26
+ <%= form.check_boxes_tree :with_any_category, filter_categories_values, legend_title: t(".category"), "aria-controls": "projects" %>
27
27
  <% end %>
28
28
 
29
29
  <%= hidden_field_tag :order, order, id: nil, class: "order_filter" %>
@@ -5,6 +5,31 @@
5
5
 
6
6
  <div class="voting-wrapper">
7
7
  <div class="row columns">
8
+ <% if component_settings.geocoding_enabled? %>
9
+ <%= dynamic_map_for projects_data_for_map(all_geocoded_projects) do %>
10
+ <template id="marker-popup">
11
+ <div class="map-info__content">
12
+ <h3>${title}</h3>
13
+ <div id="bodyContent">
14
+ <p>{{html body}}</p>
15
+ <div class="map__date-address">
16
+ <div class="address card__extra">
17
+ <div class="address__icon">{{html icon}}</div>
18
+ <div class="address__details">
19
+ <span>${address}</span><br>
20
+ </div>
21
+ </div>
22
+ </div>
23
+ <div class="map-info__button">
24
+ <a href="${link}" class="button button--sc">
25
+ <%= t(".view_project") %>
26
+ </a>
27
+ </div>
28
+ </div>
29
+ </div>
30
+ </template>
31
+ <% end %>
32
+ <% end %>
8
33
  <% if voting_finished? %>
9
34
  <h2 class="heading2">
10
35
  <%= t("decidim.budgets.projects.projects_for", name: translated_attribute(budget.title)) %>
@@ -33,4 +58,6 @@
33
58
  </div>
34
59
  </div>
35
60
 
36
- <%= javascript_pack_tag("decidim_budgets") %>
61
+ <% content_for :js_content do %>
62
+ <%= javascript_pack_tag "decidim_budgets" %>
63
+ <% end %>
@@ -55,8 +55,11 @@ edit_link(
55
55
  </div>
56
56
  <div class="columns mediumlarge-8 mediumlarge-pull-4">
57
57
  <div class="section">
58
+ <% if component_settings.geocoding_enabled? && project.geocoded? %>
59
+ <%= render partial: "decidim/shared/static_map", locals: { icon_name: "projects", geolocalizable: project } %>
60
+ <% end %>
58
61
  <%= cell("decidim/budgets/project_selected_status", project, as_label: true) %>
59
- <%= decidim_sanitize_editor_admin translated_attribute project.description %>
62
+ <%= decidim_sanitize_editor translated_attribute project.description %>
60
63
  <%= cell "decidim/budgets/project_tags", project, context: { extra_classes: ["tags--project"] } %>
61
64
  </div>
62
65
  <%= attachments_for project %>
@@ -68,4 +71,6 @@ edit_link(
68
71
 
69
72
  <%= comments_for project, polymorphic: [project.budget] %>
70
73
 
71
- <%= javascript_pack_tag("decidim_budgets") %>
74
+ <% content_for :js_content do %>
75
+ <%= javascript_pack_tag "decidim_budgets" %>
76
+ <% end %>
@@ -0,0 +1,21 @@
1
+ <p><%= t(".email_intro") %></p>
2
+
3
+ <p><%= t(".email_budgets") %></p>
4
+
5
+ <ul>
6
+ <% @orders.each do |order| %>
7
+ <li>
8
+ <%= link_to(
9
+ translated_attribute(order.budget.title),
10
+ routes.budget_url(order.budget, host: @organization.host)
11
+ ) %>
12
+ </li>
13
+ <% end %>
14
+ </ul>
15
+
16
+ <p><%= t(".email_outro") %></p>
17
+
18
+ <%= link_to(
19
+ t(".email_link"),
20
+ routes.root_url(host: @organization.host)
21
+ ) %>
data/config/assets.rb CHANGED
@@ -4,6 +4,7 @@ base_path = File.expand_path("..", __dir__)
4
4
 
5
5
  Decidim::Webpacker.register_path("#{base_path}/app/packs")
6
6
  Decidim::Webpacker.register_entrypoints(
7
- decidim_budgets: "#{base_path}/app/packs/entrypoints/decidim_budgets.js"
7
+ decidim_budgets: "#{base_path}/app/packs/entrypoints/decidim_budgets.js",
8
+ decidim_budgets_admin: "#{base_path}/app/packs/entrypoints/decidim_budgets_admin.js"
8
9
  )
9
10
  Decidim::Webpacker.register_stylesheet_import("stylesheets/decidim/budgets/budgets")
@@ -1 +1,2 @@
1
+ ---
1
2
  am:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ar:
2
3
  activemodel:
3
4
  attributes:
@@ -60,6 +61,9 @@ ar:
60
61
  title: تحرير المشروع
61
62
  update: تحديث
62
63
  index:
64
+ actions: الإجراءات
65
+ cancel: إلغاء
66
+ change_category: تغيير الفئة
63
67
  finished_orders: الانتهاء من الأصوات
64
68
  pending_orders: في انتظار الأصوات
65
69
  title: مشاريع
@@ -115,7 +119,6 @@ ar:
115
119
  description: لقد قمت بالتصويت بالفعل على الميزانية. إذا غيرت رأيك ، يمكنك %{cancel_link}.
116
120
  title: اكتمال التصويت في الميزانية
117
121
  title: عليك أن تقرر الميزانية
118
- total_budget: الميزانية الإجمالية
119
122
  count:
120
123
  projects_count:
121
124
  zero: "%{count} مشاريع"
@@ -129,6 +132,7 @@ ar:
129
132
  scope: نطاق
130
133
  search: بحث
131
134
  filters_small_view:
135
+ close_modal: إغلاق مشروط
132
136
  filter: منقي
133
137
  filter_by: مصنف بواسطة
134
138
  unfold: كشف
@@ -1,3 +1,4 @@
1
+ ---
1
2
  bg:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ca:
2
3
  activemodel:
3
4
  attributes:
@@ -20,9 +21,6 @@ ca:
20
21
  scope_id: Àmbit
21
22
  activerecord:
22
23
  models:
23
- decidim/budgets/budget:
24
- one: Pressupost
25
- other: Pressupostos
26
24
  decidim/budgets/project:
27
25
  one: Projecte
28
26
  other: Projectes
@@ -43,7 +41,7 @@ ca:
43
41
  actions:
44
42
  attachment_collections: Carpetes
45
43
  attachments: Adjunts
46
- confirm_destroy: Segur que vols eliminar aquest projecte?
44
+ confirm_destroy: Estàs segura que vols eliminar aquest projecte?
47
45
  destroy: Esborrar
48
46
  edit: Editar
49
47
  edit_projects: Gestionar projectes
@@ -91,16 +89,40 @@ ca:
91
89
  title: Editar projecte
92
90
  update: Actualitzar
93
91
  index:
92
+ actions: Accions
93
+ cancel: Cancel·lar
94
+ change_category: Canviar categoria
95
+ change_scope: Canviar àmbit
96
+ change_selected: Canviar la selecció
97
+ deselect_implementation: Deseleccionar
94
98
  finished_orders: Vots finalitzats
95
99
  pending_orders: Vots en procés
100
+ select_for_implementation: Seleccionar
96
101
  selected: Seleccionat
97
102
  title: Projectes
103
+ update: Actualitzar
104
+ update_scope_button: Actualitzar àmbit
98
105
  new:
99
106
  create: Crear
100
107
  title: Nou projecte
101
108
  update:
102
109
  invalid: S'ha produït un error en actualitzar aquest projecte
103
110
  success: Projecte actualitzat correctament
111
+ update_category:
112
+ invalid: 'Aquestes propostes ja tenien la categoria %{subject_name}: %{projects}.'
113
+ select_a_category: Si us plau, selecciona una categoria
114
+ select_a_project: Si us plau, selecciona un projecte
115
+ success: 'Els projectes s''han actualitzat correctament a la categoria %{subject_name}: %{projects}.'
116
+ update_scope:
117
+ invalid: 'Aquests projectes ja estaven assignats a l''àmbit %{subject_name}: %{projects}.'
118
+ select_a_project: Si us plau, selecciona un projecte
119
+ select_a_scope: Si us plau, selecciona un àmbit
120
+ success: 'Els projectes s''han actualitzat correctament a l''àmbit %{subject_name}: %{projects}.'
121
+ update_selected:
122
+ invalid: 'Aquests projectes ja estaven seleccionats: %{projects}.'
123
+ select_a_project: Si us plau, selecciona un projecte
124
+ select_a_selection: Si us plau, fes una selecció
125
+ success: 'Selecció de projectes modificada correctament: %{projects}.'
104
126
  proposals_imports:
105
127
  create:
106
128
  invalid: S'ha produït un error en importar les propostes en projectes
@@ -113,6 +135,12 @@ ca:
113
135
  origin_component_id: Component d'origen
114
136
  select_component: Selecciona un component
115
137
  title: Importar propostes
138
+ reminders:
139
+ orders:
140
+ description: Les usuàries rebran un correu amb els enllaços als pressupostos on tenen "comandes" pendents.
141
+ title:
142
+ one: Estàs a punt d'enviar un correu recordatori a %{count} usuària
143
+ other: Estàs a punt d'enviar un correu recordatori a les usuàries %{count}
116
144
  admin_log:
117
145
  budget:
118
146
  create: "%{user_name} ha creat el pressupost %{resource_name} a l'espai %{space_name}"
@@ -144,6 +172,8 @@ ca:
144
172
  show: Mostra els projectes
145
173
  vote: Vota
146
174
  voted_on: Has votat a %{links}
175
+ last_activity:
176
+ new_vote_at_html: "<span>Nova votació pressupostària a %{link}</span>"
147
177
  limit_announcement:
148
178
  cant_vote: No pots votar a aquests pressupostos. <a href="%{landing_path}"> Prova amb un altre pressupost </a>.
149
179
  limit_reached: Tens vots actius a %{links}. Per votar en aquest pressupot has d' <a href="%{landing_path}">esborrar el teu vot i començar de nou</a>.
@@ -157,6 +187,7 @@ ca:
157
187
  fields:
158
188
  category: Categoria
159
189
  id: ID
190
+ scope: Àmbit
160
191
  title: Títol
161
192
  order_summary_mailer:
162
193
  order_summary:
@@ -225,10 +256,12 @@ ca:
225
256
  not_selected: No seleccionat
226
257
  selected: Seleccionat
227
258
  filters_small_view:
228
- close_modal: Tancar el modal
259
+ close_modal: Tancar finestra
229
260
  filter: Filtra
230
261
  filter_by: Filtra per
231
262
  unfold: Desplegar
263
+ index:
264
+ view_project: Veure projecte
232
265
  order_progress:
233
266
  vote: Vota
234
267
  order_selected_projects:
@@ -262,6 +295,15 @@ ca:
262
295
  show:
263
296
  budget: Pressupost
264
297
  view_all_projects: Veure tots els projectes
298
+ vote_reminder_mailer:
299
+ vote_reminder:
300
+ email_budgets: 'Àrees a les quals no has finalitzat el vot:'
301
+ email_intro: Has iniciat la votació als pressupostos participatius, però no l'has completat.
302
+ email_link: Ves-hi i segueix votant
303
+ email_outro: Si us plau, recorda completar el vot. Per votar, primer has de seleccionar la proposta o propostes que vols votar i a després confirmar el teu vot amb el botó "Votar".
304
+ email_subject:
305
+ one: Tens un vot no finalitzat a la votació dels pressupostos participatius
306
+ other: Tens alguns vots no finalitzats a la votació dels pressupostos participatius
265
307
  components:
266
308
  budgets:
267
309
  actions:
@@ -277,6 +319,7 @@ ca:
277
319
  errors:
278
320
  budget_voting_rule_only_one: Cal activar com a mínim una norma per a la votació
279
321
  budget_voting_rule_required: Es requereix una norma per a la votació
322
+ geocoding_enabled: Geolocalització habilitada
280
323
  landing_page_content: Pàgina d'inici de pressupostos
281
324
  more_information_modal: Finestra de "Més informació"
282
325
  projects_per_page: Projectes per pàgina
@@ -1,3 +1,4 @@
1
+ ---
1
2
  cs:
2
3
  activemodel:
3
4
  attributes:
@@ -20,11 +21,6 @@ cs:
20
21
  scope_id: Oblast působnosti
21
22
  activerecord:
22
23
  models:
23
- decidim/budgets/budget:
24
- one: Rozpočet
25
- few: Rozpočty
26
- many: Rozpočtů
27
- other: Rozpočtů
28
24
  decidim/budgets/project:
29
25
  one: Projekt
30
26
  few: Projekty
@@ -95,16 +91,40 @@ cs:
95
91
  title: Upravit projekt
96
92
  update: Aktualizace
97
93
  index:
94
+ actions: Akce
95
+ cancel: Zrušit
96
+ change_category: Změnit kategorii
97
+ change_scope: Změnit rozsah
98
+ change_selected: Změnit vybrané
99
+ deselect_implementation: Zrušit výběr
98
100
  finished_orders: Dokončené hlasy
99
101
  pending_orders: Čeká na hlasování
102
+ select_for_implementation: Vybrat
100
103
  selected: Vybrané
101
104
  title: Projekty
105
+ update: Aktualizovat
106
+ update_scope_button: Aktualizovat rozsah
102
107
  new:
103
108
  create: Vytvořit
104
109
  title: Nový projekt
105
110
  update:
106
111
  invalid: Při aktualizaci tohoto projektu došlo k problému
107
112
  success: Projekt byl úspěšně aktualizován
113
+ update_category:
114
+ invalid: 'Tyto projekty již mají kategorii %{subject_name}: %{projects}.'
115
+ select_a_category: Vyberte prosím kategorii
116
+ select_a_project: Vyberte projekt
117
+ success: 'Projekty byly úspěšně aktualizovány do kategorie %{subject_name}: %{projects}.'
118
+ update_scope:
119
+ invalid: 'Tyto projekty již mají rozsah %{subject_name}: %{projects}.'
120
+ select_a_project: Vyberte projekt
121
+ select_a_scope: Vyberte prosím rozsah
122
+ success: 'Projekty byly úspěšně aktualizovány na rozsah %{subject_name}: %{projects}.'
123
+ update_selected:
124
+ invalid: 'Tyto projekty již mají stejný výběr: %{projects}.'
125
+ select_a_project: Vyberte projekt
126
+ select_a_selection: Vyberte prosím výběr
127
+ success: 'Výběr projektů byl úspěšně změněn: %{projects}.'
108
128
  proposals_imports:
109
129
  create:
110
130
  invalid: Při importu návrhů do projektů došlo k problému
@@ -117,6 +137,14 @@ cs:
117
137
  origin_component_id: Původ komponenty
118
138
  select_component: Vyberte součást
119
139
  title: Importovat návrhy
140
+ reminders:
141
+ orders:
142
+ description: Uživatelé obdrží e-mail s odkazy na rozpočty, kde se čeká na vyjádření.
143
+ title:
144
+ one: Chystáte se odeslat připomenutí e-mailu %{count} uživateli
145
+ few: Chystáte se odeslat připomenutí e-mailu %{count} uživatelům
146
+ many: Chystáte se odeslat připomenutí e-mailu %{count} uživatelům
147
+ other: Chystáte se odeslat připomenutí e-mailu %{count} uživatelům
120
148
  admin_log:
121
149
  budget:
122
150
  create: "%{user_name} vytvořil %{resource_name} rozpočet ve skupině %{space_name}"
@@ -148,6 +176,8 @@ cs:
148
176
  show: Zobrazit projekty
149
177
  vote: Hlasovat
150
178
  voted_on: Hlasovali jste pro %{links}
179
+ last_activity:
180
+ new_vote_at_html: "<span>Nové hlasování o rozpočtu v %{link}</span>"
151
181
  limit_announcement:
152
182
  cant_vote: O tomto rozpočtu nelze hlasovat. <a href="%{landing_path}">Zkuste jiný rozpočet</a>.
153
183
  limit_reached: Máte aktivní hlasy v %{links}. Chcete-li hlasovat o tomto rozpočtu, musíte <a href="%{landing_path}">smazat svůj hlas a začít znovu</a>.
@@ -161,6 +191,7 @@ cs:
161
191
  fields:
162
192
  category: Kategorie
163
193
  id: ID
194
+ scope: Rozsah
164
195
  title: Titul
165
196
  order_summary_mailer:
166
197
  order_summary:
@@ -217,7 +248,7 @@ cs:
217
248
  other: "%{count} projektů"
218
249
  exit_modal:
219
250
  cancel: Návrat k hlasování
220
- close_modal: Zavřít okno
251
+ close_modal: Zavřít modal
221
252
  exit: Ukončit hlasování
222
253
  message: Váš hlas nebyl zaregistrován, protože jste ještě nedokončili proces hlasování. Opravdu chcete ukončit hlasování?
223
254
  title: Zatím jste nehlasovali
@@ -231,10 +262,12 @@ cs:
231
262
  not_selected: Nevybráno
232
263
  selected: Vybrané
233
264
  filters_small_view:
234
- close_modal: Zavřít okno
265
+ close_modal: Zavřít modální
235
266
  filter: Filtr
236
267
  filter_by: Filtrovat podle
237
268
  unfold: Rozbalit
269
+ index:
270
+ view_project: Zobrazit projekt
238
271
  order_progress:
239
272
  vote: Hlasovat
240
273
  order_selected_projects:
@@ -262,7 +295,7 @@ cs:
262
295
  few: hlasy
263
296
  many: hlasů
264
297
  other: hlasů
265
- you_voted: Hlasoval jste pro toto
298
+ you_voted: Hlasovali jste
266
299
  project_budget_button:
267
300
  add: Přidat do vašeho hlasování
268
301
  add_descriptive: Přidat k hlasování projekt %{resource_name}
@@ -272,6 +305,17 @@ cs:
272
305
  show:
273
306
  budget: Rozpočet
274
307
  view_all_projects: Zobrazit všechny projekty
308
+ vote_reminder_mailer:
309
+ vote_reminder:
310
+ email_budgets: 'Oblasti, kde máte nedokončené hlasování:'
311
+ email_intro: Zahájili jste hlasování o participačním rozpočtu, ale nedokončili jste ho.
312
+ email_link: Pokračovat v hlasování
313
+ email_outro: Nezapomeňte prosím dokončit hlasování. Chcete-li hlasovat, musíte nejprve vybrat návrh nebo návrhy, o kterých chcete hlasovat, a potvrdit svůj hlas pomocí tlačítka "Hlasování".
314
+ email_subject:
315
+ one: Máte nedokončené hlasování v participativním rozpočtovém hlasování
316
+ few: Máte nedokončené hlasování v participativním rozpočtovém hlasování
317
+ many: Máte nedokončená hlasování v participativním rozpočtovém hlasování
318
+ other: Máte nedokončené hlasování v participativním rozpočtovém hlasování
275
319
  components:
276
320
  budgets:
277
321
  actions:
@@ -287,6 +331,7 @@ cs:
287
331
  errors:
288
332
  budget_voting_rule_only_one: Pouze jedno hlasovací pravidlo musí být povoleno
289
333
  budget_voting_rule_required: Je vyžadováno jedno pravidlo hlasování
334
+ geocoding_enabled: Geokódování aktivováno
290
335
  landing_page_content: Úvodní stránka rozpočtů
291
336
  more_information_modal: Více informací
292
337
  projects_per_page: Počet projektů na stránku
@@ -1 +1,2 @@
1
+ ---
1
2
  da:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  de:
2
3
  activemodel:
3
4
  attributes:
@@ -6,23 +7,17 @@ de:
6
7
  description: Beschreibung
7
8
  title: Titel
8
9
  total_budget: Gesamtbudget
9
- weight: Reihenfolge
10
+ weight: Bestellposition
10
11
  project:
11
12
  budget_amount: Höhe des Budgets
12
13
  decidim_category_id: Kategorie
13
14
  decidim_scope_id: Umfang
14
15
  description: Beschreibung
15
16
  proposal_ids: Ähnliche Vorschläge
16
- proposals: Vorschläge
17
17
  selected: Zur Implementierung ausgewählt
18
18
  title: Titel
19
- proposals_import:
20
- scope_id: Themenbereich
21
19
  activerecord:
22
20
  models:
23
- decidim/budgets/budget:
24
- one: Budget
25
- other: Budgets
26
21
  decidim/budgets/project:
27
22
  one: Projekt
28
23
  other: Projekte
@@ -78,7 +73,7 @@ de:
78
73
  projects: Projekte
79
74
  models:
80
75
  budget:
81
- name: Budget
76
+ name: Bugdet
82
77
  project:
83
78
  name: Projekt
84
79
  projects:
@@ -91,28 +86,55 @@ de:
91
86
  title: Projekt bearbeiten
92
87
  update: Aktualisieren
93
88
  index:
89
+ actions: Aktionen
90
+ cancel: Abbrechen
91
+ change_category: Kategorie ändern
92
+ change_scope: Themenbereich ändern
93
+ change_selected: Auswahl ändern
94
+ deselect_implementation: Auswahl aufheben
94
95
  finished_orders: Abgeschlossene Stimmen
95
96
  pending_orders: Ausstehende Stimmen
97
+ select_for_implementation: Auswählen
96
98
  selected: Ausgewählt
97
99
  title: Projekte
100
+ update: Aktualisieren
101
+ update_scope_button: Themenbereich aktualisieren
98
102
  new:
99
103
  create: Erstellen
100
104
  title: Neues Projekt
101
105
  update:
102
106
  invalid: Beim Aktualisieren dieses Projekts ist ein Problem aufgetreten
103
107
  success: Projekt erfolgreich aktualisiert
108
+ update_category:
109
+ invalid: 'Diese Projekte gehörten bereits zur Kategorie %{subject_name}: %{projects}.'
110
+ select_a_category: Bitte wählen Sie eine Kategorie aus
111
+ select_a_project: Bitte wählen Sie ein Projekt
112
+ success: 'Die folgenden Projekte wurden erfolgreich zur Kategorie %{subject_name} hinzugefügt: %{projects}.'
113
+ update_scope:
114
+ invalid: 'Diese Projekte gehörten bereits zum Themenbereich %{subject_name}: %{projects}.'
115
+ select_a_project: Bitte wählen Sie ein Projekt
116
+ select_a_scope: Bitte wählen Sie einen Themenbereich
117
+ success: 'Die folgenden Projekte wurden erfolgreich zum Themenbereich %{subject_name} hinzugefügt: %{projects}.'
118
+ update_selected:
119
+ invalid: 'Diese Projekte wurden bereits zur Umsetzung ausgewählt: %{projects}.'
120
+ select_a_project: Bitte wählen Sie ein Projekt
121
+ select_a_selection: Bitte wähle einen Umsetzungsstatus
122
+ success: 'Ausgewählte Projekte erfolgreich geändert: %{projects}.'
104
123
  proposals_imports:
105
124
  create:
106
125
  invalid: Beim Importieren der Vorschläge in Projekte ist ein Problem aufgetreten
107
126
  success: "%{number} Vorschläge wurden erfolgreich in Projekte importiert"
108
127
  new:
109
128
  create: Importieren Sie Vorschläge in Projekte
110
- default_budget: Standardbudget
111
- import_all_accepted_proposals: Alle akzeptierten Vorschläge importieren
112
129
  no_components: Es gibt keine weiteren Vorschlagskomponenten in diesem partizipativen Raum, um die Vorschläge in Projekte zu importieren.
113
- origin_component_id: Ursprungskomponente
114
130
  select_component: Bitte wählen Sie eine Komponente aus
115
131
  title: Vorschläge importieren
132
+ reminders:
133
+ orders:
134
+ description: Benutzer erhalten eine E-Mail mit Links zu den Budgets, in denen sie ausstehende Stimmen haben.
135
+ title:
136
+ one: Sie werden eine Erinnerungs-E-Mail an %{count} Benutzer zu senden
137
+ other: Sie werden eine Erinnerungs-E-Mail an %{count} Benutzer zu senden
116
138
  admin_log:
117
139
  budget:
118
140
  create: "%{user_name} hat das Budget %{resource_name} in %{space_name} erstellt"
@@ -144,6 +166,8 @@ de:
144
166
  show: Projekte ansehen
145
167
  vote: Abstimmen
146
168
  voted_on: Sie haben über %{links} abgestimmt
169
+ last_activity:
170
+ new_vote_at_html: "<span>Neue Budgetverteilung unter %{link}</span>"
147
171
  limit_announcement:
148
172
  cant_vote: Sie können nicht über dieses Budget abstimmen. <a href="%{landing_path}">Versuchen Sie es mit einem anderen Budget</a>.
149
173
  limit_reached: Sie haben aktive Stimmen in %{links}. Um über dieses Budget abstimmen zu können, müssen Sie <a href="%{landing_path}">Ihre Stimme löschen und neu </a> beginnen.
@@ -157,6 +181,7 @@ de:
157
181
  fields:
158
182
  category: Kategorie
159
183
  id: ID
184
+ scope: Themenbereich
160
185
  title: Titel
161
186
  order_summary_mailer:
162
187
  order_summary:
@@ -167,7 +192,7 @@ de:
167
192
  projects:
168
193
  budget_confirm:
169
194
  are_you_sure: Wenn du deine Meinung änderst, kannst du deine Stimme nachträglich ändern.
170
- cancel: Abbrechen
195
+ cancel: Stornieren
171
196
  confirm: Bestätigen
172
197
  description: Dies sind die Projekte, die Sie für das Budget ausgewählt haben.
173
198
  title: Bestätigung der Abstimmung
@@ -200,7 +225,7 @@ de:
200
225
  rules:
201
226
  title: Budgetregeln
202
227
  title: Sie entscheiden über das Budget
203
- total_budget: Gesamtbudget; Gesamtetat
228
+ total_budget: Gesamtbudget
204
229
  total_projects: Stimmen insgesamt
205
230
  vote_threshold_percent_rule:
206
231
  description: Welche Projekte sollen finanziert werden? Wählen Sie Projekte im Wert von mindestens %{minimum_budget} aus und stimmen Sie entsprechend Ihren Präferenzen ab, um das Budget festzulegen.
@@ -225,12 +250,12 @@ de:
225
250
  not_selected: Nicht ausgewählt
226
251
  selected: Ausgewählt
227
252
  filters_small_view:
228
- close_modal: Dialog schließen
253
+ close_modal: Modal schließen
229
254
  filter: Filter
230
255
  filter_by: Filtern nach
231
256
  unfold: Aufklappen
232
257
  order_progress:
233
- vote: Abstimmen
258
+ vote: Abstimmung
234
259
  order_selected_projects:
235
260
  remove: Löschen
236
261
  selected_projects:
@@ -252,7 +277,7 @@ de:
252
277
  votes:
253
278
  one: Abstimmung
254
279
  other: Abstimmungen
255
- you_voted: Sie haben dafür gestimmt
280
+ you_voted: Du hast für dieses gestimmt
256
281
  project_budget_button:
257
282
  add: Zur Abstimmung hinzufügen
258
283
  add_descriptive: Projekt %{resource_name} Ihrer Stimme hinzufügen
@@ -262,6 +287,15 @@ de:
262
287
  show:
263
288
  budget: Budget
264
289
  view_all_projects: Alle Projekte anzeigen
290
+ vote_reminder_mailer:
291
+ vote_reminder:
292
+ email_budgets: 'Bereiche, in denen Sie eine unvollendete Abstimmung haben:'
293
+ email_intro: Sie haben Ihre begonnene Abstimmung zur Verteilung des partizipativen Budgets noch nicht abgeschlossen.
294
+ email_link: Mit der Abstimmung fortfahren
295
+ email_outro: Denken Sie daran, die Abstimmung vollständig abzuschließen. Wählen Sie dazu den gewünschten Vorschlag oder die gewünschten Vorschläge aus, denen Sie Ihre Stimme geben möchten. Bestätigen Sie anschliessend Ihre Auswahl, indem Sie auf "Abstimmen" klicken.
296
+ email_subject:
297
+ one: Sie haben Ihre Abstimmung bei der Verteilung des partizipativen Budgets noch nicht abgeschlossen
298
+ other: Sie haben Ihre Abstimmung bei der Verteilung des partizipativen Budgets noch nicht abgeschlossen
265
299
  components:
266
300
  budgets:
267
301
  actions: