decidim-budgets 0.23.5 → 0.24.2
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 +4 -4
- data/app/assets/javascripts/decidim/budgets/projects.js.es6 +30 -13
- data/app/cells/decidim/budgets/limit_announcement_cell.rb +2 -9
- data/app/cells/decidim/budgets/project_list_item/project_data_vote_button.erb +1 -0
- data/app/cells/decidim/budgets/project_list_item_cell.rb +4 -0
- data/app/commands/decidim/budgets/admin/import_proposals_to_budgets.rb +8 -1
- data/app/controllers/decidim/budgets/admin/budgets_controller.rb +22 -1
- data/app/controllers/decidim/budgets/orders_controller.rb +1 -1
- data/app/forms/decidim/budgets/admin/component_form.rb +57 -10
- data/app/forms/decidim/budgets/admin/project_form.rb +3 -2
- data/app/forms/decidim/budgets/admin/project_import_proposals_form.rb +11 -0
- data/app/helpers/decidim/budgets/projects_helper.rb +45 -1
- data/app/models/decidim/budgets/order.rb +94 -18
- data/app/permissions/decidim/budgets/admin/permissions.rb +1 -1
- data/app/views/decidim/budgets/admin/budgets/index.html.erb +22 -5
- data/app/views/decidim/budgets/admin/projects/index.html.erb +13 -6
- data/app/views/decidim/budgets/admin/proposals_imports/new.html.erb +6 -1
- data/app/views/decidim/budgets/projects/_budget_excess.html.erb +2 -2
- data/app/views/decidim/budgets/projects/_budget_summary.html.erb +32 -12
- data/app/views/decidim/budgets/projects/_filters_small_view.html.erb +1 -1
- data/app/views/decidim/budgets/projects/_order_progress.html.erb +1 -1
- data/app/views/decidim/budgets/projects/_order_total_budget.html.erb +5 -1
- data/config/locales/ar.yml +2 -5
- data/config/locales/ca.yml +35 -7
- data/config/locales/cs.yml +34 -6
- data/config/locales/de.yml +34 -6
- data/config/locales/el.yml +2 -6
- data/config/locales/en.yml +35 -7
- data/config/locales/es-MX.yml +35 -7
- data/config/locales/es-PY.yml +35 -7
- data/config/locales/es.yml +35 -7
- data/config/locales/eu.yml +2 -5
- data/config/locales/fi-plain.yml +34 -6
- data/config/locales/fi.yml +34 -6
- data/config/locales/fr-CA.yml +35 -7
- data/config/locales/fr.yml +35 -7
- data/config/locales/gl.yml +8 -7
- data/config/locales/hu.yml +2 -5
- data/config/locales/id-ID.yml +2 -5
- data/config/locales/is-IS.yml +2 -4
- data/config/locales/it.yml +2 -6
- data/config/locales/ja.yml +3 -7
- data/config/locales/lv.yml +2 -6
- data/config/locales/nl.yml +35 -7
- data/config/locales/no.yml +2 -7
- data/config/locales/pl.yml +35 -7
- data/config/locales/pt-BR.yml +2 -5
- data/config/locales/pt.yml +2 -6
- data/config/locales/ro-RO.yml +10 -8
- data/config/locales/ru.yml +2 -5
- data/config/locales/sk.yml +2 -6
- data/config/locales/sr-CS.yml +0 -2
- data/config/locales/sv.yml +35 -7
- data/config/locales/tr-TR.yml +31 -7
- data/config/locales/uk.yml +2 -5
- data/config/locales/zh-CN.yml +2 -7
- data/db/migrate/20200804175222_votes_enabled_to_votes_choices.rb +4 -4
- data/db/migrate/20210310120613_add_followable_counter_cache_to_budgets.rb +16 -0
- data/lib/decidim/api/budget_type.rb +21 -0
- data/lib/decidim/api/budgets_type.rb +26 -0
- data/lib/decidim/api/project_type.rb +23 -0
- data/lib/decidim/budgets.rb +2 -0
- data/lib/decidim/budgets/api.rb +9 -0
- data/lib/decidim/budgets/component.rb +31 -14
- data/lib/decidim/budgets/project_serializer.rb +81 -0
- data/lib/decidim/budgets/test/factories.rb +35 -1
- data/lib/decidim/budgets/version.rb +1 -1
- data/lib/decidim/budgets/workflows/all.rb +1 -1
- data/lib/decidim/budgets/workflows/base.rb +3 -3
- data/lib/decidim/budgets/workflows/one.rb +1 -1
- metadata +20 -17
- data/app/types/decidim/budgets/budget_type.rb +0 -24
- data/app/types/decidim/budgets/budgets_type.rb +0 -32
- data/app/types/decidim/budgets/project_type.rb +0 -26
@@ -40,7 +40,7 @@ module Decidim
|
|
40
40
|
# Using `false` allow UI to offer users to discard votes in progress to start voting in another resource.
|
41
41
|
#
|
42
42
|
# Returns Boolean.
|
43
|
-
def vote_allowed?(_resource, _consider_progress
|
43
|
+
def vote_allowed?(_resource, _consider_progress: true)
|
44
44
|
raise StandardError, "Not implemented"
|
45
45
|
end
|
46
46
|
|
@@ -64,14 +64,14 @@ module Decidim
|
|
64
64
|
#
|
65
65
|
# Returns Array.
|
66
66
|
def voted
|
67
|
-
@voted ||= orders.values.map { |order_info| order_info[:order].budget if order_info[:status] == :voted }
|
67
|
+
@voted ||= orders.values.map { |order_info| order_info[:order].budget if order_info[:status] == :voted }.compact
|
68
68
|
end
|
69
69
|
|
70
70
|
# Public: Return the list of budget resources where the user has orders in progress.
|
71
71
|
#
|
72
72
|
# Returns Array.
|
73
73
|
def progress
|
74
|
-
@progress ||= orders.values.map { |order_info| order_info[:order].budget if order_info[:status] == :progress }
|
74
|
+
@progress ||= orders.values.map { |order_info| order_info[:order].budget if order_info[:status] == :progress }.compact
|
75
75
|
end
|
76
76
|
|
77
77
|
# Public: Return the list of budget resources where the user could discard their order to vote in other components.
|
@@ -11,7 +11,7 @@ module Decidim
|
|
11
11
|
end
|
12
12
|
|
13
13
|
# Users can vote in any budget with this workflow, but only in one.
|
14
|
-
def vote_allowed?(resource, consider_progress
|
14
|
+
def vote_allowed?(resource, consider_progress: true)
|
15
15
|
return false if voted.any?
|
16
16
|
|
17
17
|
if consider_progress
|
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.
|
4
|
+
version: 0.24.2
|
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: 2021-
|
13
|
+
date: 2021-05-07 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: decidim-comments
|
@@ -18,28 +18,28 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.
|
21
|
+
version: 0.24.2
|
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.
|
28
|
+
version: 0.24.2
|
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.
|
35
|
+
version: 0.24.2
|
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.
|
42
|
+
version: 0.24.2
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: kaminari
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,42 +80,42 @@ dependencies:
|
|
80
80
|
requirements:
|
81
81
|
- - '='
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: 0.
|
83
|
+
version: 0.24.2
|
84
84
|
type: :development
|
85
85
|
prerelease: false
|
86
86
|
version_requirements: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - '='
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: 0.
|
90
|
+
version: 0.24.2
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: decidim-dev
|
93
93
|
requirement: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
95
|
- - '='
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: 0.
|
97
|
+
version: 0.24.2
|
98
98
|
type: :development
|
99
99
|
prerelease: false
|
100
100
|
version_requirements: !ruby/object:Gem::Requirement
|
101
101
|
requirements:
|
102
102
|
- - '='
|
103
103
|
- !ruby/object:Gem::Version
|
104
|
-
version: 0.
|
104
|
+
version: 0.24.2
|
105
105
|
- !ruby/object:Gem::Dependency
|
106
106
|
name: decidim-proposals
|
107
107
|
requirement: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
109
|
- - '='
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
version: 0.
|
111
|
+
version: 0.24.2
|
112
112
|
type: :development
|
113
113
|
prerelease: false
|
114
114
|
version_requirements: !ruby/object:Gem::Requirement
|
115
115
|
requirements:
|
116
116
|
- - '='
|
117
117
|
- !ruby/object:Gem::Version
|
118
|
-
version: 0.
|
118
|
+
version: 0.24.2
|
119
119
|
description: A budgets component for decidim's participatory spaces.
|
120
120
|
email:
|
121
121
|
- josepjaume@gmail.com
|
@@ -214,9 +214,6 @@ files:
|
|
214
214
|
- app/queries/decidim/budgets/metrics/budget_participants_metric_measure.rb
|
215
215
|
- app/serializers/decidim/budgets/data_portability_budgets_order_serializer.rb
|
216
216
|
- app/services/decidim/budgets/project_search.rb
|
217
|
-
- app/types/decidim/budgets/budget_type.rb
|
218
|
-
- app/types/decidim/budgets/budgets_type.rb
|
219
|
-
- app/types/decidim/budgets/project_type.rb
|
220
217
|
- app/views/decidim/budgets/admin/budgets/_form.html.erb
|
221
218
|
- app/views/decidim/budgets/admin/budgets/edit.html.erb
|
222
219
|
- app/views/decidim/budgets/admin/budgets/index.html.erb
|
@@ -332,11 +329,17 @@ files:
|
|
332
329
|
- db/migrate/20200728075039_add_selected_at_to_project.rb
|
333
330
|
- db/migrate/20200804175222_votes_enabled_to_votes_choices.rb
|
334
331
|
- db/migrate/20200827154129_add_commentable_counter_cache_to_projects.rb
|
332
|
+
- db/migrate/20210310120613_add_followable_counter_cache_to_budgets.rb
|
333
|
+
- lib/decidim/api/budget_type.rb
|
334
|
+
- lib/decidim/api/budgets_type.rb
|
335
|
+
- lib/decidim/api/project_type.rb
|
335
336
|
- lib/decidim/budgets.rb
|
336
337
|
- lib/decidim/budgets/admin.rb
|
337
338
|
- lib/decidim/budgets/admin_engine.rb
|
339
|
+
- lib/decidim/budgets/api.rb
|
338
340
|
- lib/decidim/budgets/component.rb
|
339
341
|
- lib/decidim/budgets/engine.rb
|
342
|
+
- lib/decidim/budgets/project_serializer.rb
|
340
343
|
- lib/decidim/budgets/seeds/Exampledocument.pdf
|
341
344
|
- lib/decidim/budgets/seeds/city.jpeg
|
342
345
|
- lib/decidim/budgets/test/factories.rb
|
@@ -357,14 +360,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
357
360
|
requirements:
|
358
361
|
- - ">="
|
359
362
|
- !ruby/object:Gem::Version
|
360
|
-
version: '2.
|
363
|
+
version: '2.7'
|
361
364
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
362
365
|
requirements:
|
363
366
|
- - ">="
|
364
367
|
- !ruby/object:Gem::Version
|
365
368
|
version: '0'
|
366
369
|
requirements: []
|
367
|
-
rubygems_version: 3.
|
370
|
+
rubygems_version: 3.1.2
|
368
371
|
signing_key:
|
369
372
|
specification_version: 4
|
370
373
|
summary: Decidim budgets module
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Budgets
|
5
|
-
BudgetType = GraphQL::ObjectType.define do
|
6
|
-
interfaces [
|
7
|
-
-> { Decidim::Core::ScopableInterface },
|
8
|
-
-> { Decidim::Core::TraceableInterface }
|
9
|
-
]
|
10
|
-
|
11
|
-
name "Budget"
|
12
|
-
description "A budget"
|
13
|
-
|
14
|
-
field :id, !types.ID, "The internal ID of this budget"
|
15
|
-
field :title, !Decidim::Core::TranslatedFieldType, "The title for this budget"
|
16
|
-
field :description, !Decidim::Core::TranslatedFieldType, "The description for this budget"
|
17
|
-
field :total_budget, !types.Int, "The total budget"
|
18
|
-
field :createdAt, Decidim::Core::DateTimeType, "When this budget was created", property: :created_at
|
19
|
-
field :updatedAt, Decidim::Core::DateTimeType, "When this budget was updated", property: :updated_at
|
20
|
-
|
21
|
-
field :projects, !types[Decidim::Budgets::ProjectType], "The projects for this budget"
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,32 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Budgets
|
5
|
-
BudgetsType = GraphQL::ObjectType.define do
|
6
|
-
interfaces [-> { Decidim::Core::ComponentInterface }]
|
7
|
-
|
8
|
-
name "Budgets"
|
9
|
-
description "A budget component of a participatory space."
|
10
|
-
|
11
|
-
connection :budgets, BudgetType.connection_type do
|
12
|
-
resolve ->(component, _args, _ctx) {
|
13
|
-
BudgetsTypeHelper.base_scope(component).includes(:component)
|
14
|
-
}
|
15
|
-
end
|
16
|
-
|
17
|
-
field(:budget, BudgetType) do
|
18
|
-
argument :id, !types.ID
|
19
|
-
|
20
|
-
resolve ->(component, args, _ctx) {
|
21
|
-
BudgetsTypeHelper.base_scope(component).find_by(id: args[:id])
|
22
|
-
}
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
module BudgetsTypeHelper
|
27
|
-
def self.base_scope(component)
|
28
|
-
Budget.where(component: component)
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Budgets
|
5
|
-
ProjectType = GraphQL::ObjectType.define do
|
6
|
-
interfaces [
|
7
|
-
-> { Decidim::Core::ScopableInterface },
|
8
|
-
-> { Decidim::Core::AttachableInterface },
|
9
|
-
-> { Decidim::Comments::CommentableInterface },
|
10
|
-
-> { Decidim::Core::CategorizableInterface }
|
11
|
-
]
|
12
|
-
|
13
|
-
name "Project"
|
14
|
-
description "A project"
|
15
|
-
|
16
|
-
field :id, !types.ID, "The internal ID for this project"
|
17
|
-
field :title, Decidim::Core::TranslatedFieldType, "The title for this project"
|
18
|
-
field :description, Decidim::Core::TranslatedFieldType, "The description for this project"
|
19
|
-
field :budget_amount, types.Int, "The budget amount for this project"
|
20
|
-
field :selected, types.Boolean, "Whether this proposal is selected or not", property: :selected?
|
21
|
-
field :createdAt, Decidim::Core::DateTimeType, "When this project was created", property: :created_at
|
22
|
-
field :updatedAt, Decidim::Core::DateTimeType, "When this project was updated", property: :updated_at
|
23
|
-
field :reference, types.String, "The reference for this project"
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|