decidim-proposals 0.24.0.rc2 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: