decidim-budgets 0.31.2 → 0.31.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e560a77f675a59cd8aaecd19ab7157c106c83e6265274f9d986568bb6572e1c1
4
- data.tar.gz: 94b4d1653cbeeccf9bf270ff7497080df3c858968e9e5e29553e04032105c904
3
+ metadata.gz: 1c0400f608da93dc472762ec9a75290837b46bf44fbcd2f4856787d4b27e4c79
4
+ data.tar.gz: 89f34786eab62efcea5db714667a7f47811029bf5aacff568d43f2625b9a5b88
5
5
  SHA512:
6
- metadata.gz: 2c3580b064805b4b2aa0586c0adf04f0b1db30e193f735ea96db0314c6658d5dbd5ee4b0405ebbcbe77c4a8a1c5e169ea9bbc17d2d9f714ccf7e8eac76e8f72e
7
- data.tar.gz: 255840a2b21e35aa3798325e92a0f3309f5f0841fd82c2c6b91bb6935c84c6c1a0903b16090ad857216b0573d1c2924bb80604748192123bdac5384a6e6e1ae4
6
+ metadata.gz: 045dc53a192b1f198c3a10f2b35ab25ae4afff0646c2585bfd6e86cda813dd99508ad5bfe2e0fd9f898487f5bb8cd8042db0cf090e6bb499b5290b92166f013c
7
+ data.tar.gz: f10dcc3744f0a984f01d4aae0bbca0e83679b801ffa0fbfa4c09f3157cd7ee0ec8f8418808898f6515acb5e3bfbe84d7cafe197ebf6f1548324047d587cce87c
@@ -35,7 +35,8 @@ module Decidim
35
35
  end
36
36
 
37
37
  def non_voted_budgets
38
- budgets.where.not(id: voted.map(&:id))
38
+ budgets_to_exclude = progress_budgets + voted
39
+ budgets.where.not(id: budgets_to_exclude.map(&:id))
39
40
  end
40
41
 
41
42
  def highlighted?
@@ -16,7 +16,7 @@ module Decidim
16
16
 
17
17
  validates :title, translatable_presence: true
18
18
  validates :weight, numericality: { greater_than_or_equal_to: 0 }
19
- validates :total_budget, numericality: { greater_than: 0 }
19
+ validates :total_budget, numericality: { only_integer: true, greater_than: 0, less_than_or_equal_to: 9_223_372_036_854_775_807 }
20
20
  end
21
21
  end
22
22
  end
@@ -26,7 +26,7 @@ module Decidim
26
26
 
27
27
  validates :title, translatable_presence: true
28
28
  validates :description, translatable_presence: true
29
- validates :budget_amount, presence: true, numericality: { greater_than: 0 }
29
+ validates :budget_amount, presence: true, numericality: { only_integer: true, greater_than: 0, less_than_or_equal_to: 9_223_372_036_854_775_807 }
30
30
  validates :address, geocoding: true, if: ->(form) { form.has_address? && !form.geocoded? }
31
31
 
32
32
  validate :notify_missing_attachment_if_errored
@@ -1,7 +1,7 @@
1
1
  <% add_decidim_page_title("#{translated_attribute(budget.title)} - #{t(".title")}") %>
2
2
  <div class="item_show__header">
3
3
  <h1 class="item_show__header-title">
4
- <%= "#{decidim_escape_translated(budget.title)} #{t(".title")}" %>
4
+ <%= "#{decidim_sanitize_translated(budget.title)} #{t(".title")}" %>
5
5
  </h1>
6
6
  </div>
7
7
  <div class="item__edit item__edit-1col">
@@ -3,7 +3,7 @@
3
3
  <div class="item_show__header item_show__header--with-action-options">
4
4
  <h1 class="item_show__header-title">
5
5
  <div>
6
- <%= link_to decidim_escape_translated(budget.title), budgets_path %> &gt;
6
+ <%= link_to decidim_sanitize_translated(budget.title), budgets_path %> &gt;
7
7
  <%= t(".title") %>
8
8
  <span id="js-selected-resources-count" class="component-counter" title="<%= t("decidim.budgets.admin.projects.index.selected") %>"></span>
9
9
  </div>
@@ -4,7 +4,7 @@
4
4
  <div class="item_show__header">
5
5
  <h1 class="item_show__header-title">
6
6
  <div>
7
- <%= link_to decidim_escape_translated(budget.title), budgets_path %> &gt;
7
+ <%= link_to decidim_sanitize_translated(budget.title), budgets_path %> &gt;
8
8
  <%= t(".title") %>
9
9
  <span id="js-selected-resources-count" class="component-counter" title="<%= t("decidim.budgets.admin.projects.index.selected") %>"></span>
10
10
  </div>
@@ -24,6 +24,7 @@ ar:
24
24
  actions:
25
25
  edit: تعديل
26
26
  import: استيراد مقترحات للمشاريع
27
+ new_project: مشروع جديد
27
28
  preview: معاينة
28
29
  title: أفعال
29
30
  admin:
@@ -114,7 +114,7 @@ ca-IT:
114
114
  title: Projectes eliminats
115
115
  new:
116
116
  create: Crear
117
- title: Nou projecte
117
+ title: Afegir projecte
118
118
  update:
119
119
  invalid: S'ha produït un error en actualitzar aquest projecte.
120
120
  success: Projecte actualitzat correctament.
@@ -143,7 +143,7 @@ ca-IT:
143
143
  new:
144
144
  create: Importa propostes a projectes
145
145
  default_budget: Pressupost per defecte
146
- no_components: No hi ha cap component de propostes en aquest espai participatiu per importar les propostes a projectes.
146
+ no_components: No hi ha cap component de propostes en aquest espai de participació des del que importar les propostes a projectes.
147
147
  origin_component_id: Component d'origen
148
148
  proposal_states: Estats de resposta a la proposta
149
149
  proposal_states_help: Selecciona un o més estats de resposta de les propostes a importar com a projectes. Si no seleccioneu cap estat de resposta, s'importaran totes les propostes publicades que encara no hagin estat importades a altres pressupostos d'aquest mateix component.
@@ -114,7 +114,7 @@ ca:
114
114
  title: Projectes eliminats
115
115
  new:
116
116
  create: Crear
117
- title: Nou projecte
117
+ title: Afegir projecte
118
118
  update:
119
119
  invalid: S'ha produït un error en actualitzar aquest projecte.
120
120
  success: Projecte actualitzat correctament.
@@ -143,7 +143,7 @@ ca:
143
143
  new:
144
144
  create: Importa propostes a projectes
145
145
  default_budget: Pressupost per defecte
146
- no_components: No hi ha cap component de propostes en aquest espai participatiu per importar les propostes a projectes.
146
+ no_components: No hi ha cap component de propostes en aquest espai de participació des del que importar les propostes a projectes.
147
147
  origin_component_id: Component d'origen
148
148
  proposal_states: Estats de resposta a la proposta
149
149
  proposal_states_help: Selecciona un o més estats de resposta de les propostes a importar com a projectes. Si no seleccioneu cap estat de resposta, s'importaran totes les propostes publicades que encara no hagin estat importades a altres pressupostos d'aquest mateix component.
@@ -34,6 +34,7 @@ el:
34
34
  actions:
35
35
  edit: Επεξεργασία
36
36
  import: Εισαγωγή προτάσεων σε έργα
37
+ new_project: Νέο έργο
37
38
  preview: Προεπισκόπηση
38
39
  send_voting_reminders: Αποστολή υπενθυμίσεων ψήφου
39
40
  title: Ενέργειες
@@ -53,7 +53,7 @@ es-MX:
53
53
  edit_projects: Añadir proyectos
54
54
  import: Importar propuestas a proyectos
55
55
  new_budget: Añadir presupuesto
56
- new_project: Añadir proyecto
56
+ new_project: Nuevo proyecto
57
57
  preview: Previsualizar
58
58
  send_voting_reminders: Enviar recordatorios de votación
59
59
  title: Acciones
@@ -53,7 +53,7 @@ es-PY:
53
53
  edit_projects: Añadir proyectos
54
54
  import: Importar propuestas a proyectos
55
55
  new_budget: Añadir presupuesto
56
- new_project: Añadir proyecto
56
+ new_project: Nuevo proyecto
57
57
  preview: Previsualizar
58
58
  send_voting_reminders: Enviar recordatorios de votación
59
59
  title: Acciones
@@ -114,7 +114,7 @@ es:
114
114
  title: Proyectos eliminados
115
115
  new:
116
116
  create: Crear
117
- title: Nuevo proyecto
117
+ title: Añadir proyecto
118
118
  update:
119
119
  invalid: Se ha producido un error al actualizar este proyecto.
120
120
  success: Proyecto actualizado correctamente.
@@ -143,7 +143,7 @@ es:
143
143
  new:
144
144
  create: Importar propuestas a proyectos
145
145
  default_budget: Presupuesto por defecto
146
- no_components: No hay otros componentes de la propuesta en este espacio participativo para importar las propuestas en los proyectos.
146
+ no_components: No hay otros componentes de la propuesta en este espacio de participación para importar las propuestas en los proyectos.
147
147
  origin_component_id: Componente de origen
148
148
  proposal_states: Estados de repuesta a la propuesta
149
149
  proposal_states_help: Selecciona uno o más estados de respuesta de las propuestas a importar como proyectos. Si no seleccionas ningún estado de respuesta, se importaran todas las propuestas publicadas que no hayan sido importadas aún a otros presupuestos de este mismo componente.
@@ -242,7 +242,7 @@ es:
242
242
  order_summary:
243
243
  selected_projects: 'Lo proyectos que has seleccionado son:'
244
244
  subject: Has votado en el espacio de participación %{space_name}
245
- voted_on_space: Has votado en el presupuesto %{budget_name} para el espacio participativo %{space_name}.
245
+ voted_on_space: Has votado en el presupuesto %{budget_name} para el espacio de participación "%{space_name}".
246
246
  projects:
247
247
  back_to_budgets: Volver a los presupuestos
248
248
  budget_confirm:
@@ -53,7 +53,7 @@ fi-pl:
53
53
  edit_projects: Lisää projekteja
54
54
  import: Tuo ehdotuksia suunnitelmiin
55
55
  new_budget: Uusi budjetti
56
- new_project: Uusi projekti
56
+ new_project: Uusi suunnitelma
57
57
  preview: Esikatsele
58
58
  send_voting_reminders: Lähetä äänestysmuistutukset
59
59
  title: Toiminnot
@@ -30,6 +30,7 @@ gl:
30
30
  actions:
31
31
  edit: Editar
32
32
  import: Importa propostas a proxectos
33
+ new_project: Novo proxecto
33
34
  preview: Vista previa
34
35
  title: Accións
35
36
  admin:
@@ -15,6 +15,7 @@ id:
15
15
  actions:
16
16
  edit: Edit
17
17
  import: Impor proposal ke proyek
18
+ new_project: Proyek baru
18
19
  preview: Pratinjau
19
20
  title: Tindakan
20
21
  admin:
@@ -23,6 +23,7 @@ it:
23
23
  actions:
24
24
  edit: Modifica
25
25
  import: Importa proposte nei progetti
26
+ new_project: Nuovo progetto
26
27
  preview: Anteprima
27
28
  title: Azioni
28
29
  admin:
@@ -23,6 +23,8 @@ ko:
23
23
  selected_at_null:
24
24
  label: 선택됨
25
25
  budgets:
26
+ actions:
27
+ new_project: 새 프로젝트
26
28
  admin:
27
29
  projects:
28
30
  create:
@@ -18,6 +18,7 @@ lb:
18
18
  actions:
19
19
  edit: Bearbeiten
20
20
  import: Vorschläge in Projekte importieren
21
+ new_project: Neues Projekt
21
22
  preview: Vorschau
22
23
  title: Aktionen
23
24
  admin:
@@ -36,6 +36,7 @@ lt:
36
36
  actions:
37
37
  edit: Redaguoti
38
38
  import: Importuoti pasiūlymus į projektus
39
+ new_project: Naujas projektas
39
40
  preview: Peržiūra
40
41
  send_voting_reminders: Siųsti balsavimo priminimus
41
42
  title: Veiksmai
@@ -17,6 +17,7 @@ lv:
17
17
  actions:
18
18
  edit: Labot
19
19
  import: Importēt priekšlikumus projektos
20
+ new_project: Jauns projekts
20
21
  preview: Priekšskatīt
21
22
  title: Darbības
22
23
  admin:
@@ -34,6 +34,7 @@ nl:
34
34
  actions:
35
35
  edit: Bewerk
36
36
  import: Voorstellen importeren in projecten
37
+ new_project: Nieuw project
37
38
  preview: Voorbeeld
38
39
  title: Acties
39
40
  admin:
@@ -31,6 +31,7 @@
31
31
  actions:
32
32
  edit: Editar
33
33
  import: Importer forslag til prosjekter
34
+ new_project: Nytt prosjekt
34
35
  preview: Forhåndsvis
35
36
  title: Handlinger
36
37
  admin:
@@ -23,6 +23,7 @@ pt:
23
23
  actions:
24
24
  edit: Editar
25
25
  import: Importar propostas para projetos
26
+ new_project: Novo projeto
26
27
  preview: Pré-visualização
27
28
  title: Ações
28
29
  admin:
@@ -35,6 +35,7 @@ ro:
35
35
  actions:
36
36
  edit: Editare
37
37
  import: Importă propuneri în proiecte
38
+ new_project: Proiect nou
38
39
  preview: Previzualizare
39
40
  send_voting_reminders: Trimite memento-uri de votare
40
41
  title: Acțiuni
@@ -18,6 +18,7 @@ ru:
18
18
  actions:
19
19
  edit: Редактировать
20
20
  import: Внести в проекты позаимствованные предложения
21
+ new_project: Новый проект
21
22
  preview: Предпросмотр
22
23
  title: Действия
23
24
  admin:
@@ -18,6 +18,7 @@ sk:
18
18
  actions:
19
19
  edit: Upraviť
20
20
  import: Importovať návrhy do projektov
21
+ new_project: Nový projekt
21
22
  preview: Ukážka
22
23
  title: Akcie
23
24
  admin:
@@ -37,3 +37,7 @@ sq:
37
37
  new_budget: Buxhet i ri
38
38
  new_project: Projekt i ri
39
39
  preview: Pamje paraprake
40
+ admin:
41
+ projects:
42
+ new:
43
+ title: Projekt i ri
@@ -18,6 +18,7 @@ uk:
18
18
  actions:
19
19
  edit: Редагувати
20
20
  import: Внести до проектів запозичені пропозиції
21
+ new_project: Додати новий проект
21
22
  preview: Попередній перегляд
22
23
  title: Дії
23
24
  admin:
@@ -20,6 +20,7 @@ zh-CN:
20
20
  actions:
21
21
  edit: 编辑
22
22
  import: 导入提案到项目
23
+ new_project: 新建项目
23
24
  preview: 预览
24
25
  title: 行动
25
26
  admin:
@@ -33,6 +33,7 @@ zh-TW:
33
33
  actions:
34
34
  edit: 編輯
35
35
  import: 將提案匯入專案
36
+ new_project: 新專案
36
37
  preview: 預覽
37
38
  send_voting_reminders: 發送投票提醒
38
39
  title: 操作
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ class ChangeBudgetColumnsToBigint < ActiveRecord::Migration[7.1]
4
+ def up
5
+ change_column :decidim_budgets_budgets, :total_budget, :bigint
6
+ change_column :decidim_budgets_projects, :budget_amount, :bigint
7
+ end
8
+
9
+ def down
10
+ budget_overflow = select_value(<<~SQL.squish)
11
+ SELECT 1 FROM decidim_budgets_budgets
12
+ WHERE total_budget > 2147483647 OR total_budget < -2147483648
13
+ LIMIT 1
14
+ SQL
15
+ project_overflow = select_value(<<~SQL.squish)
16
+ SELECT 1 FROM decidim_budgets_projects
17
+ WHERE budget_amount > 2147483647 OR budget_amount < -2147483648
18
+ LIMIT 1
19
+ SQL
20
+
21
+ raise ActiveRecord::IrreversibleMigration, "Cannot safely convert bigint budgets back to integer: out-of-range values exist" if budget_overflow || project_overflow
22
+
23
+ change_column :decidim_budgets_budgets, :total_budget, :integer
24
+ change_column :decidim_budgets_projects, :budget_amount, :integer
25
+ end
26
+ end
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This holds the decidim-budgets version.
5
5
  module Budgets
6
6
  def self.version
7
- "0.31.2"
7
+ "0.31.3"
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-budgets
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.31.2
4
+ version: 0.31.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josep Jaume Rey Peroy
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2026-02-26 00:00:00.000000000 Z
13
+ date: 2026-03-26 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: decidim-comments
@@ -18,70 +18,70 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.31.2
21
+ version: 0.31.3
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 0.31.2
28
+ version: 0.31.3
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: decidim-core
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - '='
34
34
  - !ruby/object:Gem::Version
35
- version: 0.31.2
35
+ version: 0.31.3
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - '='
41
41
  - !ruby/object:Gem::Version
42
- version: 0.31.2
42
+ version: 0.31.3
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: decidim-admin
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - '='
48
48
  - !ruby/object:Gem::Version
49
- version: 0.31.2
49
+ version: 0.31.3
50
50
  type: :development
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
54
  - - '='
55
55
  - !ruby/object:Gem::Version
56
- version: 0.31.2
56
+ version: 0.31.3
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: decidim-dev
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - '='
62
62
  - !ruby/object:Gem::Version
63
- version: 0.31.2
63
+ version: 0.31.3
64
64
  type: :development
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - '='
69
69
  - !ruby/object:Gem::Version
70
- version: 0.31.2
70
+ version: 0.31.3
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: decidim-proposals
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - '='
76
76
  - !ruby/object:Gem::Version
77
- version: 0.31.2
77
+ version: 0.31.3
78
78
  type: :development
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - '='
83
83
  - !ruby/object:Gem::Version
84
- version: 0.31.2
84
+ version: 0.31.3
85
85
  description: A budgets component for decidim's participatory spaces.
86
86
  email:
87
87
  - josepjaume@gmail.com
@@ -347,6 +347,7 @@ files:
347
347
  - db/migrate/20240828103724_add_deleted_at_to_decidim_budgets_budgets.rb
348
348
  - db/migrate/20240916135141_add_deleted_at_to_decidim_budgets_projects.rb
349
349
  - db/migrate/20250912110212_move_voting_rules_to_radio_buttons.rb
350
+ - db/migrate/20250912110213_change_budget_columns_to_bigint.rb
350
351
  - decidim-budgets.gemspec
351
352
  - lib/decidim/api/budget_type.rb
352
353
  - lib/decidim/api/budgets_type.rb