decidim-proposals 0.29.1 → 0.29.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/cells/decidim/proposals/highlighted_proposals_for_component/show.erb +11 -11
- data/app/cells/decidim/proposals/proposal_g_cell.rb +21 -0
- data/app/cells/decidim/proposals/proposal_l_cell.rb +17 -18
- data/app/controllers/concerns/decidim/proposals/admin/filterable.rb +1 -1
- data/app/controllers/decidim/proposals/proposals_controller.rb +4 -8
- data/app/forms/decidim/proposals/admin/proposal_answer_form.rb +3 -3
- data/app/forms/decidim/proposals/admin/proposal_form.rb +1 -1
- data/app/forms/decidim/proposals/admin/proposals_import_form.rb +6 -9
- data/app/forms/decidim/proposals/admin/valuation_assignment_form.rb +4 -1
- data/app/helpers/decidim/proposals/admin/proposal_bulk_actions_helper.rb +1 -1
- data/app/helpers/decidim/proposals/map_helper.rb +1 -1
- data/app/models/decidim/proposals/proposal.rb +2 -6
- data/app/packs/stylesheets/decidim/proposals/proposals.scss +1 -5
- data/app/permissions/decidim/proposals/permissions.rb +4 -3
- data/app/services/decidim/proposals/collaborative_draft_diff_renderer.rb +22 -0
- data/app/services/decidim/proposals/diff_renderer.rb +2 -0
- data/app/services/decidim/proposals/proposal_builder.rb +1 -1
- data/app/views/decidim/proposals/admin/proposals/index.html.erb +2 -2
- data/app/views/decidim/proposals/admin/proposals_imports/new.html.erb +2 -2
- data/app/views/decidim/proposals/proposals/index.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/index.js.erb +12 -0
- data/app/views/decidim/proposals/proposals/show.html.erb +1 -1
- data/config/locales/ar.yml +1 -3
- data/config/locales/bg.yml +5 -7
- data/config/locales/bn-BD.yml +1 -0
- data/config/locales/bs-BA.yml +100 -0
- data/config/locales/ca.yml +5 -5
- data/config/locales/cs.yml +19 -5
- data/config/locales/de.yml +7 -7
- data/config/locales/el.yml +3 -5
- data/config/locales/es-MX.yml +8 -8
- data/config/locales/es-PY.yml +3 -3
- data/config/locales/es.yml +8 -8
- data/config/locales/eu.yml +93 -86
- data/config/locales/fi-plain.yml +7 -7
- data/config/locales/fi.yml +24 -24
- data/config/locales/fr-CA.yml +4 -6
- data/config/locales/fr.yml +3 -5
- data/config/locales/gl.yml +3 -6
- data/config/locales/he-IL.yml +7 -0
- data/config/locales/hu.yml +2 -3
- data/config/locales/id-ID.yml +9 -4
- data/config/locales/is-IS.yml +0 -7
- data/config/locales/it.yml +7 -8
- data/config/locales/ja.yml +3 -5
- data/config/locales/lt.yml +1 -3
- data/config/locales/lv.yml +5 -2
- data/config/locales/nl.yml +7 -5
- data/config/locales/no.yml +1 -4
- data/config/locales/pl.yml +2 -4
- data/config/locales/pt-BR.yml +3 -5
- data/config/locales/pt.yml +2 -4
- data/config/locales/ro-RO.yml +7 -9
- data/config/locales/ru.yml +0 -7
- data/config/locales/sk.yml +6 -3
- data/config/locales/sl.yml +0 -4
- data/config/locales/sv.yml +5 -4
- data/config/locales/tr-TR.yml +5 -7
- data/config/locales/uk.yml +1 -8
- data/config/locales/zh-CN.yml +1 -3
- data/config/locales/zh-TW.yml +3 -5
- data/db/migrate/20240110203504_create_default_proposal_states.rb +3 -2
- data/decidim-proposals.gemspec +1 -1
- data/lib/decidim/api/proposal_type.rb +13 -0
- data/lib/decidim/api/proposals_type.rb +1 -3
- data/lib/decidim/proposals/proposal_serializer.rb +7 -4
- data/lib/decidim/proposals/test/factories.rb +6 -5
- data/lib/decidim/proposals/version.rb +1 -1
- metadata +24 -21
data/config/locales/no.yml
CHANGED
@@ -222,11 +222,8 @@
|
|
222
222
|
email_subject: Nytt forslag "%{resource_title}" lagt til %{participatory_space_title}
|
223
223
|
proposal_update_category:
|
224
224
|
email_intro: 'En admin har oppdatert kategorien for forslaget ditt "%{resource_title}", sjekk det ut på denne siden:'
|
225
|
-
email_outro: Du har mottatt denne varslingen fordi du er forfatteren av forslaget.
|
226
225
|
email_subject: Forslags kategorien %{resource_title} ble oppdatert
|
227
226
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> forslags kategorien er blitt oppdatert av en administrator.
|
228
|
-
proposal_update_scope:
|
229
|
-
email_outro: Du har mottatt denne varslingen fordi du er forfatteren av forslaget.
|
230
227
|
voting_enabled:
|
231
228
|
email_outro: Du har mottatt denne varslingen fordi du følger %{participatory_space_title}. Du kan slutte å motta varsler hvis du følger den forrige lenken.
|
232
229
|
gamification:
|
@@ -271,7 +268,7 @@
|
|
271
268
|
title: Forslag
|
272
269
|
participatory_spaces:
|
273
270
|
highlighted_proposals:
|
274
|
-
see_all: Vis alle
|
271
|
+
see_all: Vis alle
|
275
272
|
proposals:
|
276
273
|
actions:
|
277
274
|
answer_proposal: Svar på forslag
|
data/config/locales/pl.yml
CHANGED
@@ -145,7 +145,7 @@ pl:
|
|
145
145
|
actions:
|
146
146
|
amend: Popraw
|
147
147
|
comment: Skomentuj
|
148
|
-
create:
|
148
|
+
create: Utwórz
|
149
149
|
endorse: Rekomendacje
|
150
150
|
vote: Głosuj
|
151
151
|
vote_comment: Poprzyj komentarz
|
@@ -312,12 +312,10 @@ pl:
|
|
312
312
|
notification_title: Wniosek <a href="%{resource_path}">%{resource_title}</a> zmienił stan na "%{state}".
|
313
313
|
proposal_update_category:
|
314
314
|
email_intro: 'Administrator zaktualizował kategorię Twojej propozycji "%{resource_title}", sprawdź to:'
|
315
|
-
email_outro: Otrzymałeś to powiadomienie, ponieważ jesteś autorem propozycji.
|
316
315
|
email_subject: Kategoria %{resource_title} propozycji została zaktualizowana
|
317
316
|
notification_title: Kategoria propozycji <a href="%{resource_path}">%{resource_title}</a> została zaktualizowana przez administratora.
|
318
317
|
proposal_update_scope:
|
319
318
|
email_intro: 'Administrator zaktualizował zakres Twojej propozycji „%{resource_title}”, sprawdź to na tej stronie:'
|
320
|
-
email_outro: Otrzymałeś to powiadomienie, ponieważ jesteś autorem propozycji.
|
321
319
|
email_subject: Zaktualizowano zakres propozycji %{resource_title}
|
322
320
|
notification_title: Administrator zaktualizował zakres propozycji <a href="%{resource_path}">%{resource_title}</a>.
|
323
321
|
voting_enabled:
|
@@ -380,7 +378,7 @@ pl:
|
|
380
378
|
participatory_spaces:
|
381
379
|
highlighted_proposals:
|
382
380
|
last: Ostatnie propozycje
|
383
|
-
see_all: Zobacz wszystkie propozycje
|
381
|
+
see_all: Zobacz wszystkie propozycje
|
384
382
|
proposals:
|
385
383
|
actions:
|
386
384
|
answer_proposal: Odpowiedz na propozycję
|
data/config/locales/pt-BR.yml
CHANGED
@@ -243,12 +243,10 @@ pt-BR:
|
|
243
243
|
notification_title_official: A proposta oficial <a href="%{resource_path}">%{resource_title}</a> foi adicionada à %{participatory_space_title}.
|
244
244
|
proposal_update_category:
|
245
245
|
email_intro: 'Um administrador atualizou a categoria de sua proposta "%{resource_title}", confira:'
|
246
|
-
email_outro: Você recebeu esta notificação porque você é o autor da proposta.
|
247
246
|
email_subject: A categoria de proposta %{resource_title} foi atualizada
|
248
247
|
notification_title: A <a href="%{resource_path}">%{resource_title}</a> categoria de proposta foi atualizada por um administrador.
|
249
248
|
proposal_update_scope:
|
250
249
|
email_intro: 'Um administrador atualizou o escopo de sua proposta "%{resource_title}", confira nesta página:'
|
251
|
-
email_outro: Você recebeu esta notificação porque você é o autor da proposta.
|
252
250
|
email_subject: O escopo da proposta %{resource_title} foi atualizado
|
253
251
|
notification_title: O escopo da proposta <a href="%{resource_path}">%{resource_title}</a> foi atualizado por um administrador.
|
254
252
|
voting_enabled:
|
@@ -300,7 +298,7 @@ pt-BR:
|
|
300
298
|
title: Votos
|
301
299
|
participatory_spaces:
|
302
300
|
highlighted_proposals:
|
303
|
-
see_all: Ver todos
|
301
|
+
see_all: Ver todos
|
304
302
|
proposals:
|
305
303
|
actions:
|
306
304
|
answer_proposal: Responder proposta
|
@@ -389,7 +387,7 @@ pt-BR:
|
|
389
387
|
title: Atualizar proposta
|
390
388
|
update: Atualizar
|
391
389
|
form:
|
392
|
-
attachment_legend: "(Opcional)
|
390
|
+
attachment_legend: "(Opcional) Adicione um anexo"
|
393
391
|
created_in_meeting: Esta proposta vem de uma reunião
|
394
392
|
delete_attachment: Excluir anexo
|
395
393
|
select_a_category: Selecionar uma categoria
|
@@ -593,7 +591,7 @@ pt-BR:
|
|
593
591
|
official_proposal: Proposta oficial
|
594
592
|
published_answer: Resposta publicada
|
595
593
|
published_at: Publicado em
|
596
|
-
scope:
|
594
|
+
scope: Escopo
|
597
595
|
state: Estado
|
598
596
|
title: Título
|
599
597
|
valuator: Avaliador
|
data/config/locales/pt.yml
CHANGED
@@ -233,12 +233,10 @@ pt:
|
|
233
233
|
email_subject: Nova proposta "%{resource_title}" adicionada a %{participatory_space_title}
|
234
234
|
proposal_update_category:
|
235
235
|
email_intro: 'Um administrador atualizou a categoria da sua proposta "%{resource_title}", verifique nesta página:'
|
236
|
-
email_outro: Recebeu esta notificação porque é o autor da proposta.
|
237
236
|
email_subject: A categoria da proposta %{resource_title} foi atualizada
|
238
237
|
notification_title: A categoria da proposta <a href="%{resource_path}">%{resource_title}</a> foi atualizada por um administrador.
|
239
238
|
proposal_update_scope:
|
240
239
|
email_intro: 'Um administrador atualizou o âmbito da sua proposta "%{resource_title}". Consulte-o nesta página:'
|
241
|
-
email_outro: Recebeu esta notificação porque é o autor da proposta.
|
242
240
|
email_subject: O âmbito da proposta %{resource_title} foi atualizado
|
243
241
|
notification_title: O âmbito da proposta <a href="%{resource_path}">%{resource_title}</a> foi atualizado por um administrador.
|
244
242
|
voting_enabled:
|
@@ -285,7 +283,7 @@ pt:
|
|
285
283
|
title: Propostas
|
286
284
|
participatory_spaces:
|
287
285
|
highlighted_proposals:
|
288
|
-
see_all: Ver todos
|
286
|
+
see_all: Ver todos
|
289
287
|
proposals:
|
290
288
|
actions:
|
291
289
|
answer_proposal: Responder a proposta
|
@@ -348,7 +346,7 @@ pt:
|
|
348
346
|
title: Atualizar proposta
|
349
347
|
update: Atualizar
|
350
348
|
form:
|
351
|
-
attachment_legend: "(Opcional)
|
349
|
+
attachment_legend: "(Opcional) Adicione um anexo"
|
352
350
|
created_in_meeting: Esta proposta vem de uma reunião
|
353
351
|
delete_attachment: Apagar anexo
|
354
352
|
select_a_category: Selecione uma categoria
|
data/config/locales/ro-RO.yml
CHANGED
@@ -236,12 +236,10 @@ ro:
|
|
236
236
|
email_subject: O nouă propunere "%{resource_title}" a fost adăugată la %{participatory_space_title}
|
237
237
|
proposal_update_category:
|
238
238
|
email_intro: 'Un administrator a actualizat categoria propunerii tale „%{resource_title}", verifică modificarea în această pagină:'
|
239
|
-
email_outro: Ai primit această notificare deoarece ești autorul acestei propuneri.
|
240
239
|
email_subject: Categoria propunerii %{resource_title} a fost actualizată
|
241
240
|
notification_title: Categoria propunerii <a href="%{resource_path}">%{resource_title}</a> a fost actualizată de către un administrator.
|
242
241
|
proposal_update_scope:
|
243
242
|
email_intro: 'Un administrator a actualizat domeniul de interes al propunerii tale „%{resource_title}”, verifică modificarea în această pagină:'
|
244
|
-
email_outro: Ai primit această notificare deoarece ești autorul acestei propuneri.
|
245
243
|
email_subject: Domeniul de interes al propunerii %{resource_title} a fost actualizat
|
246
244
|
notification_title: Domeniul de interes al propunerii <a href="%{resource_path}">%{resource_title}</a> a fost actualizat de către un administrator.
|
247
245
|
voting_enabled:
|
@@ -288,7 +286,7 @@ ro:
|
|
288
286
|
title: Propuneri
|
289
287
|
participatory_spaces:
|
290
288
|
highlighted_proposals:
|
291
|
-
see_all: Afișează toate propunerile
|
289
|
+
see_all: Afișează toate propunerile
|
292
290
|
proposals:
|
293
291
|
actions:
|
294
292
|
answer_proposal: Răspundeți la propunere
|
@@ -300,14 +298,14 @@ ro:
|
|
300
298
|
title: Acțiuni
|
301
299
|
admin:
|
302
300
|
actions:
|
303
|
-
preview:
|
301
|
+
preview: Previzualizați
|
304
302
|
exports:
|
305
303
|
proposal_comments: Comentarii
|
306
304
|
proposals: Propuneri
|
307
305
|
imports:
|
308
306
|
label:
|
309
|
-
answers:
|
310
|
-
proposals:
|
307
|
+
answers: Importați răspunsuri dintr-un fișier
|
308
|
+
proposals: Importați propuneri dintr-un fișier
|
311
309
|
resources:
|
312
310
|
answers:
|
313
311
|
one: răspuns la propunere
|
@@ -335,7 +333,7 @@ ro:
|
|
335
333
|
info_1: Următoarele secțiuni au fost convertite în propuneri. Acum le poți revizui și ajusta înainte de a le publica.
|
336
334
|
publish_document: Publică documentul
|
337
335
|
save_draft: Salvează ciorna
|
338
|
-
title:
|
336
|
+
title: Previzualizați textul participativ
|
339
337
|
new_import:
|
340
338
|
accepted_mime_types:
|
341
339
|
md: Markdown
|
@@ -400,7 +398,7 @@ ro:
|
|
400
398
|
comments_count: Număr de comentarii
|
401
399
|
documents: Documente
|
402
400
|
endorsements_count: Număr de susțineri
|
403
|
-
endorsers:
|
401
|
+
endorsers: Susținători
|
404
402
|
n_more_endorsers:
|
405
403
|
one: și încă 1
|
406
404
|
few: și încă %{count}
|
@@ -592,7 +590,7 @@ ro:
|
|
592
590
|
edit_draft:
|
593
591
|
discard: Renunță la această ciornă
|
594
592
|
discard_confirmation: Sigur dorești să renunți la această ciornă de propunere?
|
595
|
-
send:
|
593
|
+
send: Previzualizați
|
596
594
|
edit_form_fields:
|
597
595
|
marker_added: Marker adăugat pe hartă.
|
598
596
|
filters:
|
data/config/locales/ru.yml
CHANGED
@@ -102,11 +102,8 @@ ru:
|
|
102
102
|
email_outro: Вы получили это уведомление, потому что вы следите за «%{participatory_space_title}». Вы можете перестать за ним следить, перейдя по приведенной выше ссылке.
|
103
103
|
proposal_update_category:
|
104
104
|
email_intro: 'Администратор обновил категорию вашего предложения «%{resource_title}», проверьте её:'
|
105
|
-
email_outro: Вы получили это уведомление, потому что вы являетесь автором предложения.
|
106
105
|
email_subject: Обновлена категория предложений %{resource_title}
|
107
106
|
notification_title: Категория предложений <a href="%{resource_path}">%{resource_title}</a> была обновлена администратором.
|
108
|
-
proposal_update_scope:
|
109
|
-
email_outro: Вы получили это уведомление, потому что вы являетесь автором предложения.
|
110
107
|
voting_enabled:
|
111
108
|
email_intro: 'Теперь вы можете голосовать по предложениям в %{participatory_space_title}! Начните со страницы:'
|
112
109
|
email_outro: Вы получили это уведомление, потому что вы следите за «%{participatory_space_title}». Вы можете отписаться от уведомлений, перейдя по приведенной выше ссылке.
|
@@ -136,7 +133,6 @@ ru:
|
|
136
133
|
title: Частные примечания
|
137
134
|
proposals:
|
138
135
|
form:
|
139
|
-
attachment_legend: "(Необязательно) Прикрепить файл"
|
140
136
|
select_a_category: Выберите категорию
|
141
137
|
index:
|
142
138
|
actions: Действия
|
@@ -180,13 +176,11 @@ ru:
|
|
180
176
|
models:
|
181
177
|
proposal:
|
182
178
|
fields:
|
183
|
-
category: Категория
|
184
179
|
comments: Комментарии
|
185
180
|
id: Псевдоним
|
186
181
|
notes: Примечания
|
187
182
|
official_proposal: Служебное предложение
|
188
183
|
published_at: 'Обнародовано:'
|
189
|
-
scope: Охват
|
190
184
|
state: Cостояние
|
191
185
|
title: Заголовок
|
192
186
|
votes: Голоса
|
@@ -230,7 +224,6 @@ ru:
|
|
230
224
|
title: Обнародуйте свое предложение
|
231
225
|
show:
|
232
226
|
answer: Ответить
|
233
|
-
edit_proposal: Редактировать предложение
|
234
227
|
proposal_accepted_reason: 'Это предложение было принято, поскольку:'
|
235
228
|
proposal_in_evaluation_reason: Это предложение сейчас рассматривается
|
236
229
|
proposal_rejected_reason: 'Это предложение было отклонено, поскольку:'
|
data/config/locales/sk.yml
CHANGED
@@ -79,6 +79,10 @@ sk:
|
|
79
79
|
admin:
|
80
80
|
filters:
|
81
81
|
proposals:
|
82
|
+
category_id_eq:
|
83
|
+
label: Kategória
|
84
|
+
scope_id_eq:
|
85
|
+
label: Rozsah
|
82
86
|
valuator_role_ids_has:
|
83
87
|
label: Priradené ku hodnotiteľov
|
84
88
|
search_placeholder:
|
@@ -113,6 +117,7 @@ sk:
|
|
113
117
|
proposal_limit: Limit návrhu na užívateľa
|
114
118
|
proposal_wizard_step_1_help_text: Pomocný text Sprievodcu "Vytvoriť" návrh
|
115
119
|
resources_permissions_enabled: Pre každý návrh možno nastaviť povolenia akcie
|
120
|
+
scope_id: Rozsah
|
116
121
|
threshold_per_proposal: Maximálny limit na návrh
|
117
122
|
step:
|
118
123
|
amendment_creation_enabled: Umožniť tvorbu Pozmeňovacích návrhov
|
@@ -176,12 +181,10 @@ sk:
|
|
176
181
|
email_subject: Nový návrh "%{resource_title}" bol pridaný k%{participatory_space_title}
|
177
182
|
proposal_update_category:
|
178
183
|
email_intro: 'Správca aktualizoval kategórii vášho návrhu "%{resource_title}", pozrite sa na neho:'
|
179
|
-
email_outro: Toto oznámenie ste dostali, pretože ste autorom návrhu.
|
180
184
|
email_subject: Kategória návrhov %{resource_title} bola aktualizovaná
|
181
185
|
notification_title: Kategória návrhu <a href="%{resource_path}">%{resource_title} </a> bola aktualizovaná administrátorom.
|
182
186
|
proposal_update_scope:
|
183
187
|
email_intro: 'Admin upravil rozsah Vašeho návrhu %{resource_title}, pozrite sa na to na tejto stránke:'
|
184
|
-
email_outro: Toto oznámenie ste dostali, pretože ste autorom návrhu.
|
185
188
|
email_subject: Rozsah návrhu %{resource_title} bol aktualizovaný
|
186
189
|
notification_title: Rozsah návrhu <a href="%{resource_path}">%{resource_title}</a> bol aktualizovaný administrátorom.
|
187
190
|
voting_enabled:
|
@@ -228,7 +231,7 @@ sk:
|
|
228
231
|
title: Návrhy
|
229
232
|
participatory_spaces:
|
230
233
|
highlighted_proposals:
|
231
|
-
see_all: Zobraziť všetky
|
234
|
+
see_all: Zobraziť všetky
|
232
235
|
proposals:
|
233
236
|
actions:
|
234
237
|
answer_proposal: Odpoveď na návrh
|
data/config/locales/sl.yml
CHANGED
@@ -8,15 +8,11 @@ sl:
|
|
8
8
|
admin:
|
9
9
|
filters:
|
10
10
|
proposals:
|
11
|
-
category_id_eq:
|
12
|
-
label: Kategorija
|
13
11
|
is_emendation_true:
|
14
12
|
label: Tip
|
15
13
|
values:
|
16
14
|
'false': Predlogi
|
17
15
|
'true': Amandmaji
|
18
|
-
scope_id_eq:
|
19
|
-
label: Obseg
|
20
16
|
state_eq:
|
21
17
|
values:
|
22
18
|
accepted: Sprejeto
|
data/config/locales/sv.yml
CHANGED
@@ -19,6 +19,7 @@ sv:
|
|
19
19
|
automatic_hashtags: Hashtags läggs till automatiskt
|
20
20
|
body: Innehåll
|
21
21
|
category_id: Kategori
|
22
|
+
decidim_proposals_proposal_state_id: Status
|
22
23
|
decidim_scope_id: Indelning
|
23
24
|
has_address: Har adress
|
24
25
|
scope_id: Indelning
|
@@ -192,7 +193,7 @@ sv:
|
|
192
193
|
resources_permissions_enabled: Behörigheter kan ställas in för varje förslag
|
193
194
|
scope_id: Indelning
|
194
195
|
scopes_enabled: Aktivera indelningar
|
195
|
-
threshold_per_proposal:
|
196
|
+
threshold_per_proposal: Minst antal stöd per förslag
|
196
197
|
vote_limit: Antal röster per deltagare
|
197
198
|
step:
|
198
199
|
amendment_creation_enabled: Skapa ändringar är aktiverat
|
@@ -309,12 +310,12 @@ sv:
|
|
309
310
|
notification_title: Förslaget <a href="%{resource_path}">%{resource_title}</a> har ändrat status till "%{state}".
|
310
311
|
proposal_update_category:
|
311
312
|
email_intro: 'En administratör har uppdaterat kategorin för ditt förslag "%{resource_title}", ta en titt på följande sida:'
|
312
|
-
email_outro: Du har fått det här meddelandet eftersom du
|
313
|
+
email_outro: Du har fått det här meddelandet eftersom du har skrivit förslaget.
|
313
314
|
email_subject: Förslagskategorin %{resource_title} har uppdaterats
|
314
315
|
notification_title: Förslagskategorin <a href="%{resource_path}">%{resource_title}</a> har uppdaterats av en administratör.
|
315
316
|
proposal_update_scope:
|
316
317
|
email_intro: 'En administratör har uppdaterat indelningen för ditt förslag "%{resource_title}", ta en titt på följande sida:'
|
317
|
-
email_outro: Du har fått det här meddelandet eftersom du
|
318
|
+
email_outro: Du har fått det här meddelandet eftersom du har skrivit förslaget.
|
318
319
|
email_subject: Indelningen för förslaget %{resource_title} har uppdaterats
|
319
320
|
notification_title: Indelningen för förslaget <a href="%{resource_path}">%{resource_title}</a> har uppdaterats av en administratör.
|
320
321
|
voting_enabled:
|
@@ -376,7 +377,7 @@ sv:
|
|
376
377
|
title: Röster
|
377
378
|
participatory_spaces:
|
378
379
|
highlighted_proposals:
|
379
|
-
last: Senaste
|
380
|
+
last: Senaste förslagen
|
380
381
|
see_all: Visa alla förslag
|
381
382
|
proposals:
|
382
383
|
actions:
|
data/config/locales/tr-TR.yml
CHANGED
@@ -98,7 +98,7 @@ tr:
|
|
98
98
|
proposal_state_id_eq:
|
99
99
|
label: Durum
|
100
100
|
scope_id_eq:
|
101
|
-
label:
|
101
|
+
label: kapsam
|
102
102
|
state_eq:
|
103
103
|
label: Durum
|
104
104
|
values:
|
@@ -144,7 +144,7 @@ tr:
|
|
144
144
|
proposal_wizard_step_1_help_text: Teklif sihirbazı "Oluştur" adımı yardım metni
|
145
145
|
proposal_wizard_step_2_help_text: Teklif "Yayınlama" sihirbazı yardım metni
|
146
146
|
resources_permissions_enabled: Her teklif için işlem izinleri ayarlanabilir
|
147
|
-
scope_id:
|
147
|
+
scope_id: kapsam
|
148
148
|
scopes_enabled: Kapsamlar etkinleştirildi
|
149
149
|
threshold_per_proposal: Teklif başına eşik
|
150
150
|
step:
|
@@ -227,12 +227,10 @@ tr:
|
|
227
227
|
notification_title: Takip ettiğiniz bir teklifin durumu (%{state}) olarak değiştirimiştir.
|
228
228
|
proposal_update_category:
|
229
229
|
email_intro: 'Bir yönetici "%{resource_title}" teklifinizin kategorisini güncelledi, bu sayfada kontrol edin:'
|
230
|
-
email_outro: Bu bildirimi, teklifin yazarı olduğunuz için aldınız.
|
231
230
|
email_subject: '%{resource_title} teklif kategorisi güncellendi'
|
232
231
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> teklif kategorisi bir yönetici tarafından güncellendi.
|
233
232
|
proposal_update_scope:
|
234
233
|
email_intro: 'Bir yönetici, "%{resource_title}" teklifinizin kapsamını güncelledi, bu sayfada göz atın:'
|
235
|
-
email_outro: Bu bildirimi, teklifin yazarı olduğunuz için aldınız.
|
236
234
|
email_subject: '%{resource_title} teklif kapsamı güncellendi'
|
237
235
|
notification_title: <a href="%{resource_path}">%{resource_title} </a> teklif kapsamı bir yönetici tarafından güncellendi.
|
238
236
|
voting_enabled:
|
@@ -279,7 +277,7 @@ tr:
|
|
279
277
|
title: Teklifler
|
280
278
|
participatory_spaces:
|
281
279
|
highlighted_proposals:
|
282
|
-
see_all: Tüm teklifleri görün
|
280
|
+
see_all: Tüm teklifleri görün
|
283
281
|
proposals:
|
284
282
|
actions:
|
285
283
|
answer_proposal: Cevap önerisi
|
@@ -490,7 +488,7 @@ tr:
|
|
490
488
|
open: Aç
|
491
489
|
published: Yayınlandı
|
492
490
|
related_to: İle ilgili
|
493
|
-
scope:
|
491
|
+
scope: kapsam
|
494
492
|
search: Arama
|
495
493
|
state: Statü
|
496
494
|
withdrawn: Geri çekildi
|
@@ -563,7 +561,7 @@ tr:
|
|
563
561
|
official_proposal: Resmi teklif
|
564
562
|
published_answer: Yayınlanan cevap
|
565
563
|
published_at: Yayınlandı
|
566
|
-
scope:
|
564
|
+
scope: kapsam
|
567
565
|
state: Durum
|
568
566
|
title: Başlık
|
569
567
|
valuator: Bilirkişi
|
data/config/locales/uk.yml
CHANGED
@@ -52,7 +52,7 @@ uk:
|
|
52
52
|
components:
|
53
53
|
proposals:
|
54
54
|
actions:
|
55
|
-
create:
|
55
|
+
create: Внести
|
56
56
|
endorse: Підтримати
|
57
57
|
vote: Голосувати
|
58
58
|
withdraw: Відкликати голос
|
@@ -102,11 +102,8 @@ uk:
|
|
102
102
|
email_outro: Ви отримали це сповіщення, тому що ви стежите за "%{participatory_space_title}". Ви можете припинити стежити за ним, перейшовши за наведеним вище посиланням.
|
103
103
|
proposal_update_category:
|
104
104
|
email_intro: 'Адміністратор оновив категорію вашої пропозиції "%{resource_title}", перевірте її:'
|
105
|
-
email_outro: Ви отримали це сповіщення, оскільки ви є автором цієї пропозиції.
|
106
105
|
email_subject: Категорію пропозиції %{resource_title} було оновлено
|
107
106
|
notification_title: Адміністратор оновив категорію пропозиції <a href="%{resource_path}">%{resource_title}</a>.
|
108
|
-
proposal_update_scope:
|
109
|
-
email_outro: Ви отримали це сповіщення, оскільки ви є автором цієї пропозиції.
|
110
107
|
voting_enabled:
|
111
108
|
email_intro: 'Ви можете голосувати щодо пропозицій у %{participatory_space_title}! Почніть брати участь зі сторінки:'
|
112
109
|
email_outro: Ви отримали це сповіщення, тому що ви стежите за %{participatory_space_title}. Ви можете відписатися від цих сповіщень, перейшовши за наведеним вище посиланням.
|
@@ -136,7 +133,6 @@ uk:
|
|
136
133
|
title: Приватні примітки
|
137
134
|
proposals:
|
138
135
|
form:
|
139
|
-
attachment_legend: "(Необов'язково) Додати вкладений файл"
|
140
136
|
select_a_category: Оберіть категорію
|
141
137
|
index:
|
142
138
|
actions: Дії
|
@@ -180,13 +176,11 @@ uk:
|
|
180
176
|
models:
|
181
177
|
proposal:
|
182
178
|
fields:
|
183
|
-
category: Категорія
|
184
179
|
comments: Коментарі
|
185
180
|
id: Псевдонім
|
186
181
|
notes: Примітки
|
187
182
|
official_proposal: Службова пропозиція
|
188
183
|
published_at: 'Оприлюднено:'
|
189
|
-
scope: Обсяг
|
190
184
|
state: Стан
|
191
185
|
title: Назва
|
192
186
|
votes: Голоси
|
@@ -230,7 +224,6 @@ uk:
|
|
230
224
|
title: Оприлюднити свою пропозицію
|
231
225
|
show:
|
232
226
|
answer: Відповісти
|
233
|
-
edit_proposal: Редагувати пропозицію
|
234
227
|
proposal_accepted_reason: 'Ця пропозиція була прийнята, тому що:'
|
235
228
|
proposal_in_evaluation_reason: Ця пропозиція розглядається
|
236
229
|
proposal_rejected_reason: 'Ця пропозиція була відхилена, оскільки:'
|
data/config/locales/zh-CN.yml
CHANGED
@@ -190,12 +190,10 @@ zh-CN:
|
|
190
190
|
email_subject: 新提议 "%{resource_title}" 已添加到 %{participatory_space_title}
|
191
191
|
proposal_update_category:
|
192
192
|
email_intro: '管理员更新了您的提议 "%{resource_title}"的类别,在此页面查看:'
|
193
|
-
email_outro: 您收到此通知是因为您是提案的作者。
|
194
193
|
email_subject: '%{resource_title} 建议类别已更新'
|
195
194
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> 提议类别已被管理员更新。
|
196
195
|
proposal_update_scope:
|
197
196
|
email_intro: '管理员更新了您的提议 "%{resource_title}"的范围,在此页面查看:'
|
198
|
-
email_outro: 您收到此通知是因为您是提案的作者。
|
199
197
|
email_subject: '%{resource_title} 建议范围已更新'
|
200
198
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> 提议范围已被管理员更新。
|
201
199
|
voting_enabled:
|
@@ -242,7 +240,7 @@ zh-CN:
|
|
242
240
|
title: 建议
|
243
241
|
participatory_spaces:
|
244
242
|
highlighted_proposals:
|
245
|
-
see_all: 查看所有建议
|
243
|
+
see_all: 查看所有建议
|
246
244
|
proposals:
|
247
245
|
actions:
|
248
246
|
answer_proposal: 答复建议
|
data/config/locales/zh-TW.yml
CHANGED
@@ -87,7 +87,7 @@ zh-TW:
|
|
87
87
|
filters:
|
88
88
|
proposals:
|
89
89
|
category_id_eq:
|
90
|
-
label:
|
90
|
+
label: 類別
|
91
91
|
is_emendation_true:
|
92
92
|
label: 類別
|
93
93
|
values:
|
@@ -254,12 +254,10 @@ zh-TW:
|
|
254
254
|
notification_title_official: 官方提案 <a href="%{resource_path}">%{resource_title}</a> 已經被添加到 %{participatory_space_title}.
|
255
255
|
proposal_update_category:
|
256
256
|
email_intro: '管理員已更新您的提案 "%{resource_title}" 的分類,請前往此頁面查看:'
|
257
|
-
email_outro: 您收到此通知是因為您是該提案的作者。
|
258
257
|
email_subject: '「%{resource_title}」提案的分類已更新'
|
259
258
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> 提案類別已由管理員更新。
|
260
259
|
proposal_update_scope:
|
261
260
|
email_intro: '一位管理員已更新您的提案"%{resource_title}" 的範圍,您可以在此頁面檢查:'
|
262
|
-
email_outro: 您收到此通知是因為您是該提案的作者。
|
263
261
|
email_subject: '%{resource_title} 提案範圍已更新'
|
264
262
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> 提案範圍已由管理員更新。
|
265
263
|
voting_enabled:
|
@@ -307,7 +305,7 @@ zh-TW:
|
|
307
305
|
title: 提案
|
308
306
|
participatory_spaces:
|
309
307
|
highlighted_proposals:
|
310
|
-
see_all: 檢視所有提案
|
308
|
+
see_all: 檢視所有提案
|
311
309
|
proposals:
|
312
310
|
actions:
|
313
311
|
answer_proposal: 回覆提案
|
@@ -627,7 +625,7 @@ zh-TW:
|
|
627
625
|
models:
|
628
626
|
proposal:
|
629
627
|
fields:
|
630
|
-
category:
|
628
|
+
category: 類別
|
631
629
|
comments: 評論
|
632
630
|
id: ID
|
633
631
|
notes: 備註
|
@@ -18,12 +18,13 @@ class CreateDefaultProposalStates < ActiveRecord::Migration[6.1]
|
|
18
18
|
Decidim::Proposals::ProposalState.reset_column_information
|
19
19
|
Decidim::Component.where(manifest_name: "proposals").find_each do |component|
|
20
20
|
admin_user = component.organization.admins.first
|
21
|
-
Decidim::Proposals.create_default_states!(component, admin_user)
|
21
|
+
default_states = Decidim::Proposals.create_default_states!(component, admin_user)
|
22
22
|
|
23
23
|
CustomProposal.where(decidim_component_id: component.id).find_each do |proposal|
|
24
24
|
next if proposal.old_state == "not_answered"
|
25
25
|
|
26
|
-
|
26
|
+
token = default_states[proposal.old_state.to_sym][:object]&.token
|
27
|
+
proposal.update!(proposal_state: Decidim::Proposals::ProposalState.where(component:, token:).first!)
|
27
28
|
end
|
28
29
|
end
|
29
30
|
end
|
data/decidim-proposals.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.version = Decidim::Proposals.version
|
11
11
|
s.authors = ["Josep Jaume Rey Peroy", "Marc Riera Casals", "Oriol Gual Oliva"]
|
12
12
|
s.email = ["josepjaume@gmail.com", "mrc2407@gmail.com", "oriolgual@gmail.com"]
|
13
|
-
s.license = "AGPL-3.0"
|
13
|
+
s.license = "AGPL-3.0-or-later"
|
14
14
|
s.homepage = "https://decidim.org"
|
15
15
|
s.metadata = {
|
16
16
|
"bug_tracker_uri" => "https://github.com/decidim/decidim/issues",
|
@@ -55,6 +55,19 @@ module Decidim
|
|
55
55
|
current_component = object.component
|
56
56
|
object.proposal_votes_count unless current_component.current_settings.votes_hidden?
|
57
57
|
end
|
58
|
+
|
59
|
+
def self.authorized?(object, context)
|
60
|
+
context[:proposal] = object
|
61
|
+
|
62
|
+
chain = [
|
63
|
+
allowed_to?(:read, :proposal, object, context),
|
64
|
+
object.published?
|
65
|
+
].all?
|
66
|
+
|
67
|
+
super && chain
|
68
|
+
rescue Decidim::PermissionAction::PermissionNotSetError
|
69
|
+
false
|
70
|
+
end
|
58
71
|
end
|
59
72
|
end
|
60
73
|
end
|
@@ -16,9 +16,7 @@ module Decidim
|
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
|
-
class ProposalsType < Decidim::
|
20
|
-
implements Decidim::Core::ComponentInterface
|
21
|
-
|
19
|
+
class ProposalsType < Decidim::Core::ComponentType
|
22
20
|
graphql_name "Proposals"
|
23
21
|
description "A proposals component of a participatory space."
|
24
22
|
|
@@ -44,7 +44,8 @@ module Decidim
|
|
44
44
|
reference: proposal.reference,
|
45
45
|
answer: ensure_translatable(proposal.answer),
|
46
46
|
answered_at: proposal.answered_at,
|
47
|
-
votes: proposal.proposal_votes_count
|
47
|
+
votes: (proposal.proposal_votes_count unless
|
48
|
+
proposal.component.current_settings.votes_hidden?),
|
48
49
|
endorsements: {
|
49
50
|
total_count: proposal.endorsements.size,
|
50
51
|
user_endorsements:
|
@@ -132,7 +133,7 @@ module Decidim
|
|
132
133
|
|
133
134
|
def author_url(author)
|
134
135
|
if author.respond_to?(:nickname)
|
135
|
-
profile_url(author
|
136
|
+
profile_url(author) # is a Decidim::User or Decidim::UserGroup
|
136
137
|
elsif author.respond_to?(:title)
|
137
138
|
meeting_url(author) # is a Decidim::Meetings::Meeting
|
138
139
|
else
|
@@ -140,8 +141,10 @@ module Decidim
|
|
140
141
|
end
|
141
142
|
end
|
142
143
|
|
143
|
-
def profile_url(
|
144
|
-
|
144
|
+
def profile_url(author)
|
145
|
+
return "" if author.respond_to?(:deleted?) && author.deleted?
|
146
|
+
|
147
|
+
Decidim::Core::Engine.routes.url_helpers.profile_url(author.nickname, host:)
|
145
148
|
end
|
146
149
|
|
147
150
|
def meeting_url(meeting)
|
@@ -356,7 +356,7 @@ FactoryBot.define do
|
|
356
356
|
trait :participant_author do
|
357
357
|
after :build do |proposal, evaluator|
|
358
358
|
proposal.coauthorships.clear
|
359
|
-
user = build(:user, organization: proposal.component.participatory_space.organization, skip_injection: evaluator.skip_injection)
|
359
|
+
user = build(:user, :confirmed, organization: proposal.component.participatory_space.organization, skip_injection: evaluator.skip_injection)
|
360
360
|
proposal.coauthorships.build(author: user)
|
361
361
|
end
|
362
362
|
end
|
@@ -380,8 +380,8 @@ FactoryBot.define do
|
|
380
380
|
trait :official_meeting do
|
381
381
|
after :build do |proposal, evaluator|
|
382
382
|
proposal.coauthorships.clear
|
383
|
-
component = build(:meeting_component, participatory_space: proposal.component.participatory_space, skip_injection: evaluator.skip_injection)
|
384
|
-
proposal.coauthorships.build(author: build(:meeting, component:, skip_injection: evaluator.skip_injection))
|
383
|
+
component = build(:meeting_component, :published, participatory_space: proposal.component.participatory_space, skip_injection: evaluator.skip_injection)
|
384
|
+
proposal.coauthorships.build(author: build(:meeting, :published, component:, skip_injection: evaluator.skip_injection))
|
385
385
|
end
|
386
386
|
end
|
387
387
|
|
@@ -444,7 +444,8 @@ FactoryBot.define do
|
|
444
444
|
trait :with_endorsements do
|
445
445
|
after :create do |proposal, evaluator|
|
446
446
|
5.times.collect do
|
447
|
-
create(:endorsement, resource: proposal,
|
447
|
+
create(:endorsement, resource: proposal,
|
448
|
+
author: build(:user, :confirmed, organization: proposal.participatory_space.organization, skip_injection: evaluator.skip_injection),
|
448
449
|
skip_injection: evaluator.skip_injection)
|
449
450
|
end
|
450
451
|
end
|
@@ -489,7 +490,7 @@ FactoryBot.define do
|
|
489
490
|
end
|
490
491
|
amendable { build(:proposal, skip_injection:) }
|
491
492
|
emendation { build(:proposal, component: amendable.component, skip_injection:) }
|
492
|
-
amender { build(:user, organization: amendable.component.participatory_space.organization, skip_injection:) }
|
493
|
+
amender { build(:user, :confirmed, organization: amendable.component.participatory_space.organization, skip_injection:) }
|
493
494
|
state { Decidim::Amendment::STATES.keys.sample }
|
494
495
|
end
|
495
496
|
|