decidim-proposals 0.24.0.rc2 → 0.24.0
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/proposal_m_cell.rb +3 -3
- data/app/commands/decidim/proposals/update_proposal.rb +0 -2
- data/app/controllers/decidim/proposals/proposals_controller.rb +7 -5
- data/app/helpers/decidim/proposals/map_helper.rb +10 -4
- data/app/services/decidim/proposals/proposal_builder.rb +4 -2
- data/app/views/decidim/proposals/proposals/_edit_form_fields.html.erb +4 -4
- data/app/views/decidim/proposals/proposals/edit.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/index.html.erb +1 -1
- data/config/locales/gl.yml +85 -0
- data/config/locales/pl.yml +1 -0
- data/config/locales/ro-RO.yml +65 -0
- data/db/migrate/20210310102839_add_followable_counter_cache_to_proposals.rb +16 -0
- data/db/migrate/20210310120812_add_followable_counter_cache_to_collaborative_drafts.rb +16 -0
- data/db/migrate/20210318082934_fix_counters_for_copied_proposals.rb +18 -0
- data/lib/decidim/proposals/version.rb +1 -1
- metadata +23 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bc19261b23f64f8508319ad79afa60c5268b6071d397a024750ffffa9d708676
|
4
|
+
data.tar.gz: e9014329c51b1a0d4611f161dc84e2849c14e02646d92d50aa2e340e08c87c1d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 866c986caaf10b21ba47b4a7e6a5f63cdaae8aa48277b99d4cbceb3e34a7fdb5b2824ad7a7c66122f32c86fa2d4b439fdf82083beba025b119ec572c94207cb8
|
7
|
+
data.tar.gz: be429c52ecfd6db0ac027291d53d5e8446fd325acaabee3515a4724020bc80a9b5a379e8e918c2b1ad4cd73475812e2388b52a45a80739d82eef3cfa6a4b23a1
|
@@ -132,14 +132,14 @@ module Decidim
|
|
132
132
|
hash << model.cache_key_with_version
|
133
133
|
hash << model.proposal_votes_count
|
134
134
|
hash << model.endorsements_count
|
135
|
-
hash << Digest::MD5.hexdigest(model.component.
|
135
|
+
hash << Digest::MD5.hexdigest(model.component.cache_key_with_version)
|
136
136
|
hash << Digest::MD5.hexdigest(resource_image_path) if resource_image_path
|
137
137
|
if current_user
|
138
138
|
hash << current_user.cache_key_with_version
|
139
139
|
hash << current_user.follows?(model) ? 1 : 0
|
140
140
|
end
|
141
|
-
hash <<
|
142
|
-
hash << Digest::MD5.hexdigest(model.
|
141
|
+
hash << model.follows_count
|
142
|
+
hash << Digest::MD5.hexdigest(model.authors.map(&:cache_key_with_version).to_s)
|
143
143
|
|
144
144
|
hash.join("/")
|
145
145
|
end
|
@@ -35,11 +35,13 @@ module Decidim
|
|
35
35
|
.order(position: :asc)
|
36
36
|
render "decidim/proposals/proposals/participatory_texts/participatory_text"
|
37
37
|
else
|
38
|
-
@
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
38
|
+
@base_query = search
|
39
|
+
.results
|
40
|
+
.published
|
41
|
+
.not_hidden
|
42
|
+
|
43
|
+
@proposals = @base_query.includes(:component, :coauthorships)
|
44
|
+
@all_geocoded_proposals = @base_query.geocoded
|
43
45
|
|
44
46
|
@voted_proposals = if current_user
|
45
47
|
ProposalVote.where(
|
@@ -15,10 +15,14 @@ module Decidim
|
|
15
15
|
end
|
16
16
|
|
17
17
|
def proposal_data_for_map(proposal)
|
18
|
-
proposal
|
19
|
-
|
20
|
-
|
21
|
-
|
18
|
+
proposal
|
19
|
+
.slice(:latitude, :longitude, :address)
|
20
|
+
.merge(
|
21
|
+
title: decidim_html_escape(present(proposal).title),
|
22
|
+
body: html_truncate(decidim_sanitize(present(proposal).body), length: 100),
|
23
|
+
icon: icon("proposals", width: 40, height: 70, remove_icon_class: true),
|
24
|
+
link: proposal_path(proposal)
|
25
|
+
)
|
22
26
|
end
|
23
27
|
|
24
28
|
def proposal_preview_data_for_map(proposal)
|
@@ -35,6 +39,8 @@ module Decidim
|
|
35
39
|
end
|
36
40
|
|
37
41
|
def has_position?(proposal)
|
42
|
+
return if proposal.address.blank?
|
43
|
+
|
38
44
|
proposal.latitude.present? && proposal.longitude.present?
|
39
45
|
end
|
40
46
|
end
|
@@ -68,9 +68,11 @@ module Decidim
|
|
68
68
|
"answered_at",
|
69
69
|
"decidim_component_id",
|
70
70
|
"reference",
|
71
|
-
"
|
71
|
+
"comments_count",
|
72
72
|
"endorsements_count",
|
73
|
-
"
|
73
|
+
"follows_count",
|
74
|
+
"proposal_notes_count",
|
75
|
+
"proposal_votes_count"
|
74
76
|
).merge(
|
75
77
|
"category" => original_proposal.category
|
76
78
|
).merge(
|
@@ -61,12 +61,12 @@
|
|
61
61
|
<% end %>
|
62
62
|
|
63
63
|
<% if component_settings.attachments_allowed? && @proposal %>
|
64
|
-
<fieldset>
|
64
|
+
<fieldset class="gallery__container">
|
65
65
|
<legend><%= t("gallery_legend", scope: "decidim.proposals.proposals.edit") %></legend>
|
66
66
|
|
67
67
|
<% if @form.photos.any? %>
|
68
68
|
<% @form.photos.each do |photo| %>
|
69
|
-
<div class="callout gallery__item" data-closable>
|
69
|
+
<div class="callout gallery__item" id="attachment_<%= photo.id %>" data-closable>
|
70
70
|
<%= image_tag photo.thumbnail_url, class: "thumbnail", alt: photo.file.file.filename %>
|
71
71
|
<%= form.hidden_field :photos, multiple: true, value: photo.id, id: "photo-#{photo.id}" %>
|
72
72
|
<button class="close-button"
|
@@ -85,12 +85,12 @@
|
|
85
85
|
</div>
|
86
86
|
</fieldset>
|
87
87
|
|
88
|
-
<fieldset>
|
88
|
+
<fieldset class="gallery__container">
|
89
89
|
<legend><%= t("attachment_legend", scope: "decidim.proposals.proposals.edit") %></legend>
|
90
90
|
|
91
91
|
<% if @form.documents.any? %>
|
92
92
|
<% @form.documents.each do |document| %>
|
93
|
-
<div class="callout" data-closable>
|
93
|
+
<div class="callout" id="attachment_<%= document.id %>" data-closable>
|
94
94
|
<%= link_to translated_attribute(document.title), document.url %>
|
95
95
|
<small><%= document.file_type %> <%= number_to_human_size(document.file_size) %></small>
|
96
96
|
<%= form.hidden_field :documents, multiple: true, value: document.id, id: "document-#{document.id}" %>
|
@@ -13,7 +13,7 @@
|
|
13
13
|
<div class="row">
|
14
14
|
<div class="columns large-6 medium-centered">
|
15
15
|
<div class="card">
|
16
|
-
<%= cell("decidim/announcement", component_settings.new_proposal_help_text) %>
|
16
|
+
<%= cell("decidim/announcement", translated_attribute(component_settings.new_proposal_help_text)) %>
|
17
17
|
|
18
18
|
<div class="card__content">
|
19
19
|
<%= decidim_form_for(@form) do |form| %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%= render partial: "decidim/shared/component_announcement" %>
|
2
2
|
|
3
3
|
<% if component_settings.geocoding_enabled? %>
|
4
|
-
<%= dynamic_map_for proposals_data_for_map(@
|
4
|
+
<%= dynamic_map_for proposals_data_for_map(@all_geocoded_proposals) do %>
|
5
5
|
<template id="marker-popup">
|
6
6
|
<div class="map-info__content">
|
7
7
|
<h3>${title}</h3>
|
data/config/locales/gl.yml
CHANGED
@@ -7,6 +7,7 @@ gl:
|
|
7
7
|
category_id: Categoría
|
8
8
|
decidim_scope_id: Alcance
|
9
9
|
has_address: Ten enderezo
|
10
|
+
scope_id: Ámbito
|
10
11
|
state: Estado
|
11
12
|
title: Título
|
12
13
|
user_group_id: Crear un borrador colaborativo como
|
@@ -17,19 +18,27 @@ gl:
|
|
17
18
|
automatic_hashtags: Engadíronse automaticamente os hexágonos
|
18
19
|
body: Corpo
|
19
20
|
category_id: Categoría
|
21
|
+
decidim_scope_id: Ámbito
|
20
22
|
has_address: Ten enderezo
|
23
|
+
scope_id: Ámbito
|
21
24
|
state: Estado
|
22
25
|
suggested_hashtags: Hashtags suxeridos
|
23
26
|
title: Título
|
24
27
|
user_group_id: Crear proposta como
|
25
28
|
proposal_answer:
|
26
29
|
answer: Resposta
|
30
|
+
cost: Custo
|
31
|
+
cost_report: Informe de custos
|
32
|
+
execution_period: Período de execución
|
27
33
|
proposals_copy:
|
28
34
|
copy_proposals: Comprendo que isto importará todas as propostas do compoñente seleccionado ao actual e que esta acción non se pode revertir.
|
29
35
|
origin_component_id: Componente para copiar as propostas de
|
30
36
|
proposals_import:
|
31
37
|
import_proposals: Propostas de importación
|
32
38
|
keep_authors: Mantén os autores orixinais
|
39
|
+
valuation_assignment:
|
40
|
+
admin_log:
|
41
|
+
valuator_role_id: Nome do avaliador/a
|
33
42
|
errors:
|
34
43
|
models:
|
35
44
|
participatory_text:
|
@@ -41,12 +50,14 @@ gl:
|
|
41
50
|
attachment:
|
42
51
|
needs_to_be_reattached: Necesita ser reenxerado
|
43
52
|
body:
|
53
|
+
cant_be_equal_to_template: non pode ser igual ao modelo
|
44
54
|
identical: E o título non pode ser idéntico
|
45
55
|
title:
|
46
56
|
identical: E o corpo non pode ser idéntico
|
47
57
|
models:
|
48
58
|
decidim/proposals/accepted_proposal_event: A proposta foi aceptada
|
49
59
|
decidim/proposals/admin/update_proposal_category_event: Modificouse a categoría de proposta
|
60
|
+
decidim/proposals/admin/update_proposal_scope_event: Mudouse o ámbito da proposta
|
50
61
|
decidim/proposals/creation_enabled_event: Creación de proposta habilitada
|
51
62
|
decidim/proposals/endorsing_enabled_event: Aprobación da proposta habilitada
|
52
63
|
decidim/proposals/evaluating_proposal_event: A proposta está a ser avaliada
|
@@ -69,6 +80,30 @@ gl:
|
|
69
80
|
one: Vota
|
70
81
|
other: Votos
|
71
82
|
decidim:
|
83
|
+
admin:
|
84
|
+
filters:
|
85
|
+
proposals:
|
86
|
+
category_id_eq:
|
87
|
+
label: Categoría
|
88
|
+
is_emendation_true:
|
89
|
+
label: Tipo
|
90
|
+
values:
|
91
|
+
'false': Propostas
|
92
|
+
scope_id_eq:
|
93
|
+
label: Ámbito
|
94
|
+
state_eq:
|
95
|
+
label: Estado
|
96
|
+
values:
|
97
|
+
accepted: Aceptada
|
98
|
+
evaluating: En avaliación
|
99
|
+
published: Publicadas
|
100
|
+
rejected: Rexeitada
|
101
|
+
validating: Validación técnica
|
102
|
+
withdrawn: Retiradas
|
103
|
+
state_null:
|
104
|
+
label: Estado
|
105
|
+
search_placeholder:
|
106
|
+
id_string_or_title_cont: Procurar %{collection} por ID ou título.
|
72
107
|
components:
|
73
108
|
proposals:
|
74
109
|
actions:
|
@@ -99,6 +134,8 @@ gl:
|
|
99
134
|
proposal_wizard_step_3_help_text: Asistente de propostas Texto de axuda de paso "Completo"
|
100
135
|
proposal_wizard_step_4_help_text: Asistente de propostas "Publica" o texto de axuda paso a paso
|
101
136
|
resources_permissions_enabled: Os permisos de acción pódense establecer para cada proposta
|
137
|
+
scope_id: Ámbito
|
138
|
+
scopes_enabled: Ámbitos habilitados
|
102
139
|
threshold_per_proposal: Umbral por proposta
|
103
140
|
vote_limit: Límite de voto por usuario
|
104
141
|
step:
|
@@ -271,15 +308,18 @@ gl:
|
|
271
308
|
see_all: Ver todos (%{count})
|
272
309
|
proposals:
|
273
310
|
actions:
|
311
|
+
answer_proposal: Responder á proposta
|
274
312
|
edit_proposal: Editar proposta
|
275
313
|
import: Importar dende outro compoñente
|
276
314
|
new: Nova proposta
|
277
315
|
participatory_texts: Textos participativos
|
316
|
+
show: Amosar proposta
|
278
317
|
title: Accións
|
279
318
|
admin:
|
280
319
|
actions:
|
281
320
|
preview: Vista previa
|
282
321
|
exports:
|
322
|
+
proposal_comments: Comentarios
|
283
323
|
proposals: Propostas
|
284
324
|
models:
|
285
325
|
proposal:
|
@@ -366,14 +406,28 @@ gl:
|
|
366
406
|
show:
|
367
407
|
authors: Autores
|
368
408
|
body: Corpo
|
409
|
+
comments_neutral_count: Neutral
|
410
|
+
comments_positive_count: A favor
|
369
411
|
created_at: Data de creación
|
412
|
+
documents: Documentos
|
413
|
+
link: Ligazón
|
414
|
+
n_more_endorsers:
|
415
|
+
one: e 1 máis
|
416
|
+
other: e %{count} máis
|
417
|
+
photos: Fotos
|
370
418
|
proposals: Propostas
|
419
|
+
ranking: "%{ranking} de %{total}"
|
420
|
+
related_meetings: Xuntanzas relacionadas
|
421
|
+
remove_assignment_confirmation: Estás seguro de que desexas eliminar este avaliador/a da proposta?
|
422
|
+
valuators: Avaliadores/as
|
371
423
|
votes_count: Reconto de votos
|
424
|
+
votes_ranking: Clasificación por apoios
|
372
425
|
update_category:
|
373
426
|
select_a_category: Selecciona unha categoría
|
374
427
|
select_a_proposal: Selecciona unha proposta
|
375
428
|
update_scope:
|
376
429
|
select_a_proposal: Selecciona unha proposta
|
430
|
+
select_a_scope: Por favor, escolle un ámbito
|
377
431
|
proposals_imports:
|
378
432
|
create:
|
379
433
|
invalid: Produciuse un problema na importación das propostas
|
@@ -383,6 +437,7 @@ gl:
|
|
383
437
|
no_components: Non existen outros compoñentes de proposta neste espazo participativo para importar as propostas.
|
384
438
|
select_component: Selecciona un compoñente
|
385
439
|
select_states: Comprobe os estados das propostas para importar
|
440
|
+
title: Importar propostas
|
386
441
|
proposals_merges:
|
387
442
|
create:
|
388
443
|
invalid: Produciuse un erro ao fusionar as propostas seleccionadas.
|
@@ -391,6 +446,9 @@ gl:
|
|
391
446
|
create:
|
392
447
|
invalid: Produciuse un erro dividindo as propostas seleccionadas.
|
393
448
|
success: Reaccionou con éxito as propostas en novas.
|
449
|
+
valuation_assignments:
|
450
|
+
create:
|
451
|
+
invalid: Produciuse un erro ao asignar propostas a un avaliador/a
|
394
452
|
admin_log:
|
395
453
|
proposal:
|
396
454
|
answer: "%{user_name} respondeu á proposta %{resource_name} no espazo %{space_name}"
|
@@ -523,6 +581,9 @@ gl:
|
|
523
581
|
info: Está creando un <strong>proxecto de colaboración</strong>.
|
524
582
|
wizard_header:
|
525
583
|
title: Crea o teu borrador colaborativo
|
584
|
+
content_blocks:
|
585
|
+
highlighted_proposals:
|
586
|
+
proposals: Propostas
|
526
587
|
create:
|
527
588
|
error: Produciuse un erro ao gardar a proposta.
|
528
589
|
success: Proposta creada con éxito. Gardado como borrador.
|
@@ -531,6 +592,7 @@ gl:
|
|
531
592
|
success: O borrador da proposta eliminouse con éxito.
|
532
593
|
last_activity:
|
533
594
|
new_proposal_at_html: "<span>Nova proposta en %{link}</span>"
|
595
|
+
proposal_updated_at_html: "<span>Proposta actualizada en %{link}</span>"
|
534
596
|
models:
|
535
597
|
collaborative_draft:
|
536
598
|
fields:
|
@@ -544,10 +606,13 @@ gl:
|
|
544
606
|
id: ID
|
545
607
|
notes: Notas
|
546
608
|
official_proposal: Proposta oficial
|
609
|
+
published_answer: Resposta publicada
|
547
610
|
published_at: Publicado en
|
548
611
|
scope: Alcance
|
549
612
|
state: Estado
|
550
613
|
title: Título
|
614
|
+
valuator: Avaliador/a
|
615
|
+
valuators: Avaliadores/as
|
551
616
|
votes: Votos
|
552
617
|
new:
|
553
618
|
limit_reached: Non podes crear novas propostas xa que superaches o límite.
|
@@ -572,9 +637,16 @@ gl:
|
|
572
637
|
proposals_count:
|
573
638
|
one: "%{count} proposta"
|
574
639
|
other: "%{count} propostas"
|
640
|
+
dynamic_map_instructions:
|
641
|
+
instructions: <h3>Podes mover o punto no mapa. </h3><p>Non esquezas premer no botón "Actualizar posición" antes de publicar a túa proposta.</p>
|
575
642
|
edit:
|
643
|
+
add_documents: Documentos
|
644
|
+
add_images: Ficheiro
|
576
645
|
attachment_legend: "(Opcional) Engada un anexo"
|
577
646
|
back: De volta
|
647
|
+
delete_document: Eliminar documento
|
648
|
+
delete_image: Eliminar imaxe
|
649
|
+
gallery_legend: "(Opcional) Engadir unha imaxe ao cartón de proposta"
|
578
650
|
select_a_category: Selecciona unha categoría
|
579
651
|
send: Enviar
|
580
652
|
title: Editar proposta
|
@@ -584,8 +656,11 @@ gl:
|
|
584
656
|
send: Vista previa
|
585
657
|
title: Editar borrador de proposta
|
586
658
|
filters:
|
659
|
+
activity: A miña actividade
|
660
|
+
all: Todas
|
587
661
|
amendment_type: Tipo
|
588
662
|
category: Categoría
|
663
|
+
my_proposals: As miñas propostas
|
589
664
|
origin: Orixe
|
590
665
|
related_to: Relacionado con
|
591
666
|
scope: Alcance
|
@@ -612,14 +687,20 @@ gl:
|
|
612
687
|
title: Crea a túa proposta
|
613
688
|
orders:
|
614
689
|
label: 'Solicitar propostas por:'
|
690
|
+
most_commented: Máis comentadas
|
691
|
+
most_endorsed: Con máis adhesións
|
692
|
+
most_followed: Con máis seguidores
|
615
693
|
most_voted: A maioría votada
|
616
694
|
random: Aleatorio
|
617
695
|
recent: Recentes
|
696
|
+
with_more_authors: Con máis autores
|
618
697
|
participatory_texts:
|
619
698
|
index:
|
620
699
|
document_index: Índice do documento
|
621
700
|
view_index:
|
622
701
|
see_index: Ver índice
|
702
|
+
placeholder:
|
703
|
+
address: 37 Homewood Drive Brownsburg, IN 46112
|
623
704
|
preview:
|
624
705
|
announcement_body: A túa proposta gardouse coma borrador. É preciso que sexa publicada para aparecer no sitio.
|
625
706
|
announcement_title: A túa proposta aínda non foi publicada
|
@@ -629,12 +710,16 @@ gl:
|
|
629
710
|
other: Poderás editar esta proposta durante o primeiro %{count} minutos despois da publicación da proposta. Unha vez que pase esta xanela de tempo, non poderás editar a proposta.
|
630
711
|
publish: Publicar
|
631
712
|
title: Publica a túa proposta
|
713
|
+
update_position: Actualizar posición
|
632
714
|
proposal:
|
633
715
|
creation_date: 'Creación: %{date}'
|
634
716
|
view_proposal: Ver proposta
|
717
|
+
proposals:
|
718
|
+
empty: Aínda non hai ningunha proposta
|
635
719
|
show:
|
636
720
|
answer: Resposta
|
637
721
|
back_to: Voltar
|
722
|
+
back_to_list: Volver á listaxe
|
638
723
|
comments: Comentarios
|
639
724
|
edit_proposal: Editar proposta
|
640
725
|
endorsements_list: Lista de avales
|
data/config/locales/pl.yml
CHANGED
@@ -679,6 +679,7 @@ pl:
|
|
679
679
|
success: Szkic propozycji został usunięty.
|
680
680
|
last_activity:
|
681
681
|
new_proposal_at_html: "<span>Nowa propozycja pod %{link}</span>"
|
682
|
+
proposal_updated_at_html: "<span>Wniosek zaktualizowany o %{link}</span>"
|
682
683
|
models:
|
683
684
|
collaborative_draft:
|
684
685
|
fields:
|
data/config/locales/ro-RO.yml
CHANGED
@@ -27,6 +27,9 @@ ro:
|
|
27
27
|
user_group_id: Creați propunerea ca
|
28
28
|
proposal_answer:
|
29
29
|
answer: Răspuns
|
30
|
+
cost: Cost
|
31
|
+
cost_report: Raport de cost
|
32
|
+
execution_period: Perioada de execuție
|
30
33
|
proposals_copy:
|
31
34
|
copy_proposals: Înţeleg că aceasta va importa toate propunerile din componenta selectată în cea curentă şi că această acţiune nu poate fi inversată.
|
32
35
|
origin_component_id: Componentă pentru a copia propunerile de la
|
@@ -84,9 +87,28 @@ ro:
|
|
84
87
|
admin:
|
85
88
|
filters:
|
86
89
|
proposals:
|
90
|
+
category_id_eq:
|
91
|
+
label: Categorie
|
87
92
|
is_emendation_true:
|
93
|
+
label: Tipul
|
88
94
|
values:
|
95
|
+
'false': Propuneri
|
89
96
|
'true': Modificări
|
97
|
+
scope_id_eq:
|
98
|
+
label: Domeniu de interes
|
99
|
+
state_eq:
|
100
|
+
label: Stare
|
101
|
+
values:
|
102
|
+
accepted: Acceptat
|
103
|
+
evaluating: Evaluare
|
104
|
+
published: Publicat
|
105
|
+
rejected: Refuzat
|
106
|
+
validating: Validarea tehnică
|
107
|
+
withdrawn: Retras
|
108
|
+
state_null:
|
109
|
+
label: Stare
|
110
|
+
values:
|
111
|
+
'true': Nu s-a răspuns
|
90
112
|
valuator_role_ids_has:
|
91
113
|
label: Atribuit evaluatorului
|
92
114
|
search_placeholder:
|
@@ -119,8 +141,13 @@ ro:
|
|
119
141
|
new_proposal_help_text: Noua propunere ajută textul
|
120
142
|
official_proposals_enabled: Propuneri oficiale activate
|
121
143
|
participatory_texts_enabled: Texte participative activate
|
144
|
+
participatory_texts_enabled_readonly: Nu se poate interacționa cu această setare dacă există propuneri existente. Vă rugăm, creați o nouă `Componenta de Propuneri` dacă doriți să activați această caracteristică sau să renunțați la toate propunerile importate din meniul `Textele participative` dacă doriți să o dezactivați.
|
122
145
|
proposal_answering_enabled: Propunere de răspuns activată
|
123
146
|
proposal_edit_before_minutes: Propunerile pot fi editate de către autori înainte de expirarea acestor mai multe minute
|
147
|
+
proposal_edit_time: Modificare propunere
|
148
|
+
proposal_edit_time_choices:
|
149
|
+
infinite: Permite editarea propunerilor pentru o perioadă infinită de timp
|
150
|
+
limited: Permite editarea propunerilor într-un anumit interval de timp
|
124
151
|
proposal_length: Lungimea maximă a corpului propunerii
|
125
152
|
proposal_limit: Limita propunerii per participant
|
126
153
|
proposal_wizard_step_1_help_text: Asistentul propunerii „Creează” pas ajutând textul
|
@@ -128,6 +155,8 @@ ro:
|
|
128
155
|
proposal_wizard_step_3_help_text: Asistentul propunerii „Finalizare” ajută textul
|
129
156
|
proposal_wizard_step_4_help_text: Asistentul propunerii „Publici” pas ajutător text
|
130
157
|
resources_permissions_enabled: Permisiunile de acțiuni pot fi setate pentru fiecare propunere
|
158
|
+
scope_id: Domeniu de interes
|
159
|
+
scopes_enabled: Domenii de interes activate
|
131
160
|
threshold_per_proposal: Pragul per propunere
|
132
161
|
vote_limit: Limită suport per participant
|
133
162
|
step:
|
@@ -334,6 +363,7 @@ ro:
|
|
334
363
|
actions:
|
335
364
|
preview: Previzualizare
|
336
365
|
exports:
|
366
|
+
proposal_comments: Comentarii
|
337
367
|
proposals: Propuneri
|
338
368
|
models:
|
339
369
|
proposal:
|
@@ -357,7 +387,9 @@ ro:
|
|
357
387
|
new_import:
|
358
388
|
accepted_mime_types:
|
359
389
|
md: Markdown
|
390
|
+
odt: ODT
|
360
391
|
bottom_hint: "(Veţi putea previzualiza şi sorta secţiunile de document)"
|
392
|
+
document_legend: 'Adaugă un document mai mic de 2MB, fiecare secțiune până când 3 nivele adâncime vor fi analizate în propuneri. Formatele suportate sunt: %{valid_mime_types}'
|
361
393
|
title: Adaugă DOCUMENT
|
362
394
|
upload_document: Încărcați documentul
|
363
395
|
publish:
|
@@ -398,6 +430,7 @@ ro:
|
|
398
430
|
form:
|
399
431
|
attachment_legend: "(Opțional) Adăugați un atașament"
|
400
432
|
created_in_meeting: Prezenta propunere provine dintr-o ședință
|
433
|
+
delete_attachment: Ștergere atașament
|
401
434
|
select_a_category: Selectați o categorie
|
402
435
|
select_a_meeting: Selectați o ședință
|
403
436
|
index:
|
@@ -473,6 +506,7 @@ ro:
|
|
473
506
|
no_components: Nu există alte componente de propunere în acest spațiu participativ din care să se importe propunerile.
|
474
507
|
select_component: Vă rugăm să selectaţi o componentă
|
475
508
|
select_states: Verificați starea propunerilor de importat
|
509
|
+
title: Importă propuneri
|
476
510
|
proposals_merges:
|
477
511
|
create:
|
478
512
|
invalid: A apărut o problemă la fuzionarea propunerilor selectate.
|
@@ -564,6 +598,37 @@ ro:
|
|
564
598
|
amendment: Amendamente
|
565
599
|
category: Categorie
|
566
600
|
open: Deschideți
|
601
|
+
published: Publicat
|
602
|
+
related_to: Legat de
|
603
|
+
scope: Domeniu de interes
|
604
|
+
search: Caută
|
605
|
+
state: Stare
|
606
|
+
withdrawn: Retras
|
607
|
+
filters_small_view:
|
608
|
+
close_modal: Închidere
|
609
|
+
filter: Filtrare
|
610
|
+
filter_by: Filtrează după
|
611
|
+
unfold: Desfășurat
|
612
|
+
new:
|
613
|
+
send: Continuă
|
614
|
+
new_collaborative_draft_button:
|
615
|
+
new_collaborative_draft: Nouă ciornă de colaborare
|
616
|
+
orders:
|
617
|
+
label: 'Ordonare ciorne după:'
|
618
|
+
most_contributed: Cu cele mai multe contribuții
|
619
|
+
random: Aleatoriu
|
620
|
+
recent: Recente
|
621
|
+
requests:
|
622
|
+
accepted_request:
|
623
|
+
error: Nu a putut fi acceptat ca și colaborator, vă rugăm să încercați din nou mai târziu.
|
624
|
+
success: "@%{user} a fost acceptat ca și colaborator"
|
625
|
+
access_requested:
|
626
|
+
error: Cererea dvs. nu a putut fi completată, vă rugăm să încercați din nou mai târziu.
|
627
|
+
success: Cererea dvs. de colaborare a fost trimisă
|
628
|
+
collaboration_requests:
|
629
|
+
accept_request: Acceptare
|
630
|
+
reject_request: Respingere
|
631
|
+
title: Cereri de colaborare
|
567
632
|
show:
|
568
633
|
info-message: Acesta este un <strong>proiect de colaborare</strong> pentru o propunere. Aceasta înseamnă că îi poți ajuta pe autorii lor să modeleze propunerea folosind secțiunea de mai jos sau să o îmbunătățească direct prin solicitarea accesului la editare. Odată ce autorii vă acordă accesul, veți putea face modificări la acest proiect.
|
569
634
|
publish: Publică
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class AddFollowableCounterCacheToProposals < ActiveRecord::Migration[5.2]
|
4
|
+
def change
|
5
|
+
add_column :decidim_proposals_proposals, :follows_count, :integer, null: false, default: 0, index: true
|
6
|
+
|
7
|
+
reversible do |dir|
|
8
|
+
dir.up do
|
9
|
+
Decidim::Proposals::Proposal.reset_column_information
|
10
|
+
Decidim::Proposals::Proposal.find_each do |record|
|
11
|
+
record.class.reset_counters(record.id, :follows)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class AddFollowableCounterCacheToCollaborativeDrafts < ActiveRecord::Migration[5.2]
|
4
|
+
def change
|
5
|
+
add_column :decidim_proposals_collaborative_drafts, :follows_count, :integer, null: false, default: 0, index: true
|
6
|
+
|
7
|
+
reversible do |dir|
|
8
|
+
dir.up do
|
9
|
+
Decidim::Proposals::CollaborativeDraft.reset_column_information
|
10
|
+
Decidim::Proposals::CollaborativeDraft.find_each do |record|
|
11
|
+
record.class.reset_counters(record.id, :follows)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class FixCountersForCopiedProposals < ActiveRecord::Migration[5.2]
|
4
|
+
def up
|
5
|
+
copies_ids = Decidim::ResourceLink.where(
|
6
|
+
name: "copied_from_component",
|
7
|
+
from_type: "Decidim::Proposals::Proposal",
|
8
|
+
to_type: "Decidim::Proposals::Proposal"
|
9
|
+
).pluck(:to_id)
|
10
|
+
|
11
|
+
Decidim::Proposals::Proposal.where(id: copies_ids).find_each do |record|
|
12
|
+
record.class.reset_counters(record.id, :follows)
|
13
|
+
record.update_comments_count
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def down; end
|
18
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-proposals
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.24.0
|
4
|
+
version: 0.24.0
|
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-03-
|
13
|
+
date: 2021-03-26 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: acts_as_list
|
@@ -60,28 +60,28 @@ dependencies:
|
|
60
60
|
requirements:
|
61
61
|
- - '='
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version: 0.24.0
|
63
|
+
version: 0.24.0
|
64
64
|
type: :runtime
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
68
|
- - '='
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version: 0.24.0
|
70
|
+
version: 0.24.0
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
72
|
name: decidim-core
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
75
|
- - '='
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version: 0.24.0
|
77
|
+
version: 0.24.0
|
78
78
|
type: :runtime
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
82
|
- - '='
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version: 0.24.0
|
84
|
+
version: 0.24.0
|
85
85
|
- !ruby/object:Gem::Dependency
|
86
86
|
name: doc2text
|
87
87
|
requirement: !ruby/object:Gem::Requirement
|
@@ -156,84 +156,84 @@ dependencies:
|
|
156
156
|
requirements:
|
157
157
|
- - '='
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 0.24.0
|
159
|
+
version: 0.24.0
|
160
160
|
type: :development
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - '='
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 0.24.0
|
166
|
+
version: 0.24.0
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: decidim-assemblies
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
171
|
- - '='
|
172
172
|
- !ruby/object:Gem::Version
|
173
|
-
version: 0.24.0
|
173
|
+
version: 0.24.0
|
174
174
|
type: :development
|
175
175
|
prerelease: false
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
177
177
|
requirements:
|
178
178
|
- - '='
|
179
179
|
- !ruby/object:Gem::Version
|
180
|
-
version: 0.24.0
|
180
|
+
version: 0.24.0
|
181
181
|
- !ruby/object:Gem::Dependency
|
182
182
|
name: decidim-budgets
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
184
184
|
requirements:
|
185
185
|
- - '='
|
186
186
|
- !ruby/object:Gem::Version
|
187
|
-
version: 0.24.0
|
187
|
+
version: 0.24.0
|
188
188
|
type: :development
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
192
|
- - '='
|
193
193
|
- !ruby/object:Gem::Version
|
194
|
-
version: 0.24.0
|
194
|
+
version: 0.24.0
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
196
|
name: decidim-dev
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
198
198
|
requirements:
|
199
199
|
- - '='
|
200
200
|
- !ruby/object:Gem::Version
|
201
|
-
version: 0.24.0
|
201
|
+
version: 0.24.0
|
202
202
|
type: :development
|
203
203
|
prerelease: false
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
205
205
|
requirements:
|
206
206
|
- - '='
|
207
207
|
- !ruby/object:Gem::Version
|
208
|
-
version: 0.24.0
|
208
|
+
version: 0.24.0
|
209
209
|
- !ruby/object:Gem::Dependency
|
210
210
|
name: decidim-meetings
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
212
212
|
requirements:
|
213
213
|
- - '='
|
214
214
|
- !ruby/object:Gem::Version
|
215
|
-
version: 0.24.0
|
215
|
+
version: 0.24.0
|
216
216
|
type: :development
|
217
217
|
prerelease: false
|
218
218
|
version_requirements: !ruby/object:Gem::Requirement
|
219
219
|
requirements:
|
220
220
|
- - '='
|
221
221
|
- !ruby/object:Gem::Version
|
222
|
-
version: 0.24.0
|
222
|
+
version: 0.24.0
|
223
223
|
- !ruby/object:Gem::Dependency
|
224
224
|
name: decidim-participatory_processes
|
225
225
|
requirement: !ruby/object:Gem::Requirement
|
226
226
|
requirements:
|
227
227
|
- - '='
|
228
228
|
- !ruby/object:Gem::Version
|
229
|
-
version: 0.24.0
|
229
|
+
version: 0.24.0
|
230
230
|
type: :development
|
231
231
|
prerelease: false
|
232
232
|
version_requirements: !ruby/object:Gem::Requirement
|
233
233
|
requirements:
|
234
234
|
- - '='
|
235
235
|
- !ruby/object:Gem::Version
|
236
|
-
version: 0.24.0
|
236
|
+
version: 0.24.0
|
237
237
|
description: A proposals component for decidim's participatory spaces.
|
238
238
|
email:
|
239
239
|
- josepjaume@gmail.com
|
@@ -639,6 +639,9 @@ files:
|
|
639
639
|
- db/migrate/20200827154156_add_commentable_counter_cache_to_proposals.rb
|
640
640
|
- db/migrate/20201002085508_fix_proposals_data.rb
|
641
641
|
- db/migrate/20210127115628_fix_answered_proposals_after_copy.rb
|
642
|
+
- db/migrate/20210310102839_add_followable_counter_cache_to_proposals.rb
|
643
|
+
- db/migrate/20210310120812_add_followable_counter_cache_to_collaborative_drafts.rb
|
644
|
+
- db/migrate/20210318082934_fix_counters_for_copied_proposals.rb
|
642
645
|
- lib/decidim/api/proposal_input_filter.rb
|
643
646
|
- lib/decidim/api/proposal_input_sort.rb
|
644
647
|
- lib/decidim/api/proposal_type.rb
|
@@ -678,9 +681,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
678
681
|
version: '2.7'
|
679
682
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
680
683
|
requirements:
|
681
|
-
- - "
|
684
|
+
- - ">="
|
682
685
|
- !ruby/object:Gem::Version
|
683
|
-
version:
|
686
|
+
version: '0'
|
684
687
|
requirements: []
|
685
688
|
rubygems_version: 3.1.2
|
686
689
|
signing_key:
|