decidim-budgets 0.23.3 → 0.24.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim/budgets/projects.js.es6 +30 -13
  3. data/app/cells/decidim/budgets/limit_announcement_cell.rb +2 -9
  4. data/app/cells/decidim/budgets/project_list_item/project_data_vote_button.erb +1 -0
  5. data/app/cells/decidim/budgets/project_list_item_cell.rb +4 -0
  6. data/app/commands/decidim/budgets/admin/import_proposals_to_budgets.rb +8 -1
  7. data/app/controllers/decidim/budgets/admin/budgets_controller.rb +22 -1
  8. data/app/controllers/decidim/budgets/orders_controller.rb +1 -1
  9. data/app/forms/decidim/budgets/admin/component_form.rb +57 -10
  10. data/app/forms/decidim/budgets/admin/project_form.rb +3 -2
  11. data/app/forms/decidim/budgets/admin/project_import_proposals_form.rb +11 -0
  12. data/app/helpers/decidim/budgets/projects_helper.rb +45 -1
  13. data/app/models/decidim/budgets/order.rb +94 -18
  14. data/app/permissions/decidim/budgets/admin/permissions.rb +1 -1
  15. data/app/views/decidim/budgets/admin/budgets/index.html.erb +22 -5
  16. data/app/views/decidim/budgets/admin/projects/index.html.erb +13 -6
  17. data/app/views/decidim/budgets/admin/proposals_imports/new.html.erb +6 -1
  18. data/app/views/decidim/budgets/projects/_budget_excess.html.erb +2 -2
  19. data/app/views/decidim/budgets/projects/_budget_summary.html.erb +32 -12
  20. data/app/views/decidim/budgets/projects/_filters_small_view.html.erb +1 -1
  21. data/app/views/decidim/budgets/projects/_order_progress.html.erb +1 -1
  22. data/app/views/decidim/budgets/projects/_order_total_budget.html.erb +5 -1
  23. data/config/locales/ar.yml +2 -5
  24. data/config/locales/ca.yml +36 -8
  25. data/config/locales/cs.yml +34 -6
  26. data/config/locales/de.yml +34 -6
  27. data/config/locales/el.yml +2 -6
  28. data/config/locales/en.yml +35 -7
  29. data/config/locales/es-MX.yml +35 -7
  30. data/config/locales/es-PY.yml +35 -7
  31. data/config/locales/es.yml +35 -7
  32. data/config/locales/eu.yml +2 -5
  33. data/config/locales/fi-plain.yml +34 -6
  34. data/config/locales/fi.yml +36 -8
  35. data/config/locales/fr-CA.yml +35 -7
  36. data/config/locales/fr.yml +35 -7
  37. data/config/locales/gl.yml +23 -7
  38. data/config/locales/hu.yml +2 -5
  39. data/config/locales/id-ID.yml +2 -5
  40. data/config/locales/is-IS.yml +2 -4
  41. data/config/locales/it.yml +2 -6
  42. data/config/locales/ja.yml +3 -7
  43. data/config/locales/lv.yml +2 -6
  44. data/config/locales/nl.yml +49 -7
  45. data/config/locales/no.yml +2 -7
  46. data/config/locales/pl.yml +41 -13
  47. data/config/locales/pt-BR.yml +2 -5
  48. data/config/locales/pt.yml +2 -6
  49. data/config/locales/ro-RO.yml +69 -6
  50. data/config/locales/ru.yml +2 -5
  51. data/config/locales/sk.yml +2 -6
  52. data/config/locales/sr-CS.yml +0 -2
  53. data/config/locales/sv.yml +35 -7
  54. data/config/locales/tr-TR.yml +31 -7
  55. data/config/locales/uk.yml +2 -5
  56. data/config/locales/zh-CN.yml +2 -7
  57. data/db/migrate/20200804175222_votes_enabled_to_votes_choices.rb +4 -4
  58. data/db/migrate/20210310120613_add_followable_counter_cache_to_budgets.rb +16 -0
  59. data/lib/decidim/api/budget_type.rb +21 -0
  60. data/lib/decidim/api/budgets_type.rb +26 -0
  61. data/lib/decidim/api/project_type.rb +23 -0
  62. data/lib/decidim/budgets.rb +2 -0
  63. data/lib/decidim/budgets/api.rb +9 -0
  64. data/lib/decidim/budgets/component.rb +31 -14
  65. data/lib/decidim/budgets/project_serializer.rb +81 -0
  66. data/lib/decidim/budgets/test/factories.rb +35 -1
  67. data/lib/decidim/budgets/version.rb +1 -1
  68. data/lib/decidim/budgets/workflows/all.rb +1 -1
  69. data/lib/decidim/budgets/workflows/base.rb +3 -3
  70. data/lib/decidim/budgets/workflows/one.rb +1 -1
  71. metadata +20 -17
  72. data/app/types/decidim/budgets/budget_type.rb +0 -24
  73. data/app/types/decidim/budgets/budgets_type.rb +0 -32
  74. data/app/types/decidim/budgets/project_type.rb +0 -26
@@ -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.23.3"
7
+ "0.24.1"
8
8
  end
9
9
  end
10
10
  end
@@ -11,7 +11,7 @@ module Decidim
11
11
  end
12
12
 
13
13
  # Users can vote in all budgets with this workflow.
14
- def vote_allowed?(resource, _consider_progress = true)
14
+ def vote_allowed?(resource, _consider_progress: true)
15
15
  !voted?(resource)
16
16
  end
17
17
  end
@@ -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 = true)
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 } .compact
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 } .compact
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 = true)
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.23.3
4
+ version: 0.24.1
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-02-23 00:00:00.000000000 Z
13
+ date: 2021-04-08 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.23.3
21
+ version: 0.24.1
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.23.3
28
+ version: 0.24.1
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.23.3
35
+ version: 0.24.1
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.23.3
42
+ version: 0.24.1
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.23.3
83
+ version: 0.24.1
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.23.3
90
+ version: 0.24.1
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.23.3
97
+ version: 0.24.1
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.23.3
104
+ version: 0.24.1
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.23.3
111
+ version: 0.24.1
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.23.3
118
+ version: 0.24.1
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.6'
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.0.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