decidim-proposals 0.28.1 → 0.29.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -18
- data/app/cells/decidim/proposals/cost_report_cell.rb +0 -3
- data/app/cells/decidim/proposals/highlighted_proposals_for_component_cell.rb +1 -1
- data/app/cells/decidim/proposals/participatory_text_proposal/buttons.erb +1 -1
- data/app/cells/decidim/proposals/participatory_text_proposal_cell.rb +2 -3
- data/app/cells/decidim/proposals/proposal_cell.rb +2 -0
- data/app/cells/decidim/proposals/proposal_g/show.erb +23 -0
- data/app/cells/decidim/proposals/proposal_g_cell.rb +48 -0
- data/app/cells/decidim/proposals/proposal_l_cell.rb +0 -2
- data/app/cells/decidim/proposals/proposal_metadata_cell.rb +23 -15
- data/app/commands/decidim/proposals/admin/answer_proposal.rb +2 -1
- data/app/commands/decidim/proposals/admin/assign_proposals_to_valuator.rb +7 -5
- data/app/commands/decidim/proposals/admin/create_proposal.rb +2 -2
- data/app/commands/decidim/proposals/admin/create_proposal_state.rb +15 -0
- data/app/commands/decidim/proposals/admin/destroy_proposal_state.rb +10 -0
- data/app/commands/decidim/proposals/admin/import_proposals.rb +10 -2
- data/app/commands/decidim/proposals/admin/notify_proposal_answer.rb +4 -21
- data/app/commands/decidim/proposals/admin/unassign_proposals_from_valuator.rb +6 -4
- data/app/commands/decidim/proposals/admin/update_proposal_state.rb +13 -0
- data/app/commands/decidim/proposals/create_proposal.rb +21 -2
- data/app/commands/decidim/proposals/update_proposal.rb +2 -2
- data/app/commands/decidim/proposals/vote_proposal.rb +1 -1
- data/app/commands/decidim/proposals/withdraw_proposal.rb +3 -7
- data/app/controllers/concerns/decidim/proposals/admin/filterable.rb +10 -22
- data/app/controllers/concerns/decidim/proposals/orderable.rb +1 -1
- data/app/controllers/decidim/proposals/admin/proposal_states_controller.rb +86 -0
- data/app/controllers/decidim/proposals/admin/proposals_controller.rb +4 -0
- data/app/controllers/decidim/proposals/admin/valuation_assignments_controller.rb +8 -11
- data/app/controllers/decidim/proposals/proposals_controller.rb +30 -35
- data/app/events/decidim/proposals/proposal_state_changed_event.rb +37 -0
- data/app/forms/decidim/proposals/admin/proposal_answer_form.rb +5 -1
- data/app/forms/decidim/proposals/admin/proposal_state_form.rb +22 -0
- data/app/forms/decidim/proposals/admin/proposals_fork_form.rb +1 -1
- data/app/forms/decidim/proposals/admin/proposals_import_form.rb +1 -1
- data/app/forms/decidim/proposals/admin/valuation_assignment_form.rb +12 -14
- data/app/forms/decidim/proposals/proposal_form.rb +25 -4
- data/app/forms/decidim/proposals/reject_access_to_collaborative_draft_form.rb +1 -1
- data/app/forms/decidim/proposals/request_access_to_collaborative_draft_form.rb +1 -1
- data/app/helpers/decidim/proposals/admin/proposal_bulk_actions_helper.rb +7 -17
- data/app/helpers/decidim/proposals/admin/proposals_helper.rb +13 -89
- data/app/helpers/decidim/proposals/application_helper.rb +17 -11
- data/app/helpers/decidim/proposals/proposal_cells_helper.rb +6 -2
- data/app/helpers/decidim/proposals/proposal_votes_helper.rb +3 -3
- data/app/helpers/decidim/proposals/proposal_wizard_helper.rb +5 -8
- data/app/helpers/decidim/proposals/proposals_helper.rb +18 -24
- data/app/models/decidim/proposals/proposal.rb +78 -28
- data/app/models/decidim/proposals/proposal_state.rb +58 -0
- data/app/packs/documents/decidim/proposals/participatory_texts/participatory_text.md +1 -3
- data/app/packs/entrypoints/participatory_texts_admin.js +2 -0
- data/app/packs/images/decidim/proposals/proposal-placeholder-card-g.svg +15 -0
- data/app/packs/src/decidim/proposals/add_proposal.js +2 -0
- data/app/packs/src/decidim/proposals/admin/proposals.js +43 -8
- data/app/packs/stylesheets/decidim/proposals/admin/participatory_texts.scss +23 -0
- data/app/packs/stylesheets/decidim/proposals/proposals.scss +39 -1
- data/app/permissions/decidim/proposals/admin/permissions.rb +16 -4
- data/app/presenters/decidim/proposals/admin_log/proposal_presenter.rb +1 -5
- data/app/presenters/decidim/proposals/admin_log/proposal_state_presenter.rb +21 -0
- data/app/presenters/decidim/proposals/admin_log/value_types/proposal_title_body_presenter.rb +1 -3
- data/app/presenters/decidim/proposals/log/valuation_assignment_presenter.rb +1 -1
- data/app/presenters/decidim/proposals/proposal_presenter.rb +12 -3
- data/app/queries/decidim/proposals/metrics/endorsements_metric_manage.rb +1 -1
- data/app/queries/decidim/proposals/metrics/proposal_followers_metric_measure.rb +1 -1
- data/app/queries/decidim/proposals/metrics/proposal_participants_metric_measure.rb +4 -4
- data/app/queries/decidim/proposals/metrics/proposals_metric_manage.rb +1 -1
- data/app/queries/decidim/proposals/metrics/votes_metric_manage.rb +1 -1
- data/app/services/decidim/proposals/diff_renderer.rb +1 -1
- data/app/views/decidim/proposals/admin/imports/_proposals_fields.html.erb +1 -1
- data/app/views/decidim/proposals/admin/participatory_texts/index.html.erb +9 -5
- data/app/views/decidim/proposals/admin/proposal_answers/_form.html.erb +1 -1
- data/app/views/decidim/proposals/admin/proposal_notes/_proposal_notes.html.erb +3 -3
- data/app/views/decidim/proposals/admin/proposal_states/_form.html.erb +67 -0
- data/app/views/decidim/proposals/admin/proposal_states/edit.html.erb +18 -0
- data/app/views/decidim/proposals/admin/proposal_states/index.html.erb +50 -0
- data/app/views/decidim/proposals/admin/proposal_states/new.html.erb +18 -0
- data/app/views/decidim/proposals/admin/proposals/_bulk-actions.html.erb +0 -2
- data/app/views/decidim/proposals/admin/proposals/_form.html.erb +6 -6
- data/app/views/decidim/proposals/admin/proposals/_proposal-tr.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_assign_to_valuator.html.erb +11 -7
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_dropdown.html.erb +7 -5
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_merge.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_publish_answers.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_recategorize.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_scope-change.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_split.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_unassign_from_valuator.html.erb +11 -7
- data/app/views/decidim/proposals/admin/proposals/bulk_actions/_valuators_picker.html.erb +12 -0
- data/app/views/decidim/proposals/admin/proposals/index.html.erb +11 -5
- data/app/views/decidim/proposals/admin/proposals/publish_answers.js.erb +1 -1
- data/app/views/decidim/proposals/admin/proposals/show.html.erb +3 -2
- data/app/views/decidim/proposals/admin/proposals/update_attribute.js.erb +3 -3
- data/app/views/decidim/proposals/proposals/_edit_form_fields.html.erb +12 -5
- data/app/views/decidim/proposals/proposals/_proposal.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/_proposal_aside.html.erb +5 -3
- data/app/views/decidim/proposals/proposals/_proposals.html.erb +9 -3
- data/app/views/decidim/proposals/proposals/_vote_button.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/_voting_rules.html.erb +3 -3
- data/app/views/decidim/proposals/proposals/_wizard_header.html.erb +0 -1
- data/app/views/decidim/proposals/proposals/new.html.erb +2 -7
- data/app/views/decidim/proposals/proposals/participatory_texts/_proposal_vote_button.html.erb +4 -4
- data/app/views/decidim/proposals/proposals/participatory_texts/_proposal_votes_count.html.erb +8 -8
- data/app/views/decidim/proposals/proposals/show.html.erb +1 -1
- data/config/assets.rb +1 -0
- data/config/locales/ar.yml +5 -119
- data/config/locales/bg.yml +741 -42
- data/config/locales/ca.yml +88 -85
- data/config/locales/cs.yml +62 -124
- data/config/locales/de.yml +111 -108
- data/config/locales/el.yml +2 -123
- data/config/locales/en.yml +113 -110
- data/config/locales/es-MX.yml +86 -83
- data/config/locales/es-PY.yml +88 -85
- data/config/locales/es.yml +87 -84
- data/config/locales/eu.yml +104 -108
- data/config/locales/fi-plain.yml +91 -88
- data/config/locales/fi.yml +113 -110
- data/config/locales/fr-CA.yml +89 -86
- data/config/locales/fr.yml +81 -78
- data/config/locales/ga-IE.yml +1 -21
- data/config/locales/gl.yml +4 -109
- data/config/locales/he-IL.yml +0 -13
- data/config/locales/hu.yml +14 -91
- data/config/locales/id-ID.yml +1 -98
- data/config/locales/is-IS.yml +0 -35
- data/config/locales/it.yml +5 -97
- data/config/locales/ja.yml +112 -109
- data/config/locales/lb.yml +1 -0
- data/config/locales/lt.yml +2 -127
- data/config/locales/lv.yml +1 -97
- data/config/locales/nl.yml +5 -100
- data/config/locales/no.yml +2 -112
- data/config/locales/pl.yml +201 -107
- data/config/locales/pt-BR.yml +4 -82
- data/config/locales/pt.yml +4 -112
- data/config/locales/ro-RO.yml +5 -114
- data/config/locales/ru.yml +1 -55
- data/config/locales/sk.yml +1 -104
- data/config/locales/sv.yml +20 -108
- data/config/locales/tr-TR.yml +57 -103
- data/config/locales/uk.yml +2 -56
- data/config/locales/zh-CN.yml +1 -100
- data/config/locales/zh-TW.yml +2 -121
- data/db/migrate/20240110203500_add_withdrawn_at_field_to_proposals.rb +27 -0
- data/db/migrate/20240110203501_create_decidim_proposals_proposal_state.rb +14 -0
- data/db/migrate/20240110203502_add_state_id_to_decidim_proposals_proposals.rb +13 -0
- data/db/migrate/20240110203503_remove_state_from_decidim_proposals_proposals.rb +11 -0
- data/db/migrate/20240110203504_create_default_proposal_states.rb +31 -0
- data/db/migrate/20240209092404_change_color_fields_on_proposals_states.rb +54 -0
- data/decidim-proposals.gemspec +2 -2
- data/lib/decidim/api/proposal_type.rb +4 -0
- data/lib/decidim/proposals/admin_engine.rb +8 -0
- data/lib/decidim/proposals/admin_filter.rb +37 -0
- data/lib/decidim/proposals/component.rb +10 -9
- data/lib/decidim/proposals/engine.rb +1 -15
- data/lib/decidim/proposals/import/proposal_answer_creator.rb +6 -6
- data/lib/decidim/proposals/import/proposal_creator.rb +1 -1
- data/lib/decidim/proposals/markdown_to_proposals.rb +2 -8
- data/lib/decidim/proposals/proposal_serializer.rb +56 -3
- data/lib/decidim/proposals/seeds.rb +60 -47
- data/lib/decidim/proposals/test/factories.rb +77 -9
- data/lib/decidim/proposals/version.rb +1 -1
- data/lib/decidim/proposals.rb +84 -12
- data/lib/tasks/proposals/upgrade/decidim_proposals_upgrade_tasks.rake +32 -0
- metadata +55 -40
- data/app/events/decidim/proposals/accepted_proposal_event.rb +0 -17
- data/app/events/decidim/proposals/evaluating_proposal_event.rb +0 -11
- data/app/events/decidim/proposals/rejected_proposal_event.rb +0 -17
- data/app/forms/decidim/proposals/proposal_wizard_create_step_form.rb +0 -44
- data/app/presenters/decidim/proposals/log/resource_presenter.rb +0 -22
- data/app/queries/decidim/proposals/similar_proposals.rb +0 -67
- data/app/views/decidim/proposals/proposals/_endorsements_card_row.html.erb +0 -0
- data/app/views/decidim/proposals/proposals/_proposal_badge.html.erb +0 -3
- data/app/views/decidim/proposals/proposals/compare.html.erb +0 -24
- data/app/views/decidim/proposals/proposals/complete.html.erb +0 -31
- data/lib/tasks/proposals/upgrade/decdim_proposal_upgrade_tasks.rake +0 -34
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-proposals
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.29.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josep Jaume Rey Peroy
|
8
8
|
- Marc Riera Casals
|
9
9
|
- Oriol Gual Oliva
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2024-
|
13
|
+
date: 2024-07-16 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: decidim-comments
|
@@ -18,42 +18,42 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.
|
21
|
+
version: 0.29.0.rc1
|
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.29.0.rc1
|
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.29.0.rc1
|
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.29.0.rc1
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: doc2text
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
47
|
- - "~>"
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version: 0.4.
|
49
|
+
version: 0.4.7
|
50
50
|
type: :runtime
|
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.4.
|
56
|
+
version: 0.4.7
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
58
|
name: redcarpet
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,98 +80,98 @@ dependencies:
|
|
80
80
|
requirements:
|
81
81
|
- - '='
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: 0.
|
83
|
+
version: 0.29.0.rc1
|
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.29.0.rc1
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: decidim-assemblies
|
93
93
|
requirement: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
95
|
- - '='
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: 0.
|
97
|
+
version: 0.29.0.rc1
|
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.29.0.rc1
|
105
105
|
- !ruby/object:Gem::Dependency
|
106
106
|
name: decidim-budgets
|
107
107
|
requirement: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
109
|
- - '='
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
version: 0.
|
111
|
+
version: 0.29.0.rc1
|
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.29.0.rc1
|
119
119
|
- !ruby/object:Gem::Dependency
|
120
120
|
name: decidim-conference
|
121
121
|
requirement: !ruby/object:Gem::Requirement
|
122
122
|
requirements:
|
123
123
|
- - '='
|
124
124
|
- !ruby/object:Gem::Version
|
125
|
-
version: 0.
|
125
|
+
version: 0.29.0.rc1
|
126
126
|
type: :development
|
127
127
|
prerelease: false
|
128
128
|
version_requirements: !ruby/object:Gem::Requirement
|
129
129
|
requirements:
|
130
130
|
- - '='
|
131
131
|
- !ruby/object:Gem::Version
|
132
|
-
version: 0.
|
132
|
+
version: 0.29.0.rc1
|
133
133
|
- !ruby/object:Gem::Dependency
|
134
134
|
name: decidim-dev
|
135
135
|
requirement: !ruby/object:Gem::Requirement
|
136
136
|
requirements:
|
137
137
|
- - '='
|
138
138
|
- !ruby/object:Gem::Version
|
139
|
-
version: 0.
|
139
|
+
version: 0.29.0.rc1
|
140
140
|
type: :development
|
141
141
|
prerelease: false
|
142
142
|
version_requirements: !ruby/object:Gem::Requirement
|
143
143
|
requirements:
|
144
144
|
- - '='
|
145
145
|
- !ruby/object:Gem::Version
|
146
|
-
version: 0.
|
146
|
+
version: 0.29.0.rc1
|
147
147
|
- !ruby/object:Gem::Dependency
|
148
148
|
name: decidim-meetings
|
149
149
|
requirement: !ruby/object:Gem::Requirement
|
150
150
|
requirements:
|
151
151
|
- - '='
|
152
152
|
- !ruby/object:Gem::Version
|
153
|
-
version: 0.
|
153
|
+
version: 0.29.0.rc1
|
154
154
|
type: :development
|
155
155
|
prerelease: false
|
156
156
|
version_requirements: !ruby/object:Gem::Requirement
|
157
157
|
requirements:
|
158
158
|
- - '='
|
159
159
|
- !ruby/object:Gem::Version
|
160
|
-
version: 0.
|
160
|
+
version: 0.29.0.rc1
|
161
161
|
- !ruby/object:Gem::Dependency
|
162
162
|
name: decidim-participatory_processes
|
163
163
|
requirement: !ruby/object:Gem::Requirement
|
164
164
|
requirements:
|
165
165
|
- - '='
|
166
166
|
- !ruby/object:Gem::Version
|
167
|
-
version: 0.
|
167
|
+
version: 0.29.0.rc1
|
168
168
|
type: :development
|
169
169
|
prerelease: false
|
170
170
|
version_requirements: !ruby/object:Gem::Requirement
|
171
171
|
requirements:
|
172
172
|
- - '='
|
173
173
|
- !ruby/object:Gem::Version
|
174
|
-
version: 0.
|
174
|
+
version: 0.29.0.rc1
|
175
175
|
description: A proposals component for decidim's participatory spaces.
|
176
176
|
email:
|
177
177
|
- josepjaume@gmail.com
|
@@ -204,6 +204,8 @@ files:
|
|
204
204
|
- app/cells/decidim/proposals/participatory_text_proposal_cell.rb
|
205
205
|
- app/cells/decidim/proposals/proposal_activity_cell.rb
|
206
206
|
- app/cells/decidim/proposals/proposal_cell.rb
|
207
|
+
- app/cells/decidim/proposals/proposal_g/show.erb
|
208
|
+
- app/cells/decidim/proposals/proposal_g_cell.rb
|
207
209
|
- app/cells/decidim/proposals/proposal_l_cell.rb
|
208
210
|
- app/cells/decidim/proposals/proposal_link_to_collaborative_draft_cell.rb
|
209
211
|
- app/cells/decidim/proposals/proposal_link_to_rejected_emendation_cell.rb
|
@@ -220,6 +222,8 @@ files:
|
|
220
222
|
- app/commands/decidim/proposals/admin/assign_proposals_to_valuator.rb
|
221
223
|
- app/commands/decidim/proposals/admin/create_proposal.rb
|
222
224
|
- app/commands/decidim/proposals/admin/create_proposal_note.rb
|
225
|
+
- app/commands/decidim/proposals/admin/create_proposal_state.rb
|
226
|
+
- app/commands/decidim/proposals/admin/destroy_proposal_state.rb
|
223
227
|
- app/commands/decidim/proposals/admin/discard_participatory_text.rb
|
224
228
|
- app/commands/decidim/proposals/admin/import_participatory_text.rb
|
225
229
|
- app/commands/decidim/proposals/admin/import_proposals.rb
|
@@ -233,6 +237,7 @@ files:
|
|
233
237
|
- app/commands/decidim/proposals/admin/update_proposal.rb
|
234
238
|
- app/commands/decidim/proposals/admin/update_proposal_category.rb
|
235
239
|
- app/commands/decidim/proposals/admin/update_proposal_scope.rb
|
240
|
+
- app/commands/decidim/proposals/admin/update_proposal_state.rb
|
236
241
|
- app/commands/decidim/proposals/create_collaborative_draft.rb
|
237
242
|
- app/commands/decidim/proposals/create_proposal.rb
|
238
243
|
- app/commands/decidim/proposals/destroy_proposal.rb
|
@@ -255,6 +260,7 @@ files:
|
|
255
260
|
- app/controllers/decidim/proposals/admin/participatory_texts_controller.rb
|
256
261
|
- app/controllers/decidim/proposals/admin/proposal_answers_controller.rb
|
257
262
|
- app/controllers/decidim/proposals/admin/proposal_notes_controller.rb
|
263
|
+
- app/controllers/decidim/proposals/admin/proposal_states_controller.rb
|
258
264
|
- app/controllers/decidim/proposals/admin/proposals_controller.rb
|
259
265
|
- app/controllers/decidim/proposals/admin/proposals_imports_controller.rb
|
260
266
|
- app/controllers/decidim/proposals/admin/proposals_merges_controller.rb
|
@@ -266,7 +272,6 @@ files:
|
|
266
272
|
- app/controllers/decidim/proposals/proposal_votes_controller.rb
|
267
273
|
- app/controllers/decidim/proposals/proposals_controller.rb
|
268
274
|
- app/controllers/decidim/proposals/versions_controller.rb
|
269
|
-
- app/events/decidim/proposals/accepted_proposal_event.rb
|
270
275
|
- app/events/decidim/proposals/admin/proposal_note_created_event.rb
|
271
276
|
- app/events/decidim/proposals/admin/update_proposal_category_event.rb
|
272
277
|
- app/events/decidim/proposals/admin/update_proposal_scope_event.rb
|
@@ -279,11 +284,10 @@ files:
|
|
279
284
|
- app/events/decidim/proposals/collaborative_draft_withdrawn_event.rb
|
280
285
|
- app/events/decidim/proposals/creation_enabled_event.rb
|
281
286
|
- app/events/decidim/proposals/endorsing_enabled_event.rb
|
282
|
-
- app/events/decidim/proposals/evaluating_proposal_event.rb
|
283
287
|
- app/events/decidim/proposals/proposal_endorsed_event.rb
|
284
288
|
- app/events/decidim/proposals/proposal_mentioned_event.rb
|
289
|
+
- app/events/decidim/proposals/proposal_state_changed_event.rb
|
285
290
|
- app/events/decidim/proposals/publish_proposal_event.rb
|
286
|
-
- app/events/decidim/proposals/rejected_proposal_event.rb
|
287
291
|
- app/events/decidim/proposals/voting_enabled_event.rb
|
288
292
|
- app/forms/decidim/proposals/accept_access_to_collaborative_draft_form.rb
|
289
293
|
- app/forms/decidim/proposals/access_to_collaborative_draft_form.rb
|
@@ -294,6 +298,7 @@ files:
|
|
294
298
|
- app/forms/decidim/proposals/admin/proposal_base_form.rb
|
295
299
|
- app/forms/decidim/proposals/admin/proposal_form.rb
|
296
300
|
- app/forms/decidim/proposals/admin/proposal_note_form.rb
|
301
|
+
- app/forms/decidim/proposals/admin/proposal_state_form.rb
|
297
302
|
- app/forms/decidim/proposals/admin/proposals_file_import_form.rb
|
298
303
|
- app/forms/decidim/proposals/admin/proposals_fork_form.rb
|
299
304
|
- app/forms/decidim/proposals/admin/proposals_import_form.rb
|
@@ -302,7 +307,6 @@ files:
|
|
302
307
|
- app/forms/decidim/proposals/admin/valuation_assignment_form.rb
|
303
308
|
- app/forms/decidim/proposals/collaborative_draft_form.rb
|
304
309
|
- app/forms/decidim/proposals/proposal_form.rb
|
305
|
-
- app/forms/decidim/proposals/proposal_wizard_create_step_form.rb
|
306
310
|
- app/forms/decidim/proposals/reject_access_to_collaborative_draft_form.rb
|
307
311
|
- app/forms/decidim/proposals/request_access_to_collaborative_draft_form.rb
|
308
312
|
- app/helpers/decidim/proposals/admin/proposal_bulk_actions_helper.rb
|
@@ -327,32 +331,36 @@ files:
|
|
327
331
|
- app/models/decidim/proposals/participatory_text.rb
|
328
332
|
- app/models/decidim/proposals/proposal.rb
|
329
333
|
- app/models/decidim/proposals/proposal_note.rb
|
334
|
+
- app/models/decidim/proposals/proposal_state.rb
|
330
335
|
- app/models/decidim/proposals/proposal_vote.rb
|
331
336
|
- app/models/decidim/proposals/valuation_assignment.rb
|
332
337
|
- app/packs/documents/decidim/proposals/participatory_texts/participatory_text.md
|
333
338
|
- app/packs/documents/decidim/proposals/participatory_texts/participatory_text.odt
|
334
339
|
- app/packs/entrypoints/decidim_proposals.js
|
335
340
|
- app/packs/entrypoints/decidim_proposals_admin.js
|
341
|
+
- app/packs/entrypoints/participatory_texts_admin.js
|
336
342
|
- app/packs/images/decidim/gamification/badges/decidim_gamification_badges_accepted_proposals.svg
|
337
343
|
- app/packs/images/decidim/gamification/badges/decidim_gamification_badges_proposal_votes.svg
|
338
344
|
- app/packs/images/decidim/gamification/badges/decidim_gamification_badges_proposals.svg
|
339
345
|
- app/packs/images/decidim/proposals/decidim_proposals.svg
|
346
|
+
- app/packs/images/decidim/proposals/proposal-placeholder-card-g.svg
|
340
347
|
- app/packs/src/decidim/proposals/add_proposal.js
|
341
348
|
- app/packs/src/decidim/proposals/admin/proposals.js
|
342
349
|
- app/packs/src/decidim/proposals/admin/proposals_form.js
|
343
350
|
- app/packs/src/decidim/proposals/choose_proposals.js
|
344
351
|
- app/packs/src/decidim/proposals/utils.js
|
352
|
+
- app/packs/stylesheets/decidim/proposals/admin/participatory_texts.scss
|
345
353
|
- app/packs/stylesheets/decidim/proposals/proposals.scss
|
346
354
|
- app/permissions/decidim/proposals/admin/permissions.rb
|
347
355
|
- app/permissions/decidim/proposals/permissions.rb
|
348
356
|
- app/presenters/decidim/proposals/admin_log/proposal_note_presenter.rb
|
349
357
|
- app/presenters/decidim/proposals/admin_log/proposal_presenter.rb
|
358
|
+
- app/presenters/decidim/proposals/admin_log/proposal_state_presenter.rb
|
350
359
|
- app/presenters/decidim/proposals/admin_log/valuation_assignment_presenter.rb
|
351
360
|
- app/presenters/decidim/proposals/admin_log/value_types/proposal_state_presenter.rb
|
352
361
|
- app/presenters/decidim/proposals/admin_log/value_types/proposal_title_body_presenter.rb
|
353
362
|
- app/presenters/decidim/proposals/admin_log/value_types/valuator_role_user_presenter.rb
|
354
363
|
- app/presenters/decidim/proposals/collaborative_draft_presenter.rb
|
355
|
-
- app/presenters/decidim/proposals/log/resource_presenter.rb
|
356
364
|
- app/presenters/decidim/proposals/log/valuation_assignment_presenter.rb
|
357
365
|
- app/presenters/decidim/proposals/official_author_presenter.rb
|
358
366
|
- app/presenters/decidim/proposals/proposal_presenter.rb
|
@@ -363,7 +371,6 @@ files:
|
|
363
371
|
- app/queries/decidim/proposals/metrics/proposal_participants_metric_measure.rb
|
364
372
|
- app/queries/decidim/proposals/metrics/proposals_metric_manage.rb
|
365
373
|
- app/queries/decidim/proposals/metrics/votes_metric_manage.rb
|
366
|
-
- app/queries/decidim/proposals/similar_proposals.rb
|
367
374
|
- app/services/decidim/proposals/diff_renderer.rb
|
368
375
|
- app/services/decidim/proposals/proposal_builder.rb
|
369
376
|
- app/services/decidim/proposals/proposal_search.rb
|
@@ -376,6 +383,10 @@ files:
|
|
376
383
|
- app/views/decidim/proposals/admin/proposal_answers/_form.html.erb
|
377
384
|
- app/views/decidim/proposals/admin/proposal_notes/_form.html.erb
|
378
385
|
- app/views/decidim/proposals/admin/proposal_notes/_proposal_notes.html.erb
|
386
|
+
- app/views/decidim/proposals/admin/proposal_states/_form.html.erb
|
387
|
+
- app/views/decidim/proposals/admin/proposal_states/edit.html.erb
|
388
|
+
- app/views/decidim/proposals/admin/proposal_states/index.html.erb
|
389
|
+
- app/views/decidim/proposals/admin/proposal_states/new.html.erb
|
379
390
|
- app/views/decidim/proposals/admin/proposals/_bulk-actions.html.erb
|
380
391
|
- app/views/decidim/proposals/admin/proposals/_documents.html.erb
|
381
392
|
- app/views/decidim/proposals/admin/proposals/_endorsers.html.erb
|
@@ -391,6 +402,7 @@ files:
|
|
391
402
|
- app/views/decidim/proposals/admin/proposals/bulk_actions/_scope-change.html.erb
|
392
403
|
- app/views/decidim/proposals/admin/proposals/bulk_actions/_split.html.erb
|
393
404
|
- app/views/decidim/proposals/admin/proposals/bulk_actions/_unassign_from_valuator.html.erb
|
405
|
+
- app/views/decidim/proposals/admin/proposals/bulk_actions/_valuators_picker.html.erb
|
394
406
|
- app/views/decidim/proposals/admin/proposals/edit.html.erb
|
395
407
|
- app/views/decidim/proposals/admin/proposals/index.html.erb
|
396
408
|
- app/views/decidim/proposals/admin/proposals/new.html.erb
|
@@ -414,11 +426,9 @@ files:
|
|
414
426
|
- app/views/decidim/proposals/proposal_votes/update_buttons_and_counters.js.erb
|
415
427
|
- app/views/decidim/proposals/proposals/_actions.html.erb
|
416
428
|
- app/views/decidim/proposals/proposals/_edit_form_fields.html.erb
|
417
|
-
- app/views/decidim/proposals/proposals/_endorsements_card_row.html.erb
|
418
429
|
- app/views/decidim/proposals/proposals/_linked_proposals.html.erb
|
419
430
|
- app/views/decidim/proposals/proposals/_proposal.html.erb
|
420
431
|
- app/views/decidim/proposals/proposals/_proposal_aside.html.erb
|
421
|
-
- app/views/decidim/proposals/proposals/_proposal_badge.html.erb
|
422
432
|
- app/views/decidim/proposals/proposals/_proposals.html.erb
|
423
433
|
- app/views/decidim/proposals/proposals/_proposals_picker.html.erb
|
424
434
|
- app/views/decidim/proposals/proposals/_remaining_votes_count.html.erb
|
@@ -426,8 +436,6 @@ files:
|
|
426
436
|
- app/views/decidim/proposals/proposals/_votes_count.html.erb
|
427
437
|
- app/views/decidim/proposals/proposals/_voting_rules.html.erb
|
428
438
|
- app/views/decidim/proposals/proposals/_wizard_header.html.erb
|
429
|
-
- app/views/decidim/proposals/proposals/compare.html.erb
|
430
|
-
- app/views/decidim/proposals/proposals/complete.html.erb
|
431
439
|
- app/views/decidim/proposals/proposals/edit.html.erb
|
432
440
|
- app/views/decidim/proposals/proposals/edit_draft.html.erb
|
433
441
|
- app/views/decidim/proposals/proposals/index.html.erb
|
@@ -578,6 +586,12 @@ files:
|
|
578
586
|
- db/migrate/20210318082934_fix_counters_for_copied_proposals.rb
|
579
587
|
- db/migrate/20230427105700_change_states_on_collaborative_drafts.rb
|
580
588
|
- db/migrate/20230427105700_change_states_on_proposals.rb
|
589
|
+
- db/migrate/20240110203500_add_withdrawn_at_field_to_proposals.rb
|
590
|
+
- db/migrate/20240110203501_create_decidim_proposals_proposal_state.rb
|
591
|
+
- db/migrate/20240110203502_add_state_id_to_decidim_proposals_proposals.rb
|
592
|
+
- db/migrate/20240110203503_remove_state_from_decidim_proposals_proposals.rb
|
593
|
+
- db/migrate/20240110203504_create_default_proposal_states.rb
|
594
|
+
- db/migrate/20240209092404_change_color_fields_on_proposals_states.rb
|
581
595
|
- db/migrate/20240404202756_add_valuation_assignments_count_to_decidim_proposals_proposals.rb
|
582
596
|
- decidim-proposals.gemspec
|
583
597
|
- lib/decidim/api/proposal_input_filter.rb
|
@@ -589,6 +603,7 @@ files:
|
|
589
603
|
- lib/decidim/proposals.rb
|
590
604
|
- lib/decidim/proposals/admin.rb
|
591
605
|
- lib/decidim/proposals/admin_engine.rb
|
606
|
+
- lib/decidim/proposals/admin_filter.rb
|
592
607
|
- lib/decidim/proposals/api.rb
|
593
608
|
- lib/decidim/proposals/commentable_collaborative_draft.rb
|
594
609
|
- lib/decidim/proposals/commentable_proposal.rb
|
@@ -608,7 +623,7 @@ files:
|
|
608
623
|
- lib/decidim/proposals/test/factories.rb
|
609
624
|
- lib/decidim/proposals/valuatable.rb
|
610
625
|
- lib/decidim/proposals/version.rb
|
611
|
-
- lib/tasks/proposals/upgrade/
|
626
|
+
- lib/tasks/proposals/upgrade/decidim_proposals_upgrade_tasks.rake
|
612
627
|
homepage: https://decidim.org
|
613
628
|
licenses:
|
614
629
|
- AGPL-3.0
|
@@ -618,7 +633,7 @@ metadata:
|
|
618
633
|
funding_uri: https://opencollective.com/decidim
|
619
634
|
homepage_uri: https://decidim.org
|
620
635
|
source_code_uri: https://github.com/decidim/decidim
|
621
|
-
post_install_message:
|
636
|
+
post_install_message:
|
622
637
|
rdoc_options: []
|
623
638
|
require_paths:
|
624
639
|
- lib
|
@@ -626,15 +641,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
626
641
|
requirements:
|
627
642
|
- - "~>"
|
628
643
|
- !ruby/object:Gem::Version
|
629
|
-
version: 3.
|
644
|
+
version: 3.2.0
|
630
645
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
631
646
|
requirements:
|
632
|
-
- - "
|
647
|
+
- - ">"
|
633
648
|
- !ruby/object:Gem::Version
|
634
|
-
version:
|
649
|
+
version: 1.3.1
|
635
650
|
requirements: []
|
636
|
-
rubygems_version: 3.
|
637
|
-
signing_key:
|
651
|
+
rubygems_version: 3.4.10
|
652
|
+
signing_key:
|
638
653
|
specification_version: 4
|
639
654
|
summary: Decidim proposals module
|
640
655
|
test_files: []
|
@@ -1,17 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Proposals
|
5
|
-
class AcceptedProposalEvent < Decidim::Events::SimpleEvent
|
6
|
-
include Decidim::Events::AuthorEvent
|
7
|
-
|
8
|
-
def resource_text
|
9
|
-
translated_attribute(resource.answer)
|
10
|
-
end
|
11
|
-
|
12
|
-
def event_has_roles?
|
13
|
-
true
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Proposals
|
5
|
-
class RejectedProposalEvent < Decidim::Events::SimpleEvent
|
6
|
-
include Decidim::Events::AuthorEvent
|
7
|
-
|
8
|
-
def resource_text
|
9
|
-
translated_attribute(resource.answer)
|
10
|
-
end
|
11
|
-
|
12
|
-
def event_has_roles?
|
13
|
-
true
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,44 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Proposals
|
5
|
-
# A form object to be used when public users want to create a proposal.
|
6
|
-
class ProposalWizardCreateStepForm < Decidim::Form
|
7
|
-
mimic :proposal
|
8
|
-
|
9
|
-
attribute :title, String
|
10
|
-
attribute :body, Decidim::Attributes::CleanString
|
11
|
-
attribute :body_template, String
|
12
|
-
attribute :user_group_id, Integer
|
13
|
-
|
14
|
-
validates :title, :body, presence: true, etiquette: true
|
15
|
-
validates :title, length: { in: 15..150 }
|
16
|
-
validates :body, proposal_length: {
|
17
|
-
minimum: 15,
|
18
|
-
maximum: ->(record) { record.component.settings.proposal_length }
|
19
|
-
}
|
20
|
-
|
21
|
-
validate :body_is_not_bare_template
|
22
|
-
|
23
|
-
alias component current_component
|
24
|
-
|
25
|
-
def map_model(model)
|
26
|
-
self.title = translated_attribute(model.title)
|
27
|
-
self.body = translated_attribute(model.body)
|
28
|
-
|
29
|
-
self.user_group_id = model.user_groups.first&.id
|
30
|
-
return unless model.categorization
|
31
|
-
|
32
|
-
self.category_id = model.categorization.decidim_category_id
|
33
|
-
end
|
34
|
-
|
35
|
-
private
|
36
|
-
|
37
|
-
def body_is_not_bare_template
|
38
|
-
return if body_template.blank?
|
39
|
-
|
40
|
-
errors.add(:body, :cant_be_equal_to_template) if body.presence == body_template.presence
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Proposals
|
5
|
-
module Log
|
6
|
-
class ResourcePresenter < Decidim::Log::ResourcePresenter
|
7
|
-
private
|
8
|
-
|
9
|
-
# Private: Presents resource name.
|
10
|
-
#
|
11
|
-
# Returns an HTML-safe String.
|
12
|
-
def present_resource_name
|
13
|
-
if resource.present?
|
14
|
-
Decidim::Proposals::ProposalPresenter.new(resource).title
|
15
|
-
else
|
16
|
-
super
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,67 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Proposals
|
5
|
-
# Class used to retrieve similar proposals.
|
6
|
-
class SimilarProposals < Decidim::Query
|
7
|
-
include Decidim::TranslationsHelper
|
8
|
-
|
9
|
-
# Syntactic sugar to initialize the class and return the queried objects.
|
10
|
-
#
|
11
|
-
# components - Decidim::CurrentComponent
|
12
|
-
# proposal - Decidim::Proposals::Proposal
|
13
|
-
def self.for(components, proposal)
|
14
|
-
new(components, proposal).query
|
15
|
-
end
|
16
|
-
|
17
|
-
# Initializes the class.
|
18
|
-
#
|
19
|
-
# components - Decidim::CurrentComponent
|
20
|
-
# proposal - Decidim::Proposals::Proposal
|
21
|
-
def initialize(components, proposal)
|
22
|
-
@components = components
|
23
|
-
@proposal = proposal
|
24
|
-
@translations_enabled = proposal.component.organization.enable_machine_translations
|
25
|
-
end
|
26
|
-
|
27
|
-
# Retrieves similar proposals
|
28
|
-
def query
|
29
|
-
Decidim::Proposals::Proposal
|
30
|
-
.where(component: @components)
|
31
|
-
.published
|
32
|
-
.not_hidden
|
33
|
-
.where(
|
34
|
-
Arel.sql("GREATEST(#{title_similarity}, #{body_similarity}) >= ?").to_s,
|
35
|
-
*similarity_params,
|
36
|
-
Decidim::Proposals.similarity_threshold
|
37
|
-
)
|
38
|
-
.limit(Decidim::Proposals.similarity_limit)
|
39
|
-
end
|
40
|
-
|
41
|
-
private
|
42
|
-
|
43
|
-
attr_reader :translations_enabled, :proposal
|
44
|
-
|
45
|
-
def title_similarity
|
46
|
-
return "similarity(title::text, ?)" unless translations_enabled
|
47
|
-
|
48
|
-
language = proposal.content_original_language
|
49
|
-
"similarity(title->>'#{language}'::text, ?), similarity(title->'machine_translations'->>'#{language}'::text, ?)"
|
50
|
-
end
|
51
|
-
|
52
|
-
def body_similarity
|
53
|
-
return "similarity(body::text, ?)" unless translations_enabled
|
54
|
-
|
55
|
-
language = proposal.content_original_language
|
56
|
-
"similarity(body->>'#{language}'::text, ?), similarity(body->'machine_translations'->>'#{language}'::text, ?)"
|
57
|
-
end
|
58
|
-
|
59
|
-
def similarity_params
|
60
|
-
title_attr = translated_attribute(proposal.title)
|
61
|
-
body_attr = translated_attribute(proposal.body)
|
62
|
-
|
63
|
-
translations_enabled ? [title_attr, title_attr, body_attr, body_attr] : [title_attr, body_attr]
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
67
|
-
end
|
File without changes
|
@@ -1,24 +0,0 @@
|
|
1
|
-
<% add_decidim_page_title(proposal_wizard_step_title(action_name)) %>
|
2
|
-
|
3
|
-
<% append_stylesheet_pack_tag "decidim_proposals", media: "all" %>
|
4
|
-
<% append_javascript_pack_tag "decidim_proposals" %>
|
5
|
-
|
6
|
-
<%= render layout: "layouts/decidim/shared/layout_center" do %>
|
7
|
-
|
8
|
-
<%= render partial: "wizard_header", locals: { callout_step_help_text_class: "warning" } %>
|
9
|
-
|
10
|
-
<% if @similar_proposals.present? %>
|
11
|
-
<div class="proposal__container my-10">
|
12
|
-
<% @similar_proposals.each do |proposal| %>
|
13
|
-
<%= card_for @proposal %>
|
14
|
-
<% end %>
|
15
|
-
</div>
|
16
|
-
<% end %>
|
17
|
-
|
18
|
-
<div class="form__wrapper-block flex-col-reverse md:flex-row justify-between">
|
19
|
-
<%= link_to complete_proposal_path(@proposal), class: "button button__sm md:button__lg button__secondary ml-auto" do %>
|
20
|
-
<span><%= t("continue", scope: "decidim.proposals.proposals.compare") %></span>
|
21
|
-
<%= icon "arrow-right-line" %>
|
22
|
-
<% end %>
|
23
|
-
</div>
|
24
|
-
<% end %>
|
@@ -1,31 +0,0 @@
|
|
1
|
-
<% add_decidim_page_title(proposal_wizard_step_title(action_name)) %>
|
2
|
-
|
3
|
-
<%= append_stylesheet_pack_tag "decidim_proposals", media: "all" %>
|
4
|
-
<%= append_javascript_pack_tag "decidim_proposals" %>
|
5
|
-
|
6
|
-
<%= render layout: "layouts/decidim/shared/layout_center" do %>
|
7
|
-
|
8
|
-
<%= render partial: "wizard_header" %>
|
9
|
-
|
10
|
-
<%= decidim_form_for(@form, url: update_draft_proposal_path(@proposal), method: :patch) do |form| %>
|
11
|
-
|
12
|
-
<%= form_required_explanation %>
|
13
|
-
|
14
|
-
<div class="form__wrapper">
|
15
|
-
<%= render partial: "edit_form_fields", locals: { form: } %>
|
16
|
-
</div>
|
17
|
-
|
18
|
-
<div class="form__wrapper-block flex-col-reverse md:flex-row justify-between">
|
19
|
-
<%= link_to proposal_wizard_aside_link_to_back(@step), class: "button button__sm md:button__lg button__text-secondary" do %>
|
20
|
-
<%= icon "arrow-left-line" %>
|
21
|
-
<%= wizard_aside_back_text(@step) %>
|
22
|
-
<% end %>
|
23
|
-
|
24
|
-
<button type="submit" class="button button__sm md:button__lg button__secondary">
|
25
|
-
<span><%= t("send", scope: "decidim.proposals.proposals.complete") %></span>
|
26
|
-
<%= icon "arrow-right-line" %>
|
27
|
-
</button>
|
28
|
-
</div>
|
29
|
-
<% end %>
|
30
|
-
|
31
|
-
<% end %>
|