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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 651e0b6a4c3eb957e436b43b59af16f0f003dafd053982e9ad731007d928b98a
4
- data.tar.gz: 9b17adde9c0c8726bdbc8f0b6b9b5783b7f2b16f7fcb89a98a33cc906b55146f
3
+ metadata.gz: bc19261b23f64f8508319ad79afa60c5268b6071d397a024750ffffa9d708676
4
+ data.tar.gz: e9014329c51b1a0d4611f161dc84e2849c14e02646d92d50aa2e340e08c87c1d
5
5
  SHA512:
6
- metadata.gz: ae7a065f2d8b9edd8da8993bc338882d076f63a0236ad6a1594d0a294cb00492a76f368206413771fd560d91f883fc7272150e502abbec6a0e9184590f50ea66
7
- data.tar.gz: 0f878229e8d1dd67dfd73af3dfef2b0775a3a4ceb49ef728390b45ec0266d33237228556697bb21e3d63fe23c5a363a5db086b155cf7e07691edbcae6538e173
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.settings.to_json)
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 << Digest::MD5.hexdigest(model.followers.to_json)
142
- hash << Digest::MD5.hexdigest(model.coauthorships.map(&:cache_key_with_version).to_s)
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
@@ -30,8 +30,6 @@ module Decidim
30
30
  return broadcast(:invalid) if invalid?
31
31
 
32
32
  if process_attachments?
33
- @proposal.attachments.destroy_all
34
-
35
33
  build_attachments
36
34
  return broadcast(:invalid) if attachments_invalid?
37
35
  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
- @proposals = search
39
- .results
40
- .published
41
- .not_hidden
42
- .includes(:component, :coauthorships)
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.slice(:latitude, :longitude, :address).merge(title: proposal.title,
19
- body: truncate(translated_attribute(proposal.body), length: 100),
20
- icon: icon("proposals", width: 40, height: 70, remove_icon_class: true),
21
- link: proposal_path(proposal))
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
- "proposal_votes_count",
71
+ "comments_count",
72
72
  "endorsements_count",
73
- "proposal_notes_count"
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(@proposals.select(&:geocoded?)) do %>
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>
@@ -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
@@ -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:
@@ -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
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This holds decidim-proposals version.
5
5
  module Proposals
6
6
  def self.version
7
- "0.24.0.rc2"
7
+ "0.24.0"
8
8
  end
9
9
  end
10
10
  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.rc2
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-10 00:00:00.000000000 Z
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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.rc2
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: 1.3.1
686
+ version: '0'
684
687
  requirements: []
685
688
  rubygems_version: 3.1.2
686
689
  signing_key: