decidim-budgets 0.29.2 → 0.30.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/budgets/budget_list_item/vote_action.erb +2 -2
  3. data/app/cells/decidim/budgets/project_history_cell.rb +48 -0
  4. data/app/cells/decidim/budgets/project_metadata_cell.rb +3 -3
  5. data/app/cells/decidim/budgets/project_vote_button/show.erb +4 -2
  6. data/app/cells/decidim/budgets/project_vote_button_cell.rb +4 -0
  7. data/app/commands/decidim/budgets/admin/create_budget.rb +1 -1
  8. data/app/commands/decidim/budgets/admin/create_project.rb +1 -1
  9. data/app/commands/decidim/budgets/admin/import_proposals_to_budgets.rb +1 -8
  10. data/app/commands/decidim/budgets/admin/update_budget.rb +1 -1
  11. data/app/commands/decidim/budgets/admin/update_project.rb +2 -2
  12. data/app/commands/decidim/budgets/admin/update_project_selection.rb +1 -1
  13. data/app/controllers/concerns/decidim/budgets/admin/filterable.rb +7 -11
  14. data/app/controllers/decidim/budgets/admin/budgets_controller.rb +12 -15
  15. data/app/controllers/decidim/budgets/admin/projects_controller.rb +61 -85
  16. data/app/controllers/decidim/budgets/orders_controller.rb +7 -3
  17. data/app/controllers/decidim/budgets/projects_controller.rb +7 -16
  18. data/app/forms/decidim/budgets/admin/budget_form.rb +0 -17
  19. data/app/forms/decidim/budgets/admin/project_form.rb +7 -33
  20. data/app/forms/decidim/budgets/admin/project_import_proposals_form.rb +0 -11
  21. data/app/helpers/decidim/budgets/projects_helper.rb +6 -31
  22. data/app/models/decidim/budgets/budget.rb +2 -0
  23. data/app/models/decidim/budgets/project.rb +21 -1
  24. data/app/packs/stylesheets/budgets.scss +0 -2
  25. data/app/permissions/decidim/budgets/admin/permissions.rb +4 -4
  26. data/app/presenters/decidim/budgets/admin_log/budget_presenter.rb +1 -1
  27. data/app/presenters/decidim/budgets/admin_log/project_presenter.rb +1 -1
  28. data/app/presenters/decidim/budgets/project_presenter.rb +28 -0
  29. data/app/queries/decidim/budgets/filtered_projects.rb +2 -2
  30. data/app/queries/decidim/budgets/metrics/budget_followers_metric_measure.rb +2 -2
  31. data/app/queries/decidim/budgets/metrics/budget_participants_metric_measure.rb +2 -2
  32. data/app/serializers/decidim/budgets/download_your_data_budgets_order_serializer.rb +2 -2
  33. data/app/views/decidim/budgets/admin/budgets/_actions.html.erb +21 -0
  34. data/app/views/decidim/budgets/admin/budgets/_budget-tr.html.erb +18 -0
  35. data/app/views/decidim/budgets/admin/budgets/_budgets-thead.html.erb +8 -0
  36. data/app/views/decidim/budgets/admin/budgets/_form.html.erb +0 -6
  37. data/app/views/decidim/budgets/admin/budgets/index.html.erb +16 -48
  38. data/app/views/decidim/budgets/admin/budgets/manage_trash.html.erb +19 -0
  39. data/app/views/decidim/budgets/admin/projects/_actions.html.erb +27 -0
  40. data/app/views/decidim/budgets/admin/projects/_bulk-actions.html.erb +0 -2
  41. data/app/views/decidim/budgets/admin/projects/_form.html.erb +6 -8
  42. data/app/views/decidim/budgets/admin/projects/_project-tr.html.erb +2 -27
  43. data/app/views/decidim/budgets/admin/projects/_projects-thead.html.erb +14 -0
  44. data/app/views/decidim/budgets/admin/projects/bulk_actions/_dropdown.html.erb +7 -10
  45. data/app/views/decidim/budgets/admin/projects/bulk_actions/_taxonomy_change.html.erb +23 -0
  46. data/app/views/decidim/budgets/admin/projects/index.html.erb +19 -21
  47. data/app/views/decidim/budgets/admin/projects/manage_trash.html.erb +26 -0
  48. data/app/views/decidim/budgets/admin/projects/update_attribute.js.erb +1 -1
  49. data/app/views/decidim/budgets/admin/proposals_imports/new.html.erb +0 -5
  50. data/app/views/decidim/budgets/budgets/index.html.erb +6 -1
  51. data/app/views/decidim/budgets/order_summary_mailer/order_summary.html.erb +0 -10
  52. data/app/views/decidim/budgets/orders/status.html.erb +52 -0
  53. data/app/views/decidim/budgets/projects/_order_progress_summary_content.html.erb +3 -3
  54. data/app/views/decidim/budgets/projects/index.html.erb +10 -17
  55. data/app/views/decidim/budgets/projects/index.js.erb +1 -1
  56. data/app/views/decidim/budgets/projects/show.html.erb +19 -11
  57. data/config/locales/ar.yml +3 -10
  58. data/config/locales/bg.yml +3 -43
  59. data/config/locales/ca.yml +95 -42
  60. data/config/locales/cs.yml +101 -42
  61. data/config/locales/de.yml +95 -42
  62. data/config/locales/el.yml +3 -39
  63. data/config/locales/en.yml +95 -42
  64. data/config/locales/es-MX.yml +95 -42
  65. data/config/locales/es-PY.yml +95 -42
  66. data/config/locales/es.yml +95 -42
  67. data/config/locales/eu.yml +95 -42
  68. data/config/locales/fi-plain.yml +95 -42
  69. data/config/locales/fi.yml +94 -41
  70. data/config/locales/fr-CA.yml +38 -44
  71. data/config/locales/fr.yml +38 -44
  72. data/config/locales/ga-IE.yml +0 -3
  73. data/config/locales/gl.yml +3 -7
  74. data/config/locales/hu.yml +3 -40
  75. data/config/locales/id-ID.yml +3 -3
  76. data/config/locales/is-IS.yml +0 -3
  77. data/config/locales/it.yml +3 -5
  78. data/config/locales/ja.yml +92 -42
  79. data/config/locales/kaa.yml +0 -1
  80. data/config/locales/ko.yml +0 -20
  81. data/config/locales/lb.yml +3 -5
  82. data/config/locales/lt.yml +3 -41
  83. data/config/locales/lv.yml +3 -3
  84. data/config/locales/nl.yml +3 -24
  85. data/config/locales/no.yml +3 -8
  86. data/config/locales/pl.yml +5 -43
  87. data/config/locales/pt-BR.yml +4 -43
  88. data/config/locales/pt.yml +3 -5
  89. data/config/locales/ro-RO.yml +3 -17
  90. data/config/locales/ru.yml +3 -3
  91. data/config/locales/sk.yml +3 -3
  92. data/config/locales/sq-AL.yml +0 -16
  93. data/config/locales/sv.yml +94 -41
  94. data/config/locales/tr-TR.yml +3 -5
  95. data/config/locales/uk.yml +3 -3
  96. data/config/locales/zh-CN.yml +3 -4
  97. data/config/locales/zh-TW.yml +3 -39
  98. data/db/migrate/20200827154129_add_commentable_counter_cache_to_projects.rb +1 -1
  99. data/db/migrate/20210310120613_add_followable_counter_cache_to_budgets.rb +1 -1
  100. data/db/migrate/20240828103724_add_deleted_at_to_decidim_budgets_budgets.rb +8 -0
  101. data/db/migrate/20240916135141_add_deleted_at_to_decidim_budgets_projects.rb +8 -0
  102. data/decidim-budgets.gemspec +1 -1
  103. data/lib/decidim/api/budget_type.rb +3 -6
  104. data/lib/decidim/api/budgets_type.rb +4 -5
  105. data/lib/decidim/api/project_type.rb +6 -8
  106. data/lib/decidim/budgets/admin_engine.rb +16 -2
  107. data/lib/decidim/budgets/component.rb +4 -5
  108. data/lib/decidim/budgets/engine.rb +1 -0
  109. data/lib/decidim/budgets/project_serializer.rb +16 -14
  110. data/lib/decidim/budgets/seeds.rb +0 -2
  111. data/lib/decidim/budgets/version.rb +1 -1
  112. metadata +27 -22
  113. data/app/cells/decidim/budgets/project_tags/show.erb +0 -5
  114. data/app/cells/decidim/budgets/project_tags_cell.rb +0 -18
  115. data/app/commands/decidim/budgets/admin/destroy_budget.rb +0 -17
  116. data/app/commands/decidim/budgets/admin/update_project_category.rb +0 -48
  117. data/app/commands/decidim/budgets/admin/update_project_scope.rb +0 -54
  118. data/app/helpers/decidim/budgets/admin/application_helper.rb +0 -13
  119. data/app/views/decidim/budgets/admin/projects/bulk_actions/_recategorize.html.erb +0 -15
  120. data/app/views/decidim/budgets/admin/projects/bulk_actions/_scope-change.html.erb +0 -22
@@ -3,15 +3,12 @@ sv:
3
3
  activemodel:
4
4
  attributes:
5
5
  budget:
6
- decidim_scope_id: Indelning
7
6
  description: Beskrivning
8
7
  title: Titel
9
8
  total_budget: Total budget
10
9
  weight: Position i listan
11
10
  project:
12
11
  budget_amount: Belopp
13
- decidim_category_id: Kategori
14
- decidim_scope_id: Indelning
15
12
  description: Beskrivning
16
13
  proposal_ids: Relaterade förslag
17
14
  proposals: Förslag
@@ -21,6 +18,10 @@ sv:
21
18
  scope_id: Indelning
22
19
  activerecord:
23
20
  models:
21
+ decidim:
22
+ budgets:
23
+ project:
24
+ text: 'Lades till den här budgeten: %{link}'
24
25
  decidim/budgets/budget:
25
26
  one: Budget
26
27
  other: Budgetar
@@ -29,23 +30,25 @@ sv:
29
30
  other: Projekt
30
31
  decidim:
31
32
  admin:
33
+ admin_log:
34
+ changeset:
35
+ projects: Projekt
32
36
  filters:
33
37
  projects:
34
- category_id_eq:
35
- label: Kategori
36
- scope_id_eq:
37
- label: Indelning
38
38
  selected_at_null:
39
39
  label: Valda
40
40
  values:
41
41
  'false': Valda för genomförande
42
42
  'true': Inte valda för genomförande
43
+ taxonomies_part_of_contains:
44
+ label: Kategorisering
43
45
  budgets:
44
46
  actions:
45
47
  attachment_collections: Mappar
46
48
  attachments: Bilagor
47
- confirm_destroy: Är du säker på att du vill radera projektet?
48
- destroy: Radera
49
+ confirm_delete_budget: Är du säker på att du vill ta bort budgeten?
50
+ confirm_delete_project: Är du säker på att du vill radera projektet?
51
+ deleted_budgets_info: Raderade budgetar kan återställas från papperskorgen.
49
52
  edit: Redigera
50
53
  edit_projects: Hantera projekt
51
54
  import: Importera förslag till projekt
@@ -54,14 +57,13 @@ sv:
54
57
  preview: Förhandsvisa
55
58
  send_voting_reminders: Skicka påminnelser om att rösta
56
59
  title: Åtgärder
60
+ view_deleted_budgets: Visa raderade budgetar
61
+ view_deleted_projects: Visa raderade projekt
57
62
  admin:
58
63
  budgets:
59
64
  create:
60
65
  invalid: Det gick inte att skapa budgeten.
61
66
  success: Budgeten har skapats.
62
- destroy:
63
- invalid: Det gick inte att radera budgeten.
64
- success: Budgeten har raderats.
65
67
  edit:
66
68
  title: Redigera budget
67
69
  update: Uppdatera budget
@@ -71,6 +73,8 @@ sv:
71
73
  title: Budgetar
72
74
  users_with_finished_orders: Användare med färdiga omröstningar
73
75
  users_with_pending_orders: Användare med väntande omröstningar
76
+ manage_trash:
77
+ title: Raderade budgetar
74
78
  new:
75
79
  create: Skapa budget
76
80
  title: Ny budget
@@ -88,8 +92,6 @@ sv:
88
92
  create:
89
93
  invalid: Det gick inte att skapa projektet.
90
94
  success: Projektet har skapats.
91
- destroy:
92
- success: Projektet har raderats.
93
95
  edit:
94
96
  title: Redigera projekt
95
97
  update: Uppdatera
@@ -97,9 +99,8 @@ sv:
97
99
  actions: Åtgärder
98
100
  cancel: Avbryt
99
101
  change_budget: Ändra budget
100
- change_category: Ändra kategori
101
- change_scope: Ändra indelning
102
102
  change_selected: Ändra status
103
+ change_taxonomies: Ändra kategorier
103
104
  deselect_implementation: Välj bort från genomförande
104
105
  finished_orders: Avslutade omröstningar
105
106
  pending_orders: Pågående omröstningar
@@ -111,7 +112,8 @@ sv:
111
112
  title: Projekt
112
113
  update: Uppdatera
113
114
  update_budget_button: Uppdatera projektets budget
114
- update_scope_button: Uppdatera indelning
115
+ manage_trash:
116
+ title: Raderade projekt
115
117
  new:
116
118
  create: Skapa
117
119
  title: Nytt projekt
@@ -119,28 +121,23 @@ sv:
119
121
  invalid: Det gick inte att uppdatera projektet.
120
122
  success: Projektet har uppdaterats.
121
123
  update_budget:
122
- invalid: 'Projekten ingår redan i samma budget eller överstiger det maximala beloppet: %{projects}.'
123
- select_a_project: Välj ett projekt.
124
- success: 'Projekten till budgeten %{subject_name} har uppdaterats: %{projects}.'
125
- update_category:
126
- invalid: 'De här projekten tillhörde redan kategorin %{subject_name}: %{projects}.'
127
- select_a_category: Välj en kategori.
124
+ invalid: 'Projekten ingår redan i samma budget eller överstiger det maximala beloppet: %{errored}.'
128
125
  select_a_project: Välj ett projekt.
129
- success: 'Projekt som tilldelats kategorin %{subject_name}: %{projects}.'
130
- update_scope:
131
- invalid: 'De här projekten tillhörde redan indelningen %{subject_name}: %{projects}.'
132
- select_a_project: Välj ett projekt.
133
- select_a_scope: Välj en indelning.
134
- success: 'Projekten uppdaterades till %{subject_name}: %{projects}.'
126
+ success: 'Projekten till budgeten %{subject_name} har uppdaterats: %{successful}.'
135
127
  update_selected:
136
128
  invalid:
137
- selected: 'De här projekten har redan valts för genomförande: %{projects}.'
138
- unselected: 'Projekten har redan valts bort för genomförande: %{projects}.'
129
+ selected: 'De här projekten har redan valts för genomförande: %{errored}.'
130
+ unselected: 'Projekten har redan valts bort för genomförande: %{errored}.'
139
131
  select_a_project: Välj ett projekt.
140
132
  select_a_selection: Välj status för genomförandet.
141
133
  success:
142
- selected: 'Projekten har valts för genomförande: %{projects}.'
143
- unselected: 'Projekten har valts bort från genomförande: %{projects}.'
134
+ selected: 'Projekten har valts för genomförande: %{successful}.'
135
+ unselected: 'Projekten har valts bort från genomförande: %{successful}.'
136
+ update_taxonomies:
137
+ invalid: 'Kategorierna %{taxonomies} har redan lagts till de här projekten: %{errored}.'
138
+ select_a_project: Välj ett projekt.
139
+ select_a_taxonomy: Välj en kategori.
140
+ success: 'Projekt som tilldelats kategorin %{taxonomies}: %{successful}.'
144
141
  proposals_imports:
145
142
  create:
146
143
  invalid: Det gick inte att importera förslagen till projekten.
@@ -163,10 +160,14 @@ sv:
163
160
  budget:
164
161
  create: "%{user_name} skapade budgeten %{resource_name} i utrymmet %{space_name}"
165
162
  delete: "%{user_name} raderade budgeten %{resource_name} i utrymmet %{space_name}"
163
+ restore: "%{user_name} återställde budgeten %{resource_name} för %{space_name}"
164
+ soft_delete: "%{user_name} flyttade budgeten %{resource_name} för %{space_name} till papperskorgen"
166
165
  update: "%{user_name} uppdaterade budgeten %{resource_name} i utrymmet %{space_name}"
167
166
  project:
168
167
  create: "%{user_name} skapade projektet %{resource_name} i utrymmet %{space_name}"
169
168
  delete: "%{user_name} raderade projektet %{resource_name} i utrymmet %{space_name}"
169
+ restore: "%{user_name} återställde projektet %{resource_name} för %{space_name}"
170
+ soft_delete: "%{user_name} flyttade projektet %{resource_name} för %{space_name} till papperskorgen"
170
171
  update: "%{user_name} uppdaterade projektet %{resource_name} i utrymmet %{space_name}"
171
172
  budget_information_modal:
172
173
  back_to: Tillbaka till %{component_name}
@@ -196,6 +197,8 @@ sv:
196
197
  vote: Rösta
197
198
  voted_budgets: Budgetar som röstats i
198
199
  voted_on: Du har röstat på %{links}.
200
+ creation:
201
+ text: Lades till den här budgeten
199
202
  last_activity:
200
203
  new_vote_at: Ny röst i budget
201
204
  limit_announcement:
@@ -209,16 +212,30 @@ sv:
209
212
  total_budget: Total budget
210
213
  project:
211
214
  fields:
212
- category: Kategori
213
215
  id: ID
214
216
  map: Karta
217
+ taxonomies: Kategorisering
215
218
  title: Titel
219
+ order:
220
+ status:
221
+ continue_voting: Fortsätt rösta
222
+ download_vote: Ladda ner din röst
223
+ pending_to_vote_budgets:
224
+ one: Du kan rösta i en till budget
225
+ other: Du kan rösta i fler budgetar
226
+ share_vote: Dela din röst
227
+ title: Din röst har tagits emot
228
+ view_votes:
229
+ one: Visa röst
230
+ other: Visa röster
231
+ votes_count:
232
+ one: Din röst på %{budget_name} har redan registrerats.
233
+ other: Dina %{count} röster för %{budget_name} har redan registrerats.
216
234
  order_summary_mailer:
217
235
  order_summary:
218
236
  selected_projects: 'Du har valt följande projekt:'
219
237
  subject: Du har röstat i %{space_name}
220
238
  voted_on_space: Du har röstat på budgeten %{budget_name} i %{space_name}.
221
- voted_on_space_with_scope: Du har röstat på budgeten %{budget_name} i %{space_name} för %{scope_name} (%{scope_type}).
222
239
  projects:
223
240
  budget_confirm:
224
241
  are_you_sure: Om du ändrar dig kan du ändra rösten senare.
@@ -253,8 +270,6 @@ sv:
253
270
  message: Din röst har inte registrerats eftersom du ännu inte har slutfört omröstningen. Är du säker på att du vill lämna omröstningen?
254
271
  title: Du har ännu inte röstat
255
272
  filters:
256
- category: Kategori
257
- scope: Indelning
258
273
  search: Sök
259
274
  status: Status
260
275
  status_values:
@@ -323,8 +338,10 @@ sv:
323
338
  settings:
324
339
  global:
325
340
  announcement: Meddelande
341
+ clear_all: Återställ
326
342
  comments_enabled: Aktivera kommentarer
327
343
  comments_max_length: Maximal kommentarslängd (ange 0 för att använda standardvärdet)
344
+ define_taxonomy_filters: Vänligen definiera några filter för deltagarutrymmet innan du använder den här inställningen.
328
345
  form:
329
346
  errors:
330
347
  budget_voting_rule_only_one: Endast en röstningsregel kan vara aktiverad.
@@ -332,10 +349,11 @@ sv:
332
349
  geocoding_enabled: Aktivera visning på karta
333
350
  landing_page_content: Landningssida för budgetar
334
351
  more_information_modal: Fönster "Mer information"
352
+ no_taxonomy_filters_found: Inga filter för kategorier hittades.
335
353
  projects_per_page: Projekt per sida
336
354
  resources_permissions_enabled: Behörigheter kan ställas in för varje projekt
337
- scope_id: Indelning
338
- scopes_enabled: Aktivera indelningar
355
+ taxonomy_filters: Välj filter för komponenten
356
+ taxonomy_filters_add: Lägg till filter
339
357
  title: Titel
340
358
  total_budget: Total budget
341
359
  vote_minimum_budget_projects_number: Minsta antal projekt att rösta på
@@ -363,6 +381,18 @@ sv:
363
381
  disabled: Omröstning inaktiverad
364
382
  enabled: Omröstning aktiverad
365
383
  finished: Omröstning avslutad
384
+ download_your_data:
385
+ help:
386
+ orders:
387
+ budget: Den budget som omröstningen gäller
388
+ checked_out_at: Datum och tid för när omröstningen registrerades
389
+ component: Komponent som omröstningen tillhör
390
+ created_at: Datum och tid för när omröstningen skapades
391
+ id: Unikt id för omröstningen
392
+ projects: Projekten som röstades på
393
+ updated_at: Datum och tid för när omröstningen uppdaterades
394
+ show:
395
+ projects: Projektexport
366
396
  events:
367
397
  budgets:
368
398
  budget_published:
@@ -370,11 +400,34 @@ sv:
370
400
  email_outro: Du har fått det här meddelandet eftersom du följer %{participatory_space_title}. Du kan sluta att ta emot meddelanden via föregående länk.
371
401
  email_subject: Budgeten %{resource_title} för %{participatory_space_title} är nu aktiv.
372
402
  notification_title: Budgeten <a href="%{resource_path}">%{resource_title}</a> för %{participatory_space_title} är nu aktiv.
403
+ open_data:
404
+ help:
405
+ projects:
406
+ address: Adress till projektet (om tillämpbart)
407
+ budget: Uppgifter om projektets budget (t.ex. "2021 Budget")
408
+ budget_amount: Det totala beloppet av budgeten för projektet
409
+ comments: Antalet kommentarer till projektet
410
+ component: Komponenten som projektet tillhör
411
+ confirmed_votes: Antal bekräftade röster projektet har fått
412
+ created_at: Datum och tid när projektet skapades
413
+ description: Beskrivningen av projektet
414
+ follows_count: Antal följare av projektet
415
+ id: Unikt id för projektet
416
+ latitude: Latitud för projektet om det har en fysisk plats
417
+ longitude: Longitud för projektet om det har en fysisk plats
418
+ participatory_space: Vilket utrymme (deltagandeprocess eller samråd) projektet tillhör
419
+ reference: Unik referens för projektet
420
+ related_proposal_titles: Titlar på relaterade förslag
421
+ related_proposal_urls: URLer till relaterade förslag
422
+ related_proposals: Relaterade förslag till projektet
423
+ selected_at: Tidpunkt då projektet valdes
424
+ taxonomies: Kategorier för projektet
425
+ title: Titel på projektet
426
+ updated_at: Senaste datum när projektet uppdaterades
427
+ url: Projektets URL
373
428
  orders:
374
429
  checkout:
375
430
  error: Det gick inte att behandla din röst.
376
- success_html: <p>Din röst har godkänts.</p> <p class="text-sm font-normal">Du kan utforska <a class="text-secondary underline" href="%{rest_of_budgets_link}">resten av budgeten här</a>.</p>
377
- success_no_left_budgets_html: Din röst har tagits emot.
378
431
  destroy:
379
432
  error: Det gick inte att dra tillbaka din röst.
380
433
  success: Din röst har dragits tillbaka.
@@ -8,7 +8,6 @@ tr:
8
8
  total_budget: Toplam bütçe
9
9
  project:
10
10
  budget_amount: Bütçe tutarı
11
- decidim_category_id: Kategori
12
11
  description: Açıklama
13
12
  proposal_ids: İlgili teklifler
14
13
  selected: Uygulama için seçildi
@@ -23,7 +22,6 @@ tr:
23
22
  actions:
24
23
  attachment_collections: Klasörler
25
24
  attachments: Ekler
26
- destroy: Sil
27
25
  edit: Düzenle
28
26
  edit_projects: Projeleri Yönet
29
27
  import: Teklifleri projelere aktarın
@@ -99,12 +97,14 @@ tr:
99
97
  project:
100
98
  fields:
101
99
  title: Başlık
100
+ order:
101
+ status:
102
+ title: Oyunuz başarıyla kabul edildi
102
103
  order_summary_mailer:
103
104
  order_summary:
104
105
  selected_projects: 'Seçtiğiniz projeler şunlardır:'
105
106
  subject: '%{space_name} katılımcı alanına oy verdiniz'
106
107
  voted_on_space: '%{space_name} katılımcı alanı için %{budget_name} bütçesine oy verdiniz.'
107
- voted_on_space_with_scope: '%{scope_name} (%{scope_type}) kapsamındaki %{space_name} katılımcı alanı için %{budget_name} bütçesine oy verdiniz.'
108
108
  projects:
109
109
  budget_confirm:
110
110
  are_you_sure: Fikrinizi değiştirirseniz, oyunuzu daha sonra değiştirebilirsiniz.
@@ -128,7 +128,6 @@ tr:
128
128
  one: 1 proje
129
129
  other: "%{count} proje"
130
130
  filters:
131
- category: Kategori
132
131
  search: Arama
133
132
  status: Durum
134
133
  status_values:
@@ -167,7 +166,6 @@ tr:
167
166
  more_information_modal: Daha fazla bilgi
168
167
  projects_per_page: Sayfa başına projeler
169
168
  resources_permissions_enabled: Her proje için eylem izinleri ayarlanabilir
170
- scopes_enabled: Kapsamlar etkinleştirildi
171
169
  title: Başlık
172
170
  total_budget: Toplam bütçe
173
171
  vote_minimum_budget_projects_number: Oy verilecek minimum proje sayısı
@@ -3,7 +3,6 @@ uk:
3
3
  activemodel:
4
4
  attributes:
5
5
  project:
6
- decidim_category_id: Категорія
7
6
  description: Опис
8
7
  proposal_ids: Супутні пропозиції
9
8
  title: Назва
@@ -19,7 +18,6 @@ uk:
19
18
  actions:
20
19
  attachment_collections: Теки
21
20
  attachments: Вкладені файли
22
- destroy: Видалити
23
21
  edit: Редагувати
24
22
  import: Внести до проектів запозичені пропозиції
25
23
  preview: Попередній перегляд
@@ -53,6 +51,9 @@ uk:
53
51
  project:
54
52
  fields:
55
53
  title: Назва
54
+ order:
55
+ status:
56
+ title: Ваш голос успішно прийнято
56
57
  projects:
57
58
  budget_confirm:
58
59
  cancel: Скасувати
@@ -75,7 +76,6 @@ uk:
75
76
  many: "%{count} проектів"
76
77
  other: "%{count} проектів"
77
78
  filters:
78
- category: Категорія
79
79
  search: Шукати
80
80
  project_budget_button:
81
81
  added: Додано
@@ -8,7 +8,6 @@ zh-CN:
8
8
  total_budget: 预算总额
9
9
  project:
10
10
  budget_amount: 预算金额
11
- decidim_category_id: 类别
12
11
  description: 描述
13
12
  proposal_ids: 有关提议
14
13
  title: 标题
@@ -21,7 +20,6 @@ zh-CN:
21
20
  actions:
22
21
  attachment_collections: 文件夹
23
22
  attachments: 附件
24
- destroy: 删除
25
23
  edit: 编辑
26
24
  edit_projects: 管理项目
27
25
  import: 导入提案到项目
@@ -88,6 +86,9 @@ zh-CN:
88
86
  project:
89
87
  fields:
90
88
  title: 标题
89
+ order:
90
+ status:
91
+ title: 您的投票已被接受
91
92
  order_summary_mailer:
92
93
  order_summary:
93
94
  selected_projects: '您选择的项目是:'
@@ -113,7 +114,6 @@ zh-CN:
113
114
  projects_count:
114
115
  other: "%{count} 个项目"
115
116
  filters:
116
- category: 类别
117
117
  search: 搜索
118
118
  status: 状态
119
119
  status_values:
@@ -150,7 +150,6 @@ zh-CN:
150
150
  landing_page_content: 预算登陆页
151
151
  more_information_modal: 更多信息模式
152
152
  projects_per_page: 每页项目数
153
- scopes_enabled: 范围已启用
154
153
  title: 标题
155
154
  total_budget: 预算总额
156
155
  vote_minimum_budget_projects_number: 要投票的项目最小数量
@@ -3,15 +3,12 @@ zh-TW:
3
3
  activemodel:
4
4
  attributes:
5
5
  budget:
6
- decidim_scope_id: 範圍
7
6
  description: 說明
8
7
  title: 標題
9
8
  total_budget: 總預算
10
9
  weight: 排序位置
11
10
  project:
12
11
  budget_amount: 預算金額
13
- decidim_category_id: 類別
14
- decidim_scope_id: 範圍
15
12
  description: 說明
16
13
  proposal_ids: 相關提案
17
14
  proposals: 提案
@@ -27,10 +24,6 @@ zh-TW:
27
24
  admin:
28
25
  filters:
29
26
  projects:
30
- category_id_eq:
31
- label: 類別
32
- scope_id_eq:
33
- label: 範圍
34
27
  selected_at_null:
35
28
  label: 已選取
36
29
  values:
@@ -40,7 +33,6 @@ zh-TW:
40
33
  actions:
41
34
  attachment_collections: 資料夾
42
35
  attachments: 附件
43
- destroy: 刪除
44
36
  edit: 編輯
45
37
  edit_projects: 管理專案
46
38
  import: 將提案匯入專案
@@ -52,9 +44,6 @@ zh-TW:
52
44
  create:
53
45
  invalid: 建立預算時發生問題。
54
46
  success: 預算已成功建立
55
- destroy:
56
- invalid: 刪除此預算時出現問題
57
- success: 預算已成功刪除
58
47
  edit:
59
48
  title: 編輯預算
60
49
  update: 更新預算
@@ -81,16 +70,12 @@ zh-TW:
81
70
  create:
82
71
  invalid: 這個專案創建時出了問題
83
72
  success: 專案建立成功
84
- destroy:
85
- success: 專案刪除成功
86
73
  edit:
87
74
  title: 編輯專案
88
75
  update: 更新
89
76
  index:
90
77
  actions: 操作
91
78
  cancel: 撤銷
92
- change_category: 變更類別
93
- change_scope: 變更範圍
94
79
  change_selected: 更改所選狀態
95
80
  deselect_implementation: 從實施中取消選擇
96
81
  finished_orders: 已完成投票
@@ -99,32 +84,15 @@ zh-TW:
99
84
  selected: 已選取
100
85
  title: 專案
101
86
  update: 更新
102
- update_scope_button: 更新範圍
103
87
  new:
104
88
  create: 建立
105
89
  title: 新專案
106
90
  update:
107
91
  invalid: 更新此專案時出現問題
108
92
  success: 專案更新成功。
109
- update_category:
110
- invalid: '這些專案已經擁有了 %{subject_name} 類別: %{projects}'
111
- select_a_category: 請選擇一個類別。
112
- select_a_project: 請選擇一個專案
113
- success: '已成功將以下專案更新至 %{subject_name} 類別: %{projects}。'
114
- update_scope:
115
- invalid: '這些專案已經有了 %{subject_name} 的範圍: %{projects}。'
116
- select_a_project: 請選擇一個專案
117
- select_a_scope: 請選擇一個範圍。
118
- success: '已成功將以下專案更新至 %{subject_name} 範圍: %{projects}。'
119
93
  update_selected:
120
- invalid:
121
- selected: '這些專案已被選擇以實施:%{projects}。'
122
- unselected: '這些專案已從實施中取消選擇: %{projects}。'
123
94
  select_a_project: 請選擇一個專案
124
95
  select_a_selection: 請選擇實施狀態。
125
- success:
126
- selected: '這些專案已成功選擇實施:%{projects}。'
127
- unselected: '這些專案已經成功從實施中取消選擇: %{projects}。'
128
96
  proposals_imports:
129
97
  create:
130
98
  invalid: 將提案匯入專案時出現問題。
@@ -178,15 +146,16 @@ zh-TW:
178
146
  total_budget: 總預算
179
147
  project:
180
148
  fields:
181
- category: 類別
182
149
  id: ID
183
150
  title: 標題
151
+ order:
152
+ status:
153
+ title: 您的投票已成功接受
184
154
  order_summary_mailer:
185
155
  order_summary:
186
156
  selected_projects: '你選擇的專案如下:'
187
157
  subject: 您已經在 %{space_name} 參與空間投票
188
158
  voted_on_space: 您已對「%{space_name}」參與空間的「%{budget_name}」預算進行投票。
189
- voted_on_space_with_scope: 您已在%{scope_type} 的%{scope_name} 中,對%{space_name} 參與空間的%{budget_name} 預算進行了投票。
190
159
  projects:
191
160
  budget_confirm:
192
161
  are_you_sure: 如果您改變了主意,稍後可以更改您的選票。
@@ -218,8 +187,6 @@ zh-TW:
218
187
  message: 您的投票尚未被註冊,因為您尚未完成投票程序。您確定要退出投票嗎?
219
188
  title: 您尚未投票
220
189
  filters:
221
- category: 類別
222
- scope: 範圍
223
190
  search: 搜尋
224
191
  status: 狀態
225
192
  status_values:
@@ -271,13 +238,10 @@ zh-TW:
271
238
  errors:
272
239
  budget_voting_rule_only_one: 僅能啟用一個投票規則。
273
240
  budget_voting_rule_required: 必須啟用一種投票規則
274
- geocoding_enabled: 地理編碼已啟用
275
241
  landing_page_content: 預算網頁首頁
276
242
  more_information_modal: 更多資訊彈出式視窗
277
243
  projects_per_page: 每頁顯示專案
278
244
  resources_permissions_enabled: 可為每個專案設定動作權限
279
- scope_id: 範圍
280
- scopes_enabled: 啟用範圍
281
245
  title: 標題
282
246
  total_budget: 總預算
283
247
  vote_minimum_budget_projects_number: 最少需要投票的專案數量
@@ -4,6 +4,6 @@ class AddCommentableCounterCacheToProjects < ActiveRecord::Migration[5.2]
4
4
  def change
5
5
  add_column :decidim_budgets_projects, :comments_count, :integer, null: false, default: 0, index: true
6
6
  Decidim::Budgets::Project.reset_column_information
7
- Decidim::Budgets::Project.find_each(&:update_comments_count)
7
+ Decidim::Budgets::Project.unscoped.find_each(&:update_comments_count)
8
8
  end
9
9
  end
@@ -7,7 +7,7 @@ class AddFollowableCounterCacheToBudgets < ActiveRecord::Migration[5.2]
7
7
  reversible do |dir|
8
8
  dir.up do
9
9
  Decidim::Budgets::Project.reset_column_information
10
- Decidim::Budgets::Project.find_each do |record|
10
+ Decidim::Budgets::Project.unscoped.find_each do |record|
11
11
  record.class.reset_counters(record.id, :follows)
12
12
  end
13
13
  end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddDeletedAtToDecidimBudgetsBudgets < ActiveRecord::Migration[7.0]
4
+ def change
5
+ add_column :decidim_budgets_budgets, :deleted_at, :datetime
6
+ add_index :decidim_budgets_budgets, :deleted_at
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddDeletedAtToDecidimBudgetsProjects < ActiveRecord::Migration[7.0]
4
+ def change
5
+ add_column :decidim_budgets_projects, :deleted_at, :datetime
6
+ add_index :decidim_budgets_projects, :deleted_at
7
+ end
8
+ end
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
19
19
  "homepage_uri" => "https://decidim.org",
20
20
  "source_code_uri" => "https://github.com/decidim/decidim"
21
21
  }
22
- s.required_ruby_version = "~> 3.2.0"
22
+ s.required_ruby_version = "~> 3.3.0"
23
23
 
24
24
  s.name = "decidim-budgets"
25
25
  s.summary = "Decidim budgets module"
@@ -3,19 +3,16 @@
3
3
  module Decidim
4
4
  module Budgets
5
5
  class BudgetType < Decidim::Api::Types::BaseObject
6
- implements Decidim::Core::ScopableInterface
6
+ implements Decidim::Core::TimestampsInterface
7
7
  implements Decidim::Core::TraceableInterface
8
8
 
9
9
  description "A budget"
10
10
 
11
+ field :description, Decidim::Core::TranslatedFieldType, "The description for this budget", null: false
11
12
  field :id, GraphQL::Types::ID, "The internal ID of this budget", null: false
13
+ field :projects, [Decidim::Budgets::ProjectType, { null: true }], "The projects for this budget", null: false
12
14
  field :title, Decidim::Core::TranslatedFieldType, "The title for this budget", null: false
13
- field :description, Decidim::Core::TranslatedFieldType, "The description for this budget", null: false
14
15
  field :total_budget, GraphQL::Types::Int, "The total budget", null: false, camelize: false
15
- field :created_at, Decidim::Core::DateTimeType, "When this budget was created", null: true
16
- field :updated_at, Decidim::Core::DateTimeType, "When this budget was updated", null: true
17
-
18
- field :projects, [Decidim::Budgets::ProjectType, { null: true }], "The projects for this budget", null: false
19
16
 
20
17
  def self.authorized?(object, context)
21
18
  super && object.visible?
@@ -6,16 +6,15 @@ module Decidim
6
6
  graphql_name "Budgets"
7
7
  description "A budget component of a participatory space."
8
8
 
9
- field :budgets, Decidim::Budgets::BudgetType.connection_type, null: true, connection: true
9
+ field :budget, Decidim::Budgets::BudgetType, "A single Budget object", null: true do
10
+ argument :id, GraphQL::Types::ID, "The id of the Budget requested", required: true
11
+ end
12
+ field :budgets, Decidim::Budgets::BudgetType.connection_type, "A collection of Budgets", null: true, connection: true
10
13
 
11
14
  def budgets
12
15
  Budget.where(component: object).includes(:component)
13
16
  end
14
17
 
15
- field :budget, Decidim::Budgets::BudgetType, null: true do
16
- argument :id, GraphQL::Types::ID, required: true
17
- end
18
-
19
18
  def budget(**args)
20
19
  Budget.where(component: object).find_by(id: args[:id])
21
20
  end
@@ -3,21 +3,19 @@
3
3
  module Decidim
4
4
  module Budgets
5
5
  class ProjectType < Decidim::Api::Types::BaseObject
6
- implements Decidim::Core::ScopableInterface
6
+ implements Decidim::Core::TimestampsInterface
7
+ implements Decidim::Core::TaxonomizableInterface
7
8
  implements Decidim::Core::AttachableInterface
8
9
  implements Decidim::Comments::CommentableInterface
9
- implements Decidim::Core::CategorizableInterface
10
10
 
11
11
  description "A project"
12
12
 
13
- field :id, GraphQL::Types::ID, "The internal ID for this project", null: false
14
- field :title, Decidim::Core::TranslatedFieldType, "The title for this project", null: true
15
- field :description, Decidim::Core::TranslatedFieldType, "The description for this project", null: true
16
13
  field :budget_amount, GraphQL::Types::Int, "The budget amount for this project", null: true, camelize: false
17
- field :selected, GraphQL::Types::Boolean, "Whether this proposal is selected or not", method: :selected?, null: true
18
- field :created_at, Decidim::Core::DateTimeType, "When this project was created", null: true
19
- field :updated_at, Decidim::Core::DateTimeType, "When this project was updated", null: true
14
+ field :description, Decidim::Core::TranslatedFieldType, "The description for this project", null: true
15
+ field :id, GraphQL::Types::ID, "The internal ID for this project", null: false
20
16
  field :reference, GraphQL::Types::String, "The reference for this project", null: true
17
+ field :selected, GraphQL::Types::Boolean, "Whether this proposal is selected or not", method: :selected?, null: true
18
+ field :title, Decidim::Core::TranslatedFieldType, "The title for this project", null: true
21
19
 
22
20
  def self.authorized?(object, context)
23
21
  context[:project] = object