decidim-debates 0.24.3 → 0.25.0.rc1

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.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/decidim/debates/versions_controller.rb +1 -1
  3. data/app/models/decidim/debates/debate.rb +8 -13
  4. data/app/packs/entrypoints/decidim_debates_admin.js +4 -0
  5. data/app/{assets/images/decidim/debates/icon.svg → packs/images/decidim/debates/decidim_debates.svg} +0 -0
  6. data/app/{assets/images/decidim/gamification/badges/commented_debates.svg → packs/images/decidim/gamification/badges/decidim_gamification_badges_commented_debates.svg} +0 -0
  7. data/app/{assets/javascripts/decidim/debates/admin/debates.js.es6 → packs/src/decidim/debates/admin/debates.js} +3 -3
  8. data/app/queries/decidim/debates/metrics/debates_metric_manage.rb +1 -1
  9. data/app/views/decidim/debates/admin/debates/_form.html.erb +1 -1
  10. data/app/views/decidim/debates/admin/debates/index.html.erb +2 -0
  11. data/app/views/decidim/debates/debates/_filters.html.erb +1 -1
  12. data/app/views/decidim/debates/debates/index.html.erb +0 -2
  13. data/app/views/decidim/debates/debates/show.html.erb +1 -1
  14. data/app/views/decidim/debates/versions/show.html.erb +1 -1
  15. data/config/assets.rb +8 -0
  16. data/config/locales/ca.yml +2 -0
  17. data/config/locales/cs.yml +2 -0
  18. data/config/locales/de.yml +2 -0
  19. data/config/locales/en.yml +3 -0
  20. data/config/locales/es-MX.yml +2 -0
  21. data/config/locales/es-PY.yml +2 -0
  22. data/config/locales/es.yml +2 -0
  23. data/config/locales/fi-plain.yml +2 -0
  24. data/config/locales/fi.yml +2 -0
  25. data/config/locales/fr-LU.yml +237 -0
  26. data/config/locales/gl.yml +2 -0
  27. data/config/locales/it.yml +53 -0
  28. data/config/locales/ja.yml +10 -0
  29. data/config/locales/lb-LU.yml +1 -0
  30. data/config/locales/nl.yml +2 -0
  31. data/config/locales/pl.yml +3 -1
  32. data/config/locales/pt-BR.yml +89 -0
  33. data/config/locales/ro-RO.yml +4 -0
  34. data/config/locales/sv.yml +2 -0
  35. data/db/migrate/20200708072042_fix_debates_i18n_fields.rb +1 -1
  36. data/lib/decidim/debates/admin_engine.rb +0 -4
  37. data/lib/decidim/debates/component.rb +4 -4
  38. data/lib/decidim/debates/engine.rb +30 -33
  39. data/lib/decidim/debates/version.rb +1 -1
  40. metadata +20 -53
  41. data/app/assets/config/admin/decidim_debates_manifest.js +0 -1
  42. data/app/assets/config/decidim_debates_manifest.js +0 -1
  43. data/config/locales/ja-JP.yml +0 -195
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7bc25e4e532fa9f612e4a14d89447196d433e9c47eb9b9f04fc774f6ec5e5d5f
4
- data.tar.gz: 5f1c10ab866674026cec0456425a797cbf4a589020c7e59b961074dc0dcb9583
3
+ metadata.gz: 97828fac1d6b2d8cd43062632817987a4fc5391df31e8a1bdcd69836fcd428fa
4
+ data.tar.gz: 68783612163514c85d2aa437ea1b459c1dd00aaa12fe231173cf4c43175a674c
5
5
  SHA512:
6
- metadata.gz: 3d0b07d72887234f78e25684d6be2284c7a8c16fe898c8f1e54b74b4792dae5d630aa07f9b9f13d819466a2717f48d35438506bce6d29b1a421ef085941612cc
7
- data.tar.gz: 8008c76bc9f58e4afbc30167890782fd56798dff98a52e5078708fc4866fc6f48b1c1250578b0f02fc44f203496ae161a79594827cab2a4e2e2836d51bd7d16a
6
+ metadata.gz: 017cb858eb199b43f9fb10008aa1cd92220fc95390d84c751072a1a87fd619364d7c460ad2754ff2b274dc46f5d56eaaf233ba11ea9d9f7df3cd1a26a03fd3e8
7
+ data.tar.gz: 20f8b2818ad13a1d1496c8a4e57e45206a8ea7c11e8a35e468f7d3d23a6dab6702a98f498db190409ba377a2a60a942032a85616a58a174c76fbde62452f9d7d
@@ -4,7 +4,7 @@ module Decidim
4
4
  module Debates
5
5
  # Exposes Debates versions so users can see how a Debate has been updated
6
6
  # through time.
7
- class VersionsController < Decidim::Proposals::ApplicationController
7
+ class VersionsController < Decidim::Debates::ApplicationController
8
8
  include Decidim::ApplicationHelper
9
9
  include Decidim::ResourceVersionsConcern
10
10
 
@@ -10,7 +10,7 @@ module Decidim
10
10
  include Decidim::HasCategory
11
11
  include Decidim::Resourceable
12
12
  include Decidim::Followable
13
- include Decidim::Comments::Commentable
13
+ include Decidim::Comments::CommentableWithComponent
14
14
  include Decidim::ScopableResource
15
15
  include Decidim::Authorable
16
16
  include Decidim::Reportable
@@ -96,11 +96,6 @@ module Decidim
96
96
  (ama? && open_ama?) || !ama?
97
97
  end
98
98
 
99
- # Public: Overrides the `commentable?` Commentable concern method.
100
- def commentable?
101
- component.settings.comments_enabled?
102
- end
103
-
104
99
  # Public: Overrides the `accepts_new_comments?` Commentable concern method.
105
100
  def accepts_new_comments?
106
101
  return false unless open?
@@ -131,13 +126,13 @@ module Decidim
131
126
  followers
132
127
  end
133
128
 
134
- def self.export_serializer
135
- Decidim::Debates::DataPortabilityDebateSerializer
129
+ # Public: Overrides the `allow_resource_permissions?` Resourceable concern method.
130
+ def allow_resource_permissions?
131
+ true
136
132
  end
137
133
 
138
- # Public: Whether the object can have new comments or not.
139
- def user_allowed_to_comment?(user)
140
- can_participate_in_space?(user)
134
+ def self.export_serializer
135
+ Decidim::Debates::DataPortabilityDebateSerializer
141
136
  end
142
137
 
143
138
  def self.newsletter_participant_ids(component)
@@ -176,8 +171,8 @@ module Decidim
176
171
  #
177
172
  # rubocop:disable Rails/SkipsModelValidations
178
173
  def update_comments_count
179
- comments_count = comments.not_hidden.count
180
- last_comment = comments.not_hidden.order("created_at DESC").first
174
+ comments_count = comments.not_hidden.not_deleted.count
175
+ last_comment = comments.not_hidden.not_deleted.order("created_at DESC").first
181
176
 
182
177
  update_columns(
183
178
  last_comment_at: last_comment&.created_at,
@@ -0,0 +1,4 @@
1
+ import "src/decidim/debates/admin/debates"
2
+
3
+ // Images
4
+ require.context("../images", true)
@@ -1,6 +1,6 @@
1
- ((exports) => {
2
- const { createFieldDependentInputs } = exports.DecidimAdmin;
1
+ import createFieldDependentInputs from "src/decidim/admin/field_dependent_inputs.component"
3
2
 
3
+ $(() => {
4
4
  const $debateType = $('[name="debate[finite]"');
5
5
 
6
6
  createFieldDependentInputs({
@@ -22,4 +22,4 @@
22
22
  return $("#debate_finite_true").is(":checked")
23
23
  }
24
24
  });
25
- })(window);
25
+ })
@@ -27,7 +27,7 @@ module Decidim
27
27
  def query
28
28
  return @query if @query
29
29
 
30
- @query = Decidim::Debates::Debate.where(component: visible_component_ids_from_spaces(retrieve_participatory_spaces)).joins(:component)
30
+ @query = Decidim::Debates::Debate.where(component: visible_components_from_spaces(retrieve_participatory_spaces)).joins(:component)
31
31
  .left_outer_joins(:category)
32
32
  @query = @query.where("decidim_debates_debates.start_time <= ?", end_time)
33
33
  @query = @query.group("decidim_categorizations.decidim_category_id",
@@ -46,4 +46,4 @@
46
46
  </div>
47
47
  </div>
48
48
 
49
- <%= javascript_include_tag "decidim/debates/admin/debates" %>
49
+ <%= javascript_pack_tag "decidim_debates_admin" %>
@@ -51,6 +51,8 @@
51
51
  <span class="action-space icon"></span>
52
52
  <% end %>
53
53
 
54
+ <%= resource_permissions_link(debate) %>
55
+
54
56
  <% if allowed_to? :delete, :debate, debate: debate %>
55
57
  <%= icon_link_to "circle-x", debate_path(debate), t("actions.destroy", scope: "decidim.debates"), method: :delete, class: "action-icon--remove", data: { confirm: t("actions.confirm_destroy", scope: "decidim.debates") } %>
56
58
  <% else %>
@@ -4,7 +4,7 @@
4
4
  <div class="filters__section">
5
5
  <div class="filters__search">
6
6
  <div class="input-group">
7
- <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), data: { disable_dynamic_change: true } %>
7
+ <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search"), title: t(".search"), "aria-label": t(".search"), data: { disable_dynamic_change: true } %>
8
8
  <div class="input-group-button">
9
9
  <button type="submit" class="button" aria-controls="debates">
10
10
  <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
@@ -24,5 +24,3 @@
24
24
  <%= render partial: "debates" %>
25
25
  </div>
26
26
  </div>
27
-
28
- <%= javascript_include_tag("decidim/filters") %>
@@ -45,7 +45,7 @@ edit_link(
45
45
  <% end %>
46
46
  <div class="card extra">
47
47
  <div class="card__content">
48
- <%= cell("decidim/date", { start: debate.start_time, end: debate.end_time }) %>
48
+ <%= cell("decidim/date_range", { start: debate.start_time, end: debate.end_time }) %>
49
49
 
50
50
  <% if endorsements_enabled? && allowed_to?(:endorse, :debate, debate: debate) %>
51
51
  <div class="row collapse buttons__row">
@@ -5,6 +5,6 @@
5
5
  index: params[:id],
6
6
  versioned_resource: versioned_resource,
7
7
  versions_path: proc { url_for(action: :index) },
8
- i18n_scope: "decidim.debates.debates.versions.#{item_name.to_s.pluralize}"
8
+ i18n_scope: "decidim.debates.debates.versions.debates"
9
9
  ) %>
10
10
  </div>
data/config/assets.rb ADDED
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ base_path = File.expand_path("..", __dir__)
4
+
5
+ Decidim::Webpacker.register_path("#{base_path}/app/packs")
6
+ Decidim::Webpacker.register_entrypoints(
7
+ decidim_debates_admin: "#{base_path}/app/packs/entrypoints/decidim_debates_admin.js"
8
+ )
@@ -235,3 +235,5 @@ ca:
235
235
  description: Nombre de debats creats
236
236
  object: debats
237
237
  title: Debats
238
+ statistics:
239
+ debates_count: Debats
@@ -239,3 +239,5 @@ cs:
239
239
  description: Počet vytvořených debat
240
240
  object: debaty
241
241
  title: Debaty
242
+ statistics:
243
+ debates_count: Debaty
@@ -235,3 +235,5 @@ de:
235
235
  description: Anzahl der erstellten Debatten
236
236
  object: Debatten
237
237
  title: Debatten
238
+ statistics:
239
+ debates_count: Debatten
@@ -28,6 +28,7 @@ en:
28
28
  components:
29
29
  debates:
30
30
  actions:
31
+ comment: Comment
31
32
  create: Create
32
33
  endorse: Endorse
33
34
  name: Debates
@@ -236,3 +237,5 @@ en:
236
237
  description: Number of debates created
237
238
  object: debates
238
239
  title: Debates
240
+ statistics:
241
+ debates_count: Debates
@@ -235,3 +235,5 @@ es-MX:
235
235
  description: Número de debates creados
236
236
  object: debates
237
237
  title: Debates
238
+ statistics:
239
+ debates_count: Debates
@@ -235,3 +235,5 @@ es-PY:
235
235
  description: Número de debates creados.
236
236
  object: debates
237
237
  title: Debates
238
+ statistics:
239
+ debates_count: Debates
@@ -235,3 +235,5 @@ es:
235
235
  description: Número de debates creados
236
236
  object: debates
237
237
  title: Debates
238
+ statistics:
239
+ debates_count: Debates
@@ -235,3 +235,5 @@ fi-pl:
235
235
  description: Keskustelujen määrä
236
236
  object: keskustelut
237
237
  title: Keskustelut
238
+ statistics:
239
+ debates_count: Keskustelua
@@ -235,3 +235,5 @@ fi:
235
235
  description: Keskustelujen määrä
236
236
  object: keskustelut
237
237
  title: Keskustelut
238
+ statistics:
239
+ debates_count: Keskustelua
@@ -0,0 +1,237 @@
1
+ fr-LU:
2
+ activemodel:
3
+ attributes:
4
+ debate:
5
+ category_id: Catégorie
6
+ closed_at: Clôturé le
7
+ conclusions: Conclusions
8
+ decidim_category_id: Catégorie
9
+ description: Description
10
+ end_time: Prend fin à
11
+ information_updates: Informations mises à jour
12
+ instructions: Instructions pour participer
13
+ start_time: Commence à
14
+ title: Titre
15
+ user_group_id: Créer un débat en tant que
16
+ models:
17
+ decidim/debates/close_debate_event: Débat terminé
18
+ decidim/debates/create_debate_event: Débat
19
+ decidim/debates/creation_disabled_event: Débats désactivés
20
+ decidim/debates/creation_enabled_event: Débats activés
21
+ activerecord:
22
+ models:
23
+ decidim/debates/debate:
24
+ one: Débat
25
+ other: Débats
26
+ decidim:
27
+ components:
28
+ debates:
29
+ actions:
30
+ create: Créer
31
+ endorse: Soutenir
32
+ name: Débats
33
+ settings:
34
+ global:
35
+ announcement: Annonce
36
+ comments_enabled: Commentaires activés
37
+ comments_max_length: Longueur max des commentaires (laisser 0 pour la valeur par défaut)
38
+ scope_id: Secteur
39
+ scopes_enabled: Secteurs activés
40
+ step:
41
+ announcement: Annonce
42
+ comments_blocked: Commentaires désactivés
43
+ creation_enabled: Création de débats par les utilisateurs activés
44
+ endorsements_blocked: Soutiens bloqués
45
+ endorsements_enabled: Soutiens activés
46
+ debates:
47
+ actions:
48
+ close: Fermer
49
+ confirm_destroy: Êtes-vous certain ?
50
+ destroy: Supprimer
51
+ edit: Modifier
52
+ new: Nouveau %{name}
53
+ title: Actions
54
+ admin:
55
+ debate_closes:
56
+ edit:
57
+ close: Fermer
58
+ title: Clore le débat
59
+ debates:
60
+ create:
61
+ invalid: Il y a eu un problème lors de la création du débat.
62
+ success: Débat créé avec succès.
63
+ destroy:
64
+ success: Débat supprimé avec succès.
65
+ edit:
66
+ title: Modifier le débat
67
+ update: Actualiser le débat
68
+ form:
69
+ debate_type: Type de débat
70
+ finite: Limité (Avec les heures de début et de fin)
71
+ open: Ouvert (pas de date de début et de fin)
72
+ index:
73
+ title: Débats
74
+ new:
75
+ create: Créer un débat
76
+ title: Nouveau débat
77
+ update:
78
+ invalid: Il y a eu un problème lors de la mise à jour de ce débat.
79
+ success: Débat mis à jour avec succès.
80
+ exports:
81
+ comments: Commentaires
82
+ models:
83
+ debate:
84
+ name: Débat
85
+ admin_log:
86
+ debate:
87
+ close: "%{user_name} a clos le débat %{resource_name} dans l'espace %{space_name}"
88
+ create: "%{user_name} a créé le débat %{resource_name} sur l'espace %{space_name}"
89
+ update: "%{user_name} a mis à jour le débat %{resource_name} sur l'espace %{space_name}"
90
+ debate_m:
91
+ commented_time_ago: Commenté il y a %{time}
92
+ debates:
93
+ close:
94
+ invalid: Une erreur s'est produite lors de la fermeture du débat.
95
+ success: Débat clos avec succès.
96
+ close_debate_modal:
97
+ close: Fermer
98
+ description: Quel est le résumé ou la conclusion de ce débat?
99
+ send: Clore le débat
100
+ closed: Fermé
101
+ count:
102
+ debates_count:
103
+ one: "%{count} débat"
104
+ other: "%{count} débats"
105
+ create:
106
+ invalid: Il y a eu un problème lors de la création de ce débat.
107
+ success: Débat créé avec succès.
108
+ debate:
109
+ participate: Participer
110
+ edit:
111
+ back: Retour
112
+ save: Enregistrer les modifications
113
+ title: Modifier le débat
114
+ filters:
115
+ activity: Mon activité
116
+ all: Tout
117
+ category: Catégorie
118
+ category_prompt: Choisir une catégorie
119
+ citizens: Citoyenne
120
+ commented: Commenté
121
+ my_debates: Mes débats
122
+ official: Officielle
123
+ origin: Origine
124
+ scope: Secteur
125
+ search: Rechercher
126
+ state: Statut
127
+ state_values:
128
+ closed: Fermé
129
+ open: Ouvert
130
+ user_groups: Groupes
131
+ filters_small_view:
132
+ close_modal: Fermer la fenêtre de dialogue
133
+ filter: Filtre
134
+ filter_by: Filtrer par
135
+ unfold: Voir la suite
136
+ form:
137
+ select_a_category: Veuillez sélectionner une catégorie
138
+ index:
139
+ new_debate: Nouveau débat
140
+ new:
141
+ back: Retour
142
+ create: Créer
143
+ title: Nouveau débat
144
+ orders:
145
+ commented: Les plus commentés
146
+ label: Trier les débats par
147
+ random: Ordre aléatoire
148
+ recent: Les plus récents
149
+ updated: Mis à jour récemment
150
+ show:
151
+ back: Retour à la liste
152
+ close_debate: Clore le débat
153
+ date: Date
154
+ debate_closed: Fermé
155
+ debate_conclusions_are: 'Le débat a été clos le %{date} avec ces conclusions:'
156
+ edit_conclusions: Modifier les conclusions
157
+ edit_debate: Modifier le débat
158
+ groups_count: Groupes
159
+ last_comment_by: Dernier commentaire par
160
+ no_comments_yet: Pas encore de commentaire
161
+ open: Ouvrir le débat
162
+ participants_count: Participants
163
+ update:
164
+ invalid: Une erreur s'est produite lors de la mise à jour du débat.
165
+ success: Débat mis à jour avec succès.
166
+ versions:
167
+ debates:
168
+ back_to_resource: Revenir au débat
169
+ index:
170
+ title: Versions
171
+ versions_list:
172
+ back_to_resource: Revenir au débat
173
+ last_activity:
174
+ debate_updated_at_html: "<span>Débat mis à jour à %{link}</span>"
175
+ new_debate_at_html: "<span>Nouveau débat à %{link}</span>"
176
+ models:
177
+ debate:
178
+ fields:
179
+ end_time: Date de fin
180
+ official_debate: Débat officiel
181
+ start_time: Date de début
182
+ title: Titre
183
+ events:
184
+ debates:
185
+ create_debate_event:
186
+ space_followers:
187
+ email_intro: |-
188
+ Salut,
189
+ Un nouveau débat «%{resource_title}» a été créée sur le %{space_title} espace participatif, vérifier et contribuer:
190
+ email_outro: Vous avez reçu cette notification parce que vous suivez l'espace participatif %{space_title}. Vous pouvez cesser de recevoir des notifications en suivant ce dernier lien.
191
+ email_subject: Nouveau débat "%{resource_title}" sur %{space_title}
192
+ notification_title: Le débat <a href="%{resource_path}">%{resource_title}</a> a été créé le <a href="%{space_path}">%{space_title}</a>.
193
+ user_followers:
194
+ email_intro: |-
195
+ Bonjour,
196
+ %{author_name} %{author_nickname}, qui vous suivez, a créé un nouveau débat "%{resource_title}". Découvrez-le et contribuez:
197
+ email_outro: Vous avez reçu cette notification, car vous suivez %{author_nickname}. Vous pouvez cesser de recevoir des notifications à partir du lien précédent.
198
+ email_subject: Nouveau débat "%{resource_title}" par %{author_nickname}
199
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> créé le débat <a href="%{resource_path}">%{resource_title}</a>.
200
+ creation_disabled:
201
+ email_intro: 'La création de débat n''est plus possible dans %{participatory_space_title}. Vous pouvez toujours participer aux débats ouverts depuis cette page :'
202
+ email_outro: Vous avez reçu cette notification parce que vous suivez %{participatory_space_title}. Vous pouvez arrêter de recevoir des notifications à partir du lien précédent.
203
+ email_subject: La création de débats est désactivée dans %{participatory_space_title}
204
+ notification_title: La création de débats est maintenant désactivée dans <a href="%{participatory_space_url}">%{participatory_space_title}</a>
205
+ creation_enabled:
206
+ email_intro: 'Vous pouvez maintenant initier de nouveaux débats dans %{participatory_space_title}! Commencez à participer sur cette page :'
207
+ email_outro: Vous avez reçu cette notification, car vous suivez %{participatory_space_title}. Vous pouvez arrêter de recevoir des notifications à partir du lien précédent.
208
+ email_subject: Débats maintenant disponibles sur %{participatory_space_title}
209
+ notification_title: Vous pouvez maintenant initier <a href="%{resource_path}">nouveaux débats</a> dans <a href="%{participatory_space_url}">%{participatory_space_title}</a>
210
+ debate_closed:
211
+ affected_user:
212
+ email_intro: 'Le débat « %{resource_title} » est fermé. Vous pouvez lire les conclusions sur cette page :'
213
+ email_outro: Vous avez reçu cet avis parce que vous êtes abonné au débat « %{resource_title} ». Vous pouvez vous désabonner depuis le lien précédent.
214
+ email_subject: Le débat "%{resource_title}" est fermé
215
+ notification_title: Le débat <a href="%{resource_path}">%{resource_title}</a> est fermé.
216
+ follower:
217
+ email_intro: 'Le débat « %{resource_title} » est fermé. Vous pouvez lire les conclusions sur cette page :'
218
+ email_outro: Vous avez reçu cet avis parce que vous êtes abonné au débat « %{resource_title} ». Vous pouvez vous désabonner depuis le lien précédent.
219
+ email_subject: Le débat "%{resource_title}" est fermé
220
+ notification_title: Le débat <a href="%{resource_path}">%{resource_title}</a> est fermé.
221
+ gamification:
222
+ badges:
223
+ commented_debates:
224
+ conditions:
225
+ - Choisissez un débat ouvert pour participer à
226
+ description: Ce badge est attribué lorsque vous participez activement aux différents débats en laissant vos commentaires.
227
+ description_another: Cet utilisateur a participé à %{score} débats.
228
+ description_own: Vous avez participé à %{score} débats.
229
+ name: Des débats
230
+ next_level_in: Participez à %{score} autres débats pour atteindre le prochain niveau!
231
+ unearned_another: Cet utilisateur n'a encore participé à aucun débat.
232
+ unearned_own: Vous avez déjà participé à des débats.
233
+ metrics:
234
+ debates:
235
+ description: Nombre de débats créés
236
+ object: débats
237
+ title: Débats