decidim-comments 0.29.1 → 0.29.3

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: 51d04842ce82296e0d8bd4a7146abc0f4c40f7097d349895fba37706bfb6a358
4
- data.tar.gz: a79cb56faacd55d250a965a8373de198758a58b9dc83e3f37f01828728c99094
3
+ metadata.gz: 4d3bf31067d9c3f95c93946db7b2069e11f2074a125abd5306c59aa043b0201d
4
+ data.tar.gz: 3d15947b6f6a12afe04c218a31e2f4c8f24d28c99eeb72d82355ea1ca001b862
5
5
  SHA512:
6
- metadata.gz: 56945ff77b2ca01a53e3e8f637a08038cd806f9cb9002d36b59235ba9a130a5b1321cd304cac8661ea5084b31cb0917d5638ef9801be31668ef971871b5734b1
7
- data.tar.gz: ee75b0ea226b00e66607726ba344baa0f66d89345c26422415b3bd833b84831463bb16170a4608a267e5ca165e3388466866aeeba2badfc7cea14be61d5914a7
6
+ metadata.gz: 81cad4916eb7e5d0a84918ceaf471f9fe9168666d1dfc823dda644cd9cb26817b039842e5f69b1d50fa415b9442d58b1fa8e831ab62de85b5b33ce7793b512d8
7
+ data.tar.gz: d7afb716ed31968beab5c46c0de89c30727f02978c53e55df7020a44593470067acfa162e987459b8d0a856e82a3e2b8ccbdadd2ce0cef4fbaef7a276c56c3a3
@@ -5,6 +5,7 @@ module Decidim
5
5
  # A cell to display a single comment.
6
6
  class CommentCell < Decidim::ViewModel
7
7
  include Decidim::ResourceHelper
8
+ include Decidim::UserRoleChecker
8
9
  include Cell::ViewModel::Partial
9
10
 
10
11
  delegate :current_user, :user_signed_in?, to: :controller
@@ -95,6 +96,9 @@ module Decidim
95
96
  end
96
97
 
97
98
  def can_reply?
99
+ return false if model.depth >= Comment::MAX_DEPTH
100
+ return true if current_participatory_space && user_has_any_role?(current_user, current_participatory_space)
101
+
98
102
  user_signed_in? && accepts_new_comments? &&
99
103
  root_commentable.user_allowed_to_comment?(current_user)
100
104
  end
@@ -207,6 +211,10 @@ module Decidim
207
211
  root_commentable.try(:component)
208
212
  end
209
213
 
214
+ def current_participatory_space
215
+ current_component&.participatory_space
216
+ end
217
+
210
218
  def vote_button_to(path, params, &)
211
219
  # actions are linked to objects belonging to a component
212
220
  # To apply :comment permission, the modal authorizer should be refactored to allow participatory spaces-level comments
@@ -1,3 +1,3 @@
1
- <div class="comment-thread" role="region">
1
+ <div class="comment-thread" role="region" aria-label="<%= t("accessibility_label", scope: "decidim.comments.comment_thread", full_name: model.author&.name, date: l(model.created_at, format: :decidim_short)) %>">
2
2
  <%= cell("decidim/comments/comment", model, root_depth: model.depth, order:) %>
3
3
  </div>
@@ -11,7 +11,7 @@ module Decidim
11
11
  def cache_hash
12
12
  hash = []
13
13
  hash.push(I18n.locale)
14
- hash.push(model.id)
14
+ hash.push(model.cache_key_with_version)
15
15
  hash.push(current_user.try(:id))
16
16
  hash.join(Decidim.cache_key_separator)
17
17
  end
@@ -54,7 +54,8 @@ module Decidim
54
54
  params.merge(commentable: comment.commentable)
55
55
  ).with_context(
56
56
  current_user:,
57
- current_organization:
57
+ current_organization:,
58
+ current_component:
58
59
  )
59
60
 
60
61
  Decidim::Comments::UpdateComment.call(comment, form) do
@@ -141,7 +141,7 @@ module Decidim
141
141
  if root_commentable.respond_to?(:polymorphic_resource_url)
142
142
  root_commentable.polymorphic_resource_url(url_params)
143
143
  else
144
- ResourceLocatorPresenter.new(root_commentable).url(url_params)
144
+ root_commentable.reported_content_url(url_params)
145
145
  end
146
146
  end
147
147
 
@@ -10,6 +10,12 @@ $(() => {
10
10
  var commentId = <%= @comment.id.to_json %>;
11
11
  var $comment = $("#comment_<%= @comment.id %>");
12
12
 
13
+ var $edit_modal = document.getElementById(`editCommentModal${commentId}`)
14
+
15
+ if ($edit_modal !== undefined) {
16
+ $edit_modal.remove()
17
+ }
18
+
13
19
  $comment.replaceWith(commentHtml);
14
20
 
15
21
  // Re-create the component
@@ -0,0 +1 @@
1
+ bn:
@@ -0,0 +1,15 @@
1
+ ---
2
+ bs:
3
+ decidim:
4
+ components:
5
+ comments:
6
+ comment_details_title: Detalji o komentaru
7
+ single_comment_warning_title: Vidite samo jedan komentar
8
+ events:
9
+ comments:
10
+ comment_by_followed_user_group:
11
+ email_intro: 'Grupa %{author_name} je ostavila komentar na %{resource_title}. Možete ga pročitati na ovoj strani:'
12
+ user_group_mentioned:
13
+ email_intro: Grupa kojoj pripadate je pomenuta
14
+ email_outro: Dobili ste ovo obaveštenje jer ste član grupe %{group_name} koja je pomenuta u %{resource_title}.
15
+ email_subject: Pomenuti ste u %{resource_title} kao član grupe %{group_name}
@@ -0,0 +1,178 @@
1
+ ---
2
+ ca-IT:
3
+ activemodel:
4
+ models:
5
+ decidim/comments/comment_by_followed_user_event: Comentari
6
+ decidim/comments/comment_created_event: Comentari
7
+ decidim/comments/comment_upvoted_event: Comentari valorat positivament
8
+ decidim/comments/reply_created_event: Resposta al comentari
9
+ decidim/comments/user_group_mentioned_event: Mencionar
10
+ decidim/comments/user_mentioned_event: Mencionar
11
+ activerecord:
12
+ models:
13
+ decidim/comments/comment:
14
+ one: Comentari
15
+ other: Comentaris
16
+ decidim/comments/comment_vote:
17
+ one: Vot
18
+ other: Vots
19
+ decidim:
20
+ comments:
21
+ admin:
22
+ shared:
23
+ availability_fields:
24
+ enabled: Comentaris habilitats
25
+ end_time: Comentaris habilitats fins al
26
+ start_time: Comentaris habilitats des de
27
+ comment_thread:
28
+ accessibility_label: Fil de comentaris iniciat per %{full_name} el %{date}
29
+ comments:
30
+ create:
31
+ error: S'ha produït un error en crear el comentari.
32
+ delete:
33
+ error: El comentari no s'ha pogut eliminar.
34
+ update:
35
+ error: S'ha produït un error en actualitzar el comentari.
36
+ comments_title: Comentari
37
+ last_activity:
38
+ new_comment: 'Nou comentari:'
39
+ votes:
40
+ create:
41
+ error: S'ha produït un error en votar el comentari.
42
+ components:
43
+ add_comment_form:
44
+ account_message: <a href="%{sign_in_url}">Inicia sessió</a> o <a href="%{sign_up_url}">crea un compte</a> per afegir el teu comentari.
45
+ form:
46
+ body:
47
+ label: Comentari
48
+ placeholder: Què en penses d'això?
49
+ form_error: El text és necessari i no pot ser més llarg de %{length}.
50
+ submit_reply: Publicar resposta
51
+ submit_root_comment: Publicar comentari
52
+ user_group_id:
53
+ label: Comentar com a
54
+ opinion:
55
+ label: La teva opinió sobre aquest tema
56
+ negative: Negativa
57
+ negative_selected: La teva opinió sobre aquest tema és negativa
58
+ neutral: Neutral
59
+ neutral_selected: La teva opinió sobre aquest tema és neutral
60
+ positive: Positiva
61
+ positive_selected: La teva opinió sobre aquest tema és positiva
62
+ remaining_characters: "Queden %{count} caràcters"
63
+ remaining_characters_1: "Queda %{count} caràcter"
64
+ title: Deixa el teu comentari
65
+ comment:
66
+ alignment:
67
+ against: En contra
68
+ in_favor: A favor
69
+ cancel_reply: Cancel·lar resposta
70
+ comment_label: Comentari %{comment_id}
71
+ comment_label_reply: Comentari %{comment_id} (respon al comentari %{parent_comment_id})
72
+ confirm_destroy: Segur que vols esborrar aquest comentari?
73
+ controls_label: Controls de comentaris
74
+ delete: Esborrar
75
+ deleted_at: Comentari esborrat el %{date}
76
+ deleted_user: Participant eliminada
77
+ edit: Editar
78
+ edited: Editat
79
+ hide_replies:
80
+ one: Amagar resposta
81
+ other: Amagar %{count} respostes
82
+ moderated_at: Comentari moderat el %{date}
83
+ reply: Respondre
84
+ report:
85
+ action: Denúncia
86
+ already_reported: Aquest contingut ja ha estat denunciat i serà revisat per una administradora.
87
+ close: Tancar
88
+ description: Aquest contingut és inapropiat?
89
+ details: Comentaris addicionals
90
+ reasons:
91
+ does_not_belong: Conté activitat il·legal, amenaces de suïcidi, informació personal, o qualsevol altra cosa que creguis que no pertany a %{organization_name}.
92
+ offensive: Conté racisme, sexisme, insults, atacs personals, amenaces de mort, peticions de suïcidi o qualsevol forma de discurs d'odi.
93
+ spam: Conté "clickbait", publicitat o estafes.
94
+ title: Notificar contingut inapropiat
95
+ show_replies:
96
+ one: Mostra la resposta
97
+ other: Mostra les %{count} respostes
98
+ single_comment_link_title: Obtenir enllaç
99
+ comment_order_selector:
100
+ order:
101
+ best_rated: Més ben valorats
102
+ most_discussed: Més discutit
103
+ older: Més antic
104
+ recent: Recent
105
+ title: 'Ordenar per:'
106
+ comments:
107
+ blocked_comments_for_unauthorized_user_warning: Has d'estar verificat abans de poder fer comentaris, però pots llegir els comentaris anteriors.
108
+ blocked_comments_for_user_warning: No pots fer comentaris en aquest moment, però pots llegir els anteriors.
109
+ blocked_comments_warning: Els comentaris estan desactivats en aquest moment, però pots llegir els anteriors.
110
+ comment_details_title: Detalls del comentari
111
+ loading: Carregant els comentaris ...
112
+ single_comment_warning: <a href="%{url}">Mostra tots els comentaris</a>
113
+ single_comment_warning_title: Estàs veient un sol comentari
114
+ title:
115
+ one: "%{count} comentari"
116
+ other: "%{count} comentaris"
117
+ down_vote_button:
118
+ text: No estic d'acord amb aquest comentari
119
+ edit_comment_modal_form:
120
+ close: Tancar
121
+ form:
122
+ body:
123
+ label: Comentar
124
+ placeholder: Què opines sobre això?
125
+ submit: Enviar
126
+ title: Edita el teu comentari
127
+ up_vote_button:
128
+ text: Estic d'acord amb aquest comentari
129
+ events:
130
+ comments:
131
+ comment_by_followed_user:
132
+ email_intro: "%{author_name} ha deixat un comentari a %{resource_title}. Podeu llegir-lo en aquesta pàgina:"
133
+ email_outro: Has rebut aquesta notificació perquè estàs seguint el comentari "%{author_name}". Pots deixar de seguir a aquesta participant des de la seva pàgina de perfil.
134
+ email_subject: Hi ha un nou comentari de %{author_name} en %{resource_title}
135
+ notification_title: Hi ha un nou comentari per <a href="%{author_path}">%{author_name} %{author_nickname}</a> a <a href="%{resource_path}">%{resource_title}</a>.
136
+ comment_by_followed_user_group:
137
+ email_intro: '%{author_name} ha deixat un comentari a%{resource_title}. Pots llegir-lo en aquesta pàgina:'
138
+ email_outro: Reps aquesta notificació perquè segueixes a "%{author_name}". Pots deixar de seguir aquest grup des de la seva pàgina de perfil.
139
+ email_subject: Hi ha un nou comentari de %{author_name} en %{resource_title}
140
+ notification_title: Hi ha un nou comentari per <a href="%{author_path}">%{author_name} %{author_nickname}</a> a <a href="%{resource_path}">%{resource_title}</a>.
141
+ comment_created:
142
+ email_intro: "Algú ha deixat un comentari a \"%{resource_title}\". Pots llegir el comentari a través del següent enllaç:"
143
+ email_outro: Has rebut aquesta notificació perquè estàs seguint el comentari "%{resource_title}" o la seva autora. Pots deixar de seguir-la des de l'enllaç anterior.
144
+ email_subject: Hi ha un nou comentari de %{author_name} a %{resource_title}
145
+ notification_title: Hi ha un nou comentari de <a href="%{author_path}">%{author_name} %{author_nickname}</a> en <a href="%{resource_path}">%{resource_title}</a>
146
+ comment_downvoted:
147
+ email_intro: El teu comentari a "%{resource_title}" ha rebut un vot negatiu. Ara té un total de %{upvotes} vots positius i %{downvotes} vots negatius.
148
+ email_outro: Has rebut aquesta notificació perquè vas fer aquest comentari.
149
+ email_subject: El teu comentari a "%{resource_title}" ha rebut un vot negatiu.
150
+ notification_title: El teu <a href="%{resource_path}">comentari</a> a "%{resource_title}" ha rebut un vot negatiu. Ara té un total de %{upvotes} vots positius i %{downvotes} vots negatius.
151
+ comment_upvoted:
152
+ email_intro: El teu comentari a "%{resource_title}" ha rebut un vot positiu. Ara té un total de %{upvotes} vots positius i %{downvotes} vots negatius.
153
+ email_outro: Has rebut aquesta notificació perquè vas fer aquest comentari.
154
+ email_subject: El teu comentari a "%{resource_title}" ha rebut un vot positiu.
155
+ notification_title: El teu <a href="%{resource_path}">comentari</a> a "%{resource_title}" ha rebut un vot positiu. Ara té un total de %{upvotes} vots positius i %{downvotes} vots negatius.
156
+ reply_created:
157
+ email_intro: "%{author_name} ha respost el teu comentari a %{resource_title}. Pots llegir-lo en aquesta pàgina:"
158
+ email_outro: Has rebut aquesta notificació perquè s'ha respost el teu comentari.
159
+ email_subject: "%{author_name} ha respost el teu comentari a %{resource_title}"
160
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> ha respost el teu comentari a <a href="%{resource_path}">%{resource_title}</a>
161
+ user_group_mentioned:
162
+ email_intro: Un grup al qual pertanys ha estat esmentat
163
+ email_outro: Has rebut aquesta notificació perquè formes part del grup "%{group_name}" que ha estat esmentat a %{resource_title}.
164
+ email_subject: T'han esmentat a %{resource_title} com a membre de %{group_name}
165
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> t'ha esmentat com a membre de <a href="%{group_path}">%{group_name} %{group_nickname}</a> a <a href="%{resource_path}">%{resource_title}</a>
166
+ user_mentioned:
167
+ email_intro: Has estat esmentada
168
+ email_outro: Has rebut aquesta notificació perquè t'han esmentat al comentari "%{resource_title}".
169
+ email_subject: Has estat esmentada a %{resource_title}
170
+ notification_title: Has estat esmentada a <a href="%{resource_path}">%{resource_title}</a> per <a href="%{author_path}">%{author_name} %{author_nickname}</a>
171
+ metrics:
172
+ comments:
173
+ description: Nombre de comentaris generats per les participants
174
+ object: comentaris
175
+ title: Comentaris
176
+ errors:
177
+ messages:
178
+ cannot_have_comments: no es poden fer comentaris
@@ -24,6 +24,8 @@ ca:
24
24
  enabled: Comentaris habilitats
25
25
  end_time: Comentaris habilitats fins al
26
26
  start_time: Comentaris habilitats des de
27
+ comment_thread:
28
+ accessibility_label: Fil de comentaris iniciat per %{full_name} el %{date}
27
29
  comments:
28
30
  create:
29
31
  error: S'ha produït un error en crear el comentari.
@@ -137,7 +139,7 @@ ca:
137
139
  email_subject: Hi ha un nou comentari de %{author_name} en %{resource_title}
138
140
  notification_title: Hi ha un nou comentari per <a href="%{author_path}">%{author_name} %{author_nickname}</a> a <a href="%{resource_path}">%{resource_title}</a>.
139
141
  comment_created:
140
- email_intro: "S'ha comentat %{resource_title}. Pots llegir el comentari d'aquesta pàgina:"
142
+ email_intro: "Algú ha deixat un comentari a \"%{resource_title}\". Pots llegir el comentari a través del següent enllaç:"
141
143
  email_outro: Has rebut aquesta notificació perquè estàs seguint el comentari "%{resource_title}" o la seva autora. Pots deixar de seguir-la des de l'enllaç anterior.
142
144
  email_subject: Hi ha un nou comentari de %{author_name} a %{resource_title}
143
145
  notification_title: Hi ha un nou comentari de <a href="%{author_path}">%{author_name} %{author_nickname}</a> en <a href="%{resource_path}">%{resource_title}</a>
@@ -24,6 +24,8 @@ de:
24
24
  enabled: Kommentare aktiviert
25
25
  end_time: Kommentare aktiviert bis
26
26
  start_time: Kommentare aktiviert von
27
+ comment_thread:
28
+ accessibility_label: Kommentar-Thread gestartet von %{full_name} am %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Beim Erstellen des Kommentars ist ein Fehler aufgetreten.
@@ -87,7 +89,7 @@ de:
87
89
  details: Zusätzliche Kommentare
88
90
  reasons:
89
91
  does_not_belong: Enthält illegale Aktivitäten, Selbstmorddrohungen, persönliche Informationen oder etwas anderes, von dem Sie denken, dass es nicht auf %{organization_name} gehört.
90
- offensive: Enthält Rassismus, Sexismus, Verleumdungen, persönliche Angriffe, Morddrohungen, Selbstmordanträge oder jegliche Form von Hassreden.
92
+ offensive: Enthält Formen von Rassismus, Sexismus, Verleumdungen, persönliche Angriffe, Morddrohungen, Selbstmordanträge oder andere Formen von seelischer Gewalt.
91
93
  spam: Enthält Clickbait, Werbung, Scams oder Script Bots.
92
94
  title: Ungeeigneten Inhalt melden
93
95
  show_replies:
@@ -24,6 +24,8 @@ en:
24
24
  enabled: Comments enabled
25
25
  end_time: Comments enabled until
26
26
  start_time: Comments enabled from
27
+ comment_thread:
28
+ accessibility_label: Comment thread started by %{full_name} on %{date}
27
29
  comments:
28
30
  create:
29
31
  error: There was a problem creating the comment.
@@ -24,6 +24,8 @@ es-MX:
24
24
  enabled: Comentarios habilitados
25
25
  end_time: Comentarios habilitados hasta
26
26
  start_time: Comentarios habilitados desde
27
+ comment_thread:
28
+ accessibility_label: Hilo de comentario iniciado por %{full_name} el %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Se ha producido un error al crear el comentario.
@@ -24,6 +24,8 @@ es-PY:
24
24
  enabled: Comentarios habilitados
25
25
  end_time: Comentarios habilitados hasta
26
26
  start_time: Comentarios habilitados desde
27
+ comment_thread:
28
+ accessibility_label: Hilo de comentario iniciado por %{full_name} el %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Se ha producido un error al crear el comentario.
@@ -24,6 +24,8 @@ es:
24
24
  enabled: Comentarios habilitados
25
25
  end_time: Comentarios habilitados hasta
26
26
  start_time: Comentarios habilitados desde
27
+ comment_thread:
28
+ accessibility_label: Hilo de comentario iniciado por %{full_name} el %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Se ha producido un error al crear el comentario.
@@ -137,7 +139,7 @@ es:
137
139
  email_subject: Hay un nuevo comentario de %{author_name} en %{resource_title}
138
140
  notification_title: Hay un nuevo comentario de <a href="%{author_path}">%{author_name} %{author_nickname}</a> en <a href="%{resource_path}">%{resource_title}</a>.
139
141
  comment_created:
140
- email_intro: "%{resource_title} ha sido comentado. Puedes leer el comentario en esta página:"
142
+ email_intro: "Alguien ha dejado un comentario en \"%{resource_title}\". Puedes leer el comentario a través del siguiente enlace:"
141
143
  email_outro: Has recibido esta notificación porque estás siguiendo el comentario "%{resource_title}" o a su autora. Puedes dejar de seguirla desde el enlace anterior.
142
144
  email_subject: Hay un nuevo comentario de %{author_name} en %{resource_title}
143
145
  notification_title: Hay un nuevo comentario de <a href="%{author_path}">%{author_name} %{author_nickname}</a> en <a href="%{resource_path}">%{resource_title}</a>
@@ -14,16 +14,18 @@ eu:
14
14
  one: Iruzkina
15
15
  other: Iruzkinak
16
16
  decidim/comments/comment_vote:
17
- one: Bozkatu
18
- other: Botoak
17
+ one: Babesa
18
+ other: Babesak
19
19
  decidim:
20
20
  comments:
21
21
  admin:
22
22
  shared:
23
23
  availability_fields:
24
24
  enabled: Iruzkinak gaituta
25
- end_time: Iruzkinak gaituta daude
25
+ end_time: Iruzkinak noiz arte gaituta
26
26
  start_time: Iruzkinak noiztik aktibatuta
27
+ comment_thread:
28
+ accessibility_label: '%{full_name} -k %{date} -(e)an hasitako iruzkin-haria'
27
29
  comments:
28
30
  create:
29
31
  error: Arazo bat egon da iruzkina sortzean.
@@ -33,10 +35,10 @@ eu:
33
35
  error: Arazo bat ego da iruzkina eguneratzean.
34
36
  comments_title: Iruzkina
35
37
  last_activity:
36
- new_comment: 'Beste iruzkin bat:'
38
+ new_comment: 'Iruzkin berria:'
37
39
  votes:
38
40
  create:
39
- error: Arazo bat egon da iruzkina bozkatzean.
41
+ error: Arazo bat dago iruzkina bozkatzeko.
40
42
  components:
41
43
  add_comment_form:
42
44
  account_message: Sortu kontu bat <a href="%{sign_in_url}">Log in</a> edo <a href="%{sign_up_url}"> </a> zure iruzkina gehitzeko.
@@ -45,8 +47,8 @@ eu:
45
47
  label: Iruzkina
46
48
  placeholder: Zer deritzozu honi?
47
49
  form_error: Testua behar da, eta ezin du izan %{length} karaktere baino gehiago.
48
- submit_reply: Argitaratu erantzuna
49
- submit_root_comment: Argitaratu iruzkina
50
+ submit_reply: Erantzuna argitaratu
51
+ submit_root_comment: Iruzkina argitaratu
50
52
  user_group_id:
51
53
  label: 'Egin iruzkina honako honen gisa:'
52
54
  opinion:
@@ -57,14 +59,14 @@ eu:
57
59
  neutral_selected: Zure iritzia gai honi buruz neutroa da
58
60
  positive: Positiboa
59
61
  positive_selected: Zure iritzia gai honi buruz positiboa da
60
- remaining_characters: "%{count} karaktere geratzen dira"
62
+ remaining_characters: "%{count} kakaktere geratzen dira"
61
63
  remaining_characters_1: "karaktere %{count} geratzen da"
62
64
  title: Gehitu zure iruzkina
63
65
  comment:
64
66
  alignment:
65
67
  against: Aurka
66
68
  in_favor: Alde
67
- cancel_reply: Ezeztatu erantzuna
69
+ cancel_reply: Erantzuna ezabatu
68
70
  comment_label: Iruzkindu %{comment_id}
69
71
  comment_label_reply: Iruzkindu %{comment_id} (erantzun %{parent_comment_id} iruzkinei)
70
72
  confirm_destroy: Ziur zaude iruzkin hau ezabatu nahi duzula?
@@ -74,17 +76,20 @@ eu:
74
76
  deleted_user: Parte-hartzailea ezabatua
75
77
  edit: Editatu
76
78
  edited: Editatuta
79
+ hide_replies:
80
+ one: Ezkutatu erantzuna
81
+ other: Ezkutatu %{count} erantzun
77
82
  moderated_at: Iruzkina %{date}-an moderatu egin da
78
83
  reply: Erantzuna
79
84
  report:
80
85
  action: Salatu
81
- already_reported: Eduki hau jada salatuta dago, eta administratzaile batek.
86
+ already_reported: Eduki horren berri eman da eta administratzaile batek berrikusiko du.
82
87
  close: Itxi
83
88
  description: Eduki hau desegokia da?
84
89
  details: Iruzkin gehigarriak
85
90
  reasons:
86
91
  does_not_belong: Bertan badago legez kontrako jardunik, suizidio-mehatxurik, informazio pertsonalik edo beste zernahi, zure ustez %{organization_name}-ri ez dagokionik.
87
- offensive: Ertan badago arrazakeriarik, sexismorik, irainik, eraso pertsonalik, heriotza-mehatxurik, suizidio-eskaerarik edo beste edozein eratako gorroto-diskurtsorik.
92
+ offensive: Arrazakeria, sexismoa, laidoak, eraso pertsonalak, heriotza-mehatxuak, suizidio eskaerak edo gorrotozko edozein diskurtso.
88
93
  spam: Bertan badago clickbait-ik, publizitaterik edo iruzurrik.
89
94
  title: Jakinarazi eduki desegokia
90
95
  show_replies:
@@ -99,15 +104,15 @@ eu:
99
104
  recent: Berrienak
100
105
  title: 'Ordenatu honen arabera:'
101
106
  comments:
102
- blocked_comments_for_unauthorized_user_warning: Egiaztatuta egon behar zara momentu honetan iruzkina egiteko, baina aurreko iruzkinak irakur ditzakezu.
107
+ blocked_comments_for_unauthorized_user_warning: Egiaztatuta egon behar zara momentu honetan iruzkin bat egiteko, baina aurreko iruzkinak irakur ditzakezu.
103
108
  blocked_comments_for_user_warning: Oraindik ez duzu iruzkinik egin, baina aurrekoak irakurri ditzakezu.
104
109
  blocked_comments_warning: Iruzkinak desgaituta daude une honetan, baina aurrekoak irakur ditzakezu.
105
110
  comment_details_title: Iruzkinaren xehetasunak
106
111
  loading: Iruzkinak kargatzen...
107
- single_comment_warning: <a href="%{url}">k erakusten ditu iruzkin guztiak</a>
112
+ single_comment_warning: <a href="%{url}"> iruzkin guztiak ikusgai </a>
108
113
  single_comment_warning_title: Iruzkin bakar bat ikusten ari zara
109
114
  title:
110
- one: "%{count} iruzkin"
115
+ one: "Iruzkin bat"
111
116
  other: "%{count} iruzkin"
112
117
  down_vote_button:
113
118
  text: Ez nago ados iruzkin honekin
@@ -125,39 +130,39 @@ eu:
125
130
  comments:
126
131
  comment_by_followed_user:
127
132
  email_intro: "%{author_name} egileak iruzkin bat utzi du %{resource_title} helbidean. Orri honetan irakur dezakezu:"
128
- email_outro: Jakinarazpen hau jaso duzu %{author_name} erabiltzailea jarraitzen duzulako. Nahi izatekotan erabiltzaile hori bere profil-orritik jarraitzeari utz diezaiokezu.
129
- email_subject: '%{author_name} k beste iruzkin bat egin du hemen: %{resource_title}'
130
- notification_title: '<a href="%{author_path}">%{author_name} %{author_nickname}</a> k iruzkin berri bat egin du hemen: <a href="%{resource_path}">%{resource_title}</a>-an.'
133
+ email_outro: Jakinarazpen hau jaso duzu %{author_name} parte-hartzailea jarraitzen duzulako. Nahi izatekotan erabiltzaile hori bere profil-orritik jarraitzeari utz diezaiokezu.
134
+ email_subject: '%{author_name} egileak beste iruzkin bat egin du hemen: %{resource_title}'
135
+ notification_title: '<a href="%{author_path}">%{author_name} %{author_nickname}</a> parte-hartzaileak iruzkin berri bat egin du hemen: <a href="%{resource_path}">%{resource_title}</a>.'
131
136
  comment_by_followed_user_group:
132
- email_intro: '%{author_name} k iruzkin bat utzi du hemen %{resource_title}. Orrialde honetan irakur dezakezu:'
137
+ email_intro: '%{author_name} taldeak iruzkin bat utzi du hemen: %{resource_title}. Orrialde honetan irakur dezakezu:'
133
138
  email_outro: Jakinarazpena jaso duzu "%{author_name}" jarraitzen ari zarelako. Jarraitzeari utzi ahal diozu bere perfileko orrialdetik.
134
- email_subject: '%{author_name} egileak iruzkin berri bat utzi du hemen: %{resource_title}'
135
- notification_title: '<a href="%{author_path}">%{author_name} %{author_nickname}</a>egileak iruzkin berri bat utzi du hemen: <a href="%{resource_path}">%{resource_title}</a>-an.'
139
+ email_subject: '%{author_name} egileak beste iruzkin bat egin du hemen: %{resource_title}'
140
+ notification_title: '<a href="%{author_path}">%{author_name} %{author_nickname}</a> parte-hartzaileak iruzkin berri bat egin du hemen: <a href="%{resource_path}">%{resource_title}</a>.'
136
141
  comment_created:
137
- email_intro: "%{resource_title} iruzkindu da. Orri honetan irakur dezakezu iruzkina:"
142
+ email_intro: "Norbaitek iruzkin bat egin du hemen: %{resource_title}. Orri honetan irakur dezakezu:"
138
143
  email_outro: Jakinarazpen hau jaso duzu "%{resource_title}" edo bere egilea jarraitzen duzulako. Aurreko estekan jarrai dezakezu.
139
- email_subject: '%{author_name} k beste iruzkin berri bat egin du hemen: %{resource_title}'
140
- notification_title: '<a href="%{author_path}">%{author_name} %{author_nickname}</a> k iruzkin berri bat egin du hemen: <a href="%{resource_path}">%{resource_title}</a></a>'
144
+ email_subject: '%{author_name} egileak beste iruzkin berri bat egin du hemen: %{resource_title}'
145
+ notification_title: '<a href="%{author_path}">%{author_name} %{author_nickname}</a> parte-hartzaileak iruzkin berri bat egin du hemen: <a href="%{resource_path}">%{resource_title}</a>'
141
146
  comment_downvoted:
142
- email_intro: Zure iruzkina hemen "%{resource_title}" negatiboki bozkatu da. Orain %{upvotes} boto positibo eta %{downvotes} boto negatibo dituzu guztira.
147
+ email_intro: Zure iruzkina hemen "%{resource_title}" negatiboki bozkatu da. Orain %{upvotes} babes positibo eta %{downvotes} boto negatibo dituzu guztira.
143
148
  email_outro: Jakinarazpen hau jaso duzu iruzkin honen egilea zarelako.
144
- email_subject: Zure iruzkina hemen "%{resource_title}" negatiboki bozkatu da.
145
- notification_title: Zure <a href="%{resource_path}">iruzkina</a> hemen "%{resource_title}" negatiboki bozkatu da. Orain guztira %{upvotes} boto positibo eta %{downvotes} boto negatibo dituzu.
149
+ email_subject: Zure iruzkina hemen "%{resource_title}" ez da norbaiten gustukoa izan.
150
+ notification_title: Zure <a href="%{resource_path}">iruzkinak</a> hemen "%{resource_title}" kontrako botoa izan du. Orain guztira %{upvotes} aldeko eta %{downvotes} kontrako boto dituzu.
146
151
  comment_upvoted:
147
- email_intro: Zure iruzkina hemen "%{resource_title}" positiboki bozkatu da. Orain guztira %{upvotes} boto positibo eta %{downvotes} boto negatibo dituzu.
152
+ email_intro: Zure iruzkina hemen "%{resource_title}" norbaiten gustukoa izan da. Orain guztira %{upvotes} atsegin eta %{downvotes} ezatsegin dituzu.
148
153
  email_outro: Jakinarazpen hau jaso duzu iruzkin honen egilea zarelako.
149
- email_subject: Zure iruzkina hemen "%{resource_title}" positiboki bozkatu da.
150
- notification_title: Zure <a href="%{resource_path}">iruzkina </a> "%{resource_title}"-an positiboki bozkatu da. Orain guztira %{upvotes} botos positibo eta %{downvotes} boto negatibo dituzu.
154
+ email_subject: Zure iruzkina hemen "%{resource_title}" norbaiten gustukoa izan da.
155
+ notification_title: Zure <a href="%{resource_path}">iruzkina </a> "%{resource_title}"-an norbaiten gustukoa izan da. Orain guztira %{upvotes} atsegin eta %{downvotes} ezatsegin dituzu.
151
156
  reply_created:
152
- email_intro: "%{author_name} k zure iruzkina erantzun du hemen: %{resource_title}. Orri honetan irakur dezakezu:"
153
- email_outro: Jakinarazpen hau jaso duzu zure iruzkina erantzun delako.
154
- email_subject: "%{author_name}-k zure iruzkina erantzun du hemen: %{resource_title}"
155
- notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> -k zure iruzkinari erantzun dio <a href="%{resource_path}">%{resource_title}</a>
157
+ email_intro: "%{author_name} egileak zure iruzkina erantzun du hemen: %{resource_title}. Orri honetan irakur dezakezu:"
158
+ email_outro: Jakinarazpen hau jaso duzu zure iruzkinak erantzuna izan duelako.
159
+ email_subject: "%{author_name} parte-hartzaileak zure iruzkina erantzun du hemen: %{resource_title}"
160
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> -k zure iruzkinari erantzun dio hemen <a href="%{resource_path}">%{resource_title}</a>
156
161
  user_group_mentioned:
157
162
  email_intro: Zure talde bat aipatu dute
158
163
  email_outro: '%{resource_title}-an aipatutako %{group_name} taldeko kidea zarelako jaso duzu jakinarazpen hau.'
159
- email_subject: Hemen %{resource_title} aipatu zaituzte %{group_name} taldearen kide gisa
160
- notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> k aipatu zaitu hemen <a href="%{resource_path}">%{resource_title}</a> <a href="%{group_path}">%{group_name} %{group_nickname}</a> taldearen kide gisa
164
+ email_subject: Hemen %{resource_title} aipatu zaituzte %{group_name} taldeko kide gisa
165
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> parte-hartzaileak aipatu zaitu, hemen <a href="%{resource_path}">%{resource_title}</a> <a href="%{group_path}">%{group_name} %{group_nickname}</a> taldeko kide gisa
161
166
  user_mentioned:
162
167
  email_intro: Aipatu zaituzte
163
168
  email_outro: 'Jakinarazpen hau jaso duzu hemen: %{resource_title} aipatu zaituztelako.'
@@ -165,7 +170,7 @@ eu:
165
170
  notification_title: 'Hemen: <a href="%{group_path}">%{group_name} %{group_nickname}</a> egile honek: <a href="%{author_path}">%{author_name} %{author_nickname}</a> aipatu zaitu'
166
171
  metrics:
167
172
  comments:
168
- description: Erabiltzaileek sortutako iruzkin kopurua
173
+ description: Parte-hatzaileek sortutako iruzkin kopurua
169
174
  object: iruzkinak
170
175
  title: Iruzkinak
171
176
  errors:
@@ -89,7 +89,7 @@ fi:
89
89
  does_not_belong: Sisältää laitonta toimintaa, itsemurhauhkailua, henkilökohtaisia tietoja tai jotain muuta, jonka et usko kuuluvan %{organization_name} -palveluun.
90
90
  offensive: Sisältää rasismia, seksismiä, haukkumista, henkilökohtaisia hyökkäyksiä, tappouhkauksia, itsemurhapyyntöjä tai muuta vihapuhetta.
91
91
  spam: Sisältää klikkihoukutteita, mainostusta, huijauksia tai bottiskriptejä.
92
- title: Ilmoita asiatonta sisältöä
92
+ title: Ilmoita epäasiallista sisältöä
93
93
  show_replies:
94
94
  one: Näytä vastaus
95
95
  other: Näytä %{count} vastausta
@@ -102,7 +102,7 @@ fi:
102
102
  recent: Uusimmat
103
103
  title: 'Järjestä tulokset:'
104
104
  comments:
105
- blocked_comments_for_unauthorized_user_warning: Tilisi tulee olla varmennettu, jotta voit kommentoida tällä hetkellä. Voit kuitenkin lukea muiden jättämiä kommentteja.
105
+ blocked_comments_for_unauthorized_user_warning: Tilisi tulee olla vahvistettu, jotta voit kommentoida tällä hetkellä. Voit kuitenkin lukea muiden jättämiä kommentteja.
106
106
  blocked_comments_for_user_warning: Et voi kommentoida tällä hetkellä, mutta voit lukea aikaisempia kommentteja.
107
107
  blocked_comments_warning: Kommentit on poistettu käytöstä tällä hetkellä, mutta voit lukea aikaisempia kommentteja.
108
108
  comment_details_title: Kommentin yksityiskohdat
@@ -128,7 +128,7 @@ fi:
128
128
  comments:
129
129
  comment_by_followed_user:
130
130
  email_intro: "%{author_name} on jättänyt kommentin kohteessa %{resource_title}. Voit lukea sen sivulta:"
131
- email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat %{author_name}. Voit perua seuraamisen kyseisen käyttäjän profiilisivulta.
131
+ email_outro: Tämä ilmoitus on lähetetty sinulle, koska seuraat osallistujaa %{author_name}. Voit perua seuraamisen kyseisen osallistujan profiilisivulta.
132
132
  email_subject: '%{author_name} on jättänyt uuden kommentin kohteessa %{resource_title}'
133
133
  notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> on jättänyt uuden kommentin kohteessa <a href="%{resource_path}">%{resource_title}</a>.
134
134
  comment_by_followed_user_group:
@@ -155,7 +155,7 @@ fi:
155
155
  email_intro: "%{author_name} on vastannut kommentiisi kohdassa %{resource_title}. Voit lukea sen sivulta:"
156
156
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska kommenttiisi vastattiin.
157
157
  email_subject: "%{author_name} on vastannut kommentiisi %{resource_title}"
158
- notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> on vastannut kommentiisi kohdassa <a href="%{resource_path}">%{resource_title}</a>
158
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> on vastannut kommentiisi kohteessa <a href="%{resource_path}">%{resource_title}</a>
159
159
  user_group_mentioned:
160
160
  email_intro: Ryhmä, jonka jäsen olet, on mainittu
161
161
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska olet jäsenenä ryhmässä %{group_name} ja ryhmä on mainittu kohteessa %{resource_title}.
@@ -165,7 +165,7 @@ fi:
165
165
  email_intro: Sinut on mainittu
166
166
  email_outro: Tämä ilmoitus on lähetetty sinulle, koska sinut on mainittu kohteessa %{resource_title}.
167
167
  email_subject: Sinut on mainittu kohdassa %{resource_title}
168
- notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> on maininnut sinut kohdassa <a href="%{resource_path}">%{resource_title}</a>
168
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> on maininnut sinut kohteessa <a href="%{resource_path}">%{resource_title}</a>
169
169
  metrics:
170
170
  comments:
171
171
  description: Käyttäjien kirjoittamien kommenttien määrä
@@ -24,6 +24,8 @@ fr-CA:
24
24
  enabled: Commentaires activés
25
25
  end_time: Commentaires activés jusqu'à
26
26
  start_time: Commentaires activés depuis
27
+ comment_thread:
28
+ accessibility_label: Fil de commentaires démarré par %{full_name} le %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Une erreur s'est produite lors de la création du commentaire.
@@ -24,6 +24,8 @@ fr:
24
24
  enabled: Commentaires activés
25
25
  end_time: Commentaires activés jusqu'à
26
26
  start_time: Commentaires activés depuis
27
+ comment_thread:
28
+ accessibility_label: Fil de commentaires démarré par %{full_name} le %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Une erreur s'est produite lors de la création du commentaire.
@@ -33,6 +33,7 @@ it:
33
33
  error: Ci sono stati errori durante la votazione del commento.
34
34
  components:
35
35
  add_comment_form:
36
+ account_message: <a href="%{sign_in_url}">Accedi</a> oppure <a href="%{sign_up_url}">crea un account</a> per aggiungere un tuo commento.
36
37
  form:
37
38
  body:
38
39
  label: Commenta
@@ -22,6 +22,8 @@ ja:
22
22
  enabled: コメントを有効にする
23
23
  end_time: 次の時点までのコメントを有効にする
24
24
  start_time: 次の時点からコメントを有効にする
25
+ comment_thread:
26
+ accessibility_label: '%{full_name} が %{date} に開始したコメントスレッド'
25
27
  comments:
26
28
  create:
27
29
  error: コメントの登録に問題がありました。
@@ -6,7 +6,7 @@ lt:
6
6
  decidim/comments/comment_created_event: Komentarai
7
7
  decidim/comments/comment_upvoted_event: Komentaras palaikytas
8
8
  decidim/comments/reply_created_event: Atsakymas į komentarą
9
- decidim/comments/user_group_mentioned_event: Paminėjimas
9
+ decidim/comments/user_group_mentioned_event: Paminėti
10
10
  decidim/comments/user_mentioned_event: Paminėti
11
11
  activerecord:
12
12
  models:
@@ -140,7 +140,7 @@ pl:
140
140
  email_intro: 'Grupa %{author_name} dodała komentarz do %{resource_title}. Możesz go przeczytać na tej stronie:'
141
141
  email_outro: Otrzymujesz to powiadomienie, ponieważ obserwujesz %{author_name}. Możesz przestać obserwować tę grupę z poziomu jej strony profilowej.
142
142
  email_subject: Jest nowy komentarz dodany przez %{author_name} do %{resource_title}
143
- notification_title: Pojawił się nowy komentarz <a href="%{author_path}">%{author_name} %{author_nickname}</a> do <a href="%{resource_path}">%{resource_title}</a>.
143
+ notification_title: Pojawił się nowy komentarz dodany przez <a href="%{author_path}">%{author_name} %{author_nickname}</a> do <a href="%{resource_path}">%{resource_title}</a>.
144
144
  comment_created:
145
145
  email_intro: "Nowy komentarz: %{resource_title}. Możesz go przeczytać na tej stronie:"
146
146
  email_outro: Otrzymujesz to powiadomienie, ponieważ obserwujesz "%{resource_title}" lub jego autora. Możesz przestać go obserwować po kliknięciu w poprzedni link.
@@ -3,11 +3,11 @@ ro:
3
3
  activemodel:
4
4
  models:
5
5
  decidim/comments/comment_by_followed_user_event: Comentariu
6
- decidim/comments/comment_created_event: Comentează
7
- decidim/comments/comment_upvoted_event: Comentariu votat
6
+ decidim/comments/comment_created_event: Comentariu
7
+ decidim/comments/comment_upvoted_event: Comentariu votat favorabil
8
8
  decidim/comments/reply_created_event: Răspuns la comentariu
9
- decidim/comments/user_group_mentioned_event: Menționează
10
- decidim/comments/user_mentioned_event: Menționează
9
+ decidim/comments/user_group_mentioned_event: Menționați
10
+ decidim/comments/user_mentioned_event: Menționați
11
11
  activerecord:
12
12
  models:
13
13
  decidim/comments/comment:
@@ -26,6 +26,8 @@ ro:
26
26
  enabled: Comentarii activate
27
27
  end_time: Comentarii activate până la
28
28
  start_time: Comentarii activate de la
29
+ comment_thread:
30
+ accessibility_label: Comentariile au fost inițiate de %{full_name} începând cu %{date}
29
31
  comments:
30
32
  create:
31
33
  error: A apărut o problemă la crearea comentariului.
@@ -45,20 +47,20 @@ ro:
45
47
  form:
46
48
  body:
47
49
  label: Comentariu
48
- placeholder: Ce părere aveţi despre asta?
50
+ placeholder: Ce părere aveți despre asta?
49
51
  form_error: Textul este obligatoriu și nu poate fi mai lung de %{length} caractere.
50
52
  submit_reply: Publicați răspuns
51
53
  submit_root_comment: Publicați comentariu
52
54
  user_group_id:
53
55
  label: Comentați în calitate de
54
56
  opinion:
55
- label: Opinia ta despre acest subiect
57
+ label: Opinia dumneavoastră despre acest subiect
56
58
  negative: Negativ
57
- negative_selected: Opinia ta despre acest subiect este negativă
59
+ negative_selected: Opinia dumneavoastră despre acest subiect este negativă
58
60
  neutral: Neutru
59
- neutral_selected: Opinia ta despre acest subiect este neutră
61
+ neutral_selected: Opinia dumneavoastră despre acest subiect este neutră
60
62
  positive: Pozitiv
61
- positive_selected: Opinia ta despre acest subiect este pozitivă
63
+ positive_selected: Opinia dumneavoastră despre acest subiect este pozitivă
62
64
  remaining_characters: "%{count} caractere rămase"
63
65
  remaining_characters_1: "%{count} caracter rămas"
64
66
  title: Adaugați comentariul dumneavoastră
@@ -66,12 +68,12 @@ ro:
66
68
  alignment:
67
69
  against: Împotrivă
68
70
  in_favor: Pentru
69
- cancel_reply: Anulează răspunsul
71
+ cancel_reply: Anulați răspunsul
70
72
  comment_label: Comentariu %{comment_id}
71
73
  comment_label_reply: Comentariu %{comment_id} (răspuns la comentariul %{parent_comment_id})
72
74
  confirm_destroy: Sigur doriți să ștergeți acest comentariu?
73
- controls_label: Control comentariu
74
- delete: Șterge
75
+ controls_label: Controale comentariu
76
+ delete: Ștergeți
75
77
  deleted_at: Comentariu șters pe %{date}
76
78
  deleted_user: Participant șters
77
79
  edit: Actualizare
@@ -81,23 +83,23 @@ ro:
81
83
  few: Ascundeți %{count} răspunsuri
82
84
  other: Ascundeți %{count} răspunsuri
83
85
  moderated_at: Comentariu moderat pe %{date}
84
- reply: Răspunde
86
+ reply: Răspundeți
85
87
  report:
86
- action: Raportează
88
+ action: Raportați
87
89
  already_reported: Acest conținut este deja raportat și va fi revizuit de către un administrator.
88
- close: Închide
89
- description: Este acest conținut neadecvat?
90
- details: Observaţii suplimentare
90
+ close: Închideți
91
+ description: Acest conținut este neadecvat?
92
+ details: Observații suplimentare
91
93
  reasons:
92
94
  does_not_belong: Conține activitate ilegală, amenințări cu sinuciderea, informații personale sau altceva ce consideri că nu aparține de %{organization_name}.
93
95
  offensive: Conține rasism, sexism, insulte, atacuri personale, amenințări cu moartea, cereri de sinucidere sau orice formă de discurs de incitare la ură.
94
96
  spam: Conține clickbait, publicitate, escrocherii sau script rulat de roboți.
95
97
  title: Raportați conținut nepotrivit
96
98
  show_replies:
97
- one: Arată răspunsul
98
- few: Arată %{count} răspunsuri
99
- other: Arată %{count} răspunsuri
100
- single_comment_link_title: Obține linkul
99
+ one: Arătați răspunsul
100
+ few: Arătați %{count} răspunsuri
101
+ other: Arătați %{count} răspunsuri
102
+ single_comment_link_title: Obțineți linkul
101
103
  comment_order_selector:
102
104
  order:
103
105
  best_rated: Cele mai apreciate
@@ -106,13 +108,13 @@ ro:
106
108
  recent: Recente
107
109
  title: 'Ordonare după:'
108
110
  comments:
109
- blocked_comments_for_unauthorized_user_warning: Trebuie să fii verificat pentru a trimite comentarii în acest moment, dar le poți citi pe cele anterioare.
110
- blocked_comments_for_user_warning: Nu poți comenta în acest moment, dar le poți citi pe cele anterioare.
111
+ blocked_comments_for_unauthorized_user_warning: Trebuie să fiți verificat pentru a face comentarii în acest moment, dar le puteți citi pe cele anterioare.
112
+ blocked_comments_for_user_warning: Nu puteți comenta în acest moment, dar le puteți citi pe cele anterioare.
111
113
  blocked_comments_warning: Comentariile sunt dezactivate în acest moment, dar le poți citi pe cele anterioare.
112
114
  comment_details_title: Detaliile comentariului
113
- loading: Se încarcă comentariile...
114
- single_comment_warning: <a href="%{url}">Vezi toate comentariile</a>
115
- single_comment_warning_title: Poți vedea un singur comentariu
115
+ loading: Comentariile se încarcă ...
116
+ single_comment_warning: <a href="%{url}">Vedeți toate comentariile</a>
117
+ single_comment_warning_title: Puteți vedea un singur comentariu
116
118
  title:
117
119
  one: "%{count} comentariu"
118
120
  few: "%{count} comentarii"
@@ -120,57 +122,57 @@ ro:
120
122
  down_vote_button:
121
123
  text: Nu sunt de acord cu acest comentariu
122
124
  edit_comment_modal_form:
123
- close: Închide
125
+ close: Închideți
124
126
  form:
125
127
  body:
126
128
  label: Comentariu
127
- placeholder: Ce părere ai despre asta?
128
- submit: Trimite
129
- title: Editează comentariul tău
129
+ placeholder: Ce părere aveţi despre asta?
130
+ submit: Actualizați
131
+ title: Modificați comentariul dumneavoastră
130
132
  up_vote_button:
131
133
  text: Sunt de acord cu acest comentariu
132
134
  events:
133
135
  comments:
134
136
  comment_by_followed_user:
135
- email_intro: "%{author_name} a lăsat un comentariu în %{resource_title}. Îl poți citi în această pagină:"
136
- email_outro: Ai primit această notificare deoarece urmărești pe „%{author_name}”. Poți anula abonarea de la acest utilizator de pe pagina sa de profil.
137
+ email_intro: "%{author_name} a lăsat un comentariu în %{resource_title}. Îl puteți citi pe această pagină:"
138
+ email_outro: Ați primit această notificare deoarece urmăriți activitatea lui %{author_name}. Puteți nu urmăriți acest utilizator de pe pagina lui de profil.
137
139
  email_subject: Există un nou comentariu de la %{author_name} pentru %{resource_title}
138
140
  notification_title: Există un comentariu nou de la <a href="%{author_path}">%{author_name} %{author_nickname}</a> pentru <a href="%{resource_path}">%{resource_title}</a>.
139
141
  comment_by_followed_user_group:
140
- email_intro: 'Grupul %{author_name} a lăsat un comentariu pentru %{resource_title}. Îl poți citi în această pagină:'
141
- email_outro: Ai primit această notificare deoarece urmărești grupul „%{author_name}”. Poți anula abonarea de la acest grup de pe pagina sa de profil.
142
+ email_intro: 'Grupul %{author_name} a lăsat un comentariu pentru %{resource_title}. Îl puteți citi în această pagină:'
143
+ email_outro: Ați primit această notificare deoarece urmăriți activitate lui %{author_name}. Puteți nu urmăriți acest grup de pe pagina sa de profil.
142
144
  email_subject: Există un nou comentariu de la %{author_name} pentru %{resource_title}
143
145
  notification_title: Există un comentariu nou de la <a href="%{author_path}">%{author_name} %{author_nickname}</a> pentru <a href="%{resource_path}">%{resource_title}</a>.
144
146
  comment_created:
145
147
  email_intro: "%{resource_title} a primit un comentariu. Poți citi comentariul pe această pagină:"
146
148
  email_outro: Ați primit această notificare deoarece urmăriți „%{resource_title}” sau pe autorii săi. Puteți anula abonarea de la link-ul anterior.
147
- email_subject: Există un nou comentariu de la %{author_name} pentru %{resource_title}
148
- notification_title: Există un nou comentariu de la <a href="%{author_path}">%{author_name} %{author_nickname}</a> pentru <a href="%{resource_path}">%{resource_title}</a>
149
+ email_subject: Există un comentariu nou de la %{author_name} pentru %{resource_title}
150
+ notification_title: Există un comentariu nou de la <a href="%{author_path}">%{author_name} %{author_nickname}</a> pentru <a href="%{resource_path}">%{resource_title}</a>
149
151
  comment_downvoted:
150
- email_intro: Comentariul tău pentru "%{resource_title}" a primit un vot nefavorabil. Acesta are acum un total de %{upvotes} voturi favorabile şi %{downvotes} voturi nefaborabile.
151
- email_outro: Ai primit această notificare deoarece ești autorul acestui comentariu.
152
- email_subject: Comentariul tău pentru "%{resource_title}" a primit un vot nefavorabil.
153
- notification_title: Comentariul tău <a href="%{resource_path}"></a> pentru "%{resource_title}" a primit un vot nefavorabil. Acum are un total de %{upvotes} voturi favorabile și %{downvotes} voturi nefavorabile.
152
+ email_intro: Comentariul dumneavoastră pentru "%{resource_title}" a primit un vot nefavorabil. Acesta are acum un total de %{upvotes} voturi favorabile și %{downvotes} voturi nefavorabile.
153
+ email_outro: Ați primit această notificare deoarece sunteți autorul acestui comentariu.
154
+ email_subject: Comentariul dumneavoastră pentru "%{resource_title}" a primit un vot nefavorabil.
155
+ notification_title: Comentariul dumneavoastră <a href="%{resource_path}"></a> pentru "%{resource_title}" a primit un vot nefavorabil. Acum are un total de %{upvotes} voturi favorabile și %{downvotes} voturi nefavorabile.
154
156
  comment_upvoted:
155
- email_intro: Comentariul tău pentru "%{resource_title}" a primit un vot favorabil. Acesta are acum un total de %{upvotes} voturi favorabile și %{downvotes} voturi nefavorabile.
156
- email_outro: Ai primit această notificare deoarece ești autorul acestui comentariu.
157
- email_subject: Comentariul tău pentru "%{resource_title}" a primit un vot favorabil.
158
- notification_title: Comentariul tău <a href="%{resource_path}"></a> în "%{resource_title}" a primit un vot favorabil. Acum are un total de %{upvotes} voturi faborabile și %{downvotes} voturi nefavorabile.
157
+ email_intro: Comentariul dumneavoastră pentru "%{resource_title}" a primit un vot favorabil. Acesta are acum un total de %{upvotes} voturi favorabile și %{downvotes} voturi nefavorabile.
158
+ email_outro: Ați primit această notificare deoarece sunteți autorul acestui comentariu.
159
+ email_subject: Comentariul dumneavoastră pentru "%{resource_title}" a primit un vot favorabil.
160
+ notification_title: Comentariul dumneavoastră <a href="%{resource_path}"></a> în "%{resource_title}" a primit un vot favorabil. Acum are un total de %{upvotes} voturi favorabile și %{downvotes} voturi nefavorabile.
159
161
  reply_created:
160
- email_intro: "%{author_name} a răspuns la comentariul tău pentru %{resource_title}. Îl poți citi în această pagină:"
161
- email_outro: Ai primit această notificare deoarece comentariul tău a primit un răspuns.
162
- email_subject: "%{author_name} a răspuns la comentariul tău pentru %{resource_title}"
163
- notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> a răspuns la comentariul tău pentru <a href="%{resource_path}">%{resource_title}</a>
162
+ email_intro: "%{author_name} a răspuns la comentariul dumneavoastră pentru %{resource_title}. Îl poți citi în această pagină:"
163
+ email_outro: Ați primit această notificare deoarece comentariul dumneavoastră a fost răspuns.
164
+ email_subject: "%{author_name} a răspuns la comentariul dumneavoastră pentru %{resource_title}"
165
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> a răspuns la comentariul dumneavoastră pentru <a href="%{resource_path}">%{resource_title}</a>
164
166
  user_group_mentioned:
165
- email_intro: Un grup de care aparți a fost menționat
166
- email_outro: Ai primit această notificare deoarece ești un membru al grupului %{group_name} care a fost menționat în %{resource_title}.
167
- email_subject: Ai fost menționat în %{resource_title} ca membru al %{group_name}
168
- notification_title: Ai fost menționat în <a href="%{resource_path}">%{resource_title}</a> de <a href="%{author_path}">%{author_name} %{author_nickname}</a> ca membru al <a href="%{group_path}">%{group_name} %{group_nickname}</a>
167
+ email_intro: Un grup căruia îi aparțineți a fost menționat
168
+ email_outro: Ați primit această notificare deoarece sunteți un membru al grupului %{group_name} care a fost menționat în %{resource_title}.
169
+ email_subject: Ai fost menționat(ă) în %{resource_title} ca membru al %{group_name}
170
+ notification_title: Ai fost menționat(ă) în <a href="%{resource_path}">%{resource_title}</a> de <a href="%{author_path}">%{author_name} %{author_nickname}</a> ca membru al <a href="%{group_path}">%{group_name} %{group_nickname}</a>
169
171
  user_mentioned:
170
- email_intro: Ai fost menționat(ă)
171
- email_outro: Ai primit această notificare deoarece ai fost menționat în %{resource_title}.
172
- email_subject: Ai fost menționat în %{resource_title}
173
- notification_title: Ai fost menționat în <a href="%{resource_path}">%{resource_title}</a> de către <a href="%{author_path}">%{author_name} %{author_nickname}</a>
172
+ email_intro: Ați fost menționat(ă)
173
+ email_outro: Ați primit această notificare deoarece ați fost menționat(ă) în %{resource_title}.
174
+ email_subject: Ați fost menționat(ă) în %{resource_title}
175
+ notification_title: Ați fost menționat(ă) în <a href="%{resource_path}">%{resource_title}</a> de către <a href="%{author_path}">%{author_name} %{author_nickname}</a>
174
176
  metrics:
175
177
  comments:
176
178
  description: Numărul de comentarii generate de participanți
@@ -24,6 +24,8 @@ sv:
24
24
  enabled: Aktivera kommentarer
25
25
  end_time: Kommentarer aktiverade till och med
26
26
  start_time: Kommentarer aktiverade från och med
27
+ comment_thread:
28
+ accessibility_label: Kommentartråden startad av %{full_name} den %{date}
27
29
  comments:
28
30
  create:
29
31
  error: Det gick inte att skapa kommentaren.
@@ -85,7 +85,7 @@ tr:
85
85
  comment_by_followed_user_group:
86
86
  email_intro: '%{author_name} grubu %{resource_title} alanında bir yorum bıraktı. Bu sayfada okuyabilirsiniz:'
87
87
  email_outro: Bu bildirimi %{author_name} adlı yazarı takip ettiğiniz için aldınız. Bu grubu profil sayfasından takip etmeyi bırakabilirsiniz.
88
- email_subject: '%{author_name}, %{resource_title} alanında yeni bir yorum yaptı'
88
+ email_subject: '%{author_name} %{resource_title} alanında yeni bir yorum yaptı'
89
89
  notification_title: <a href="%{resource_path}">%{resource_title} </a> içinde <a href="%{author_path}">%{author_name} %{author_nickname} </a> tarafından yeni bir yorum var.
90
90
  comment_created:
91
91
  email_intro: "%{resource_title} alanında yorum yapıldı. Bu sayfadaki yorumu okuyabilirsiniz:"
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
10
10
  s.version = Decidim::Comments.version
11
11
  s.authors = ["Josep Jaume Rey Peroy", "Marc Riera Casals", "Oriol Gual Oliva"]
12
12
  s.email = ["josepjaume@gmail.com", "mrc2407@gmail.com", "oriolgual@gmail.com"]
13
- s.license = "AGPL-3.0"
13
+ s.license = "AGPL-3.0-or-later"
14
14
  s.homepage = "https://decidim.org"
15
15
  s.metadata = {
16
16
  "bug_tracker_uri" => "https://github.com/decidim/decidim/issues",
@@ -84,6 +84,19 @@ module Decidim
84
84
  def user_allowed_to_comment
85
85
  object.root_commentable.commentable? && object.root_commentable.user_allowed_to_comment?(context[:current_user])
86
86
  end
87
+
88
+ def self.authorized?(object, context)
89
+ chain = []
90
+ if object.respond_to?(:commentable) && !object.commentable.is_a?(Decidim::Comments::Comment)
91
+ chain.unshift(allowed_to?(:read, object.commentable, object.commentable,
92
+ context))
93
+ end
94
+
95
+ chain.unshift(!object.hidden?)
96
+ chain.unshift(!object.deleted?)
97
+
98
+ super && chain.all?
99
+ end
87
100
  end
88
101
  end
89
102
  end
@@ -17,7 +17,7 @@ module Decidim
17
17
 
18
18
  field :comments_have_votes, GraphQL::Types::Boolean, "Whether the object comments have votes or not", method: :comments_have_votes?, null: false
19
19
 
20
- field :comments, [Decidim::Comments::CommentType], null: false do
20
+ field :comments, [Decidim::Comments::CommentType, { null: false }], null: false do
21
21
  argument :order_by, GraphQL::Types::String, "Order the comments", required: false
22
22
  argument :single_comment_id, GraphQL::Types::String, "ID of the single comment to look at", required: false
23
23
  end
@@ -45,6 +45,12 @@ module Decidim
45
45
  def user_allowed_to_comment
46
46
  object.commentable? && object.user_allowed_to_comment?(context[:current_user])
47
47
  end
48
+
49
+ definition_methods do
50
+ def resolve_type(object, _context)
51
+ GraphQL::Types.const_get("#{object.class.name}Type")
52
+ end
53
+ end
48
54
  end
49
55
  end
50
56
  end
@@ -9,6 +9,7 @@ module Decidim
9
9
  module CommentableWithComponent
10
10
  extend ActiveSupport::Concern
11
11
  include Decidim::Comments::Commentable
12
+ include Decidim::UserRoleChecker
12
13
 
13
14
  included do
14
15
  # Public: Overrides the `commentable?` Commentable concern method.
@@ -23,7 +24,8 @@ module Decidim
23
24
 
24
25
  # Public: Whether the object can have new comments or not.
25
26
  def user_allowed_to_comment?(user)
26
- return unless can_participate?(user)
27
+ return true if user_has_any_role?(user, component.participatory_space)
28
+ return false unless can_participate?(user)
27
29
 
28
30
  ActionAuthorizer.new(user, "comment", component, self).authorize.ok?
29
31
  end
@@ -11,7 +11,7 @@ module Decidim
11
11
  #
12
12
  # Returns nothing.
13
13
  def self.included(type)
14
- type.field :commentable, CommentableType, null: false do
14
+ type.field :commentable, Decidim::Comments::CommentableInterface do
15
15
  argument :id, GraphQL::Types::String, "The commentable's ID", required: true
16
16
  argument :type, GraphQL::Types::String, "The commentable's class name. i.e. `Decidim::ParticipatoryProcess`", required: true
17
17
  argument :locale, GraphQL::Types::String, "The locale for which to get the comments text", required: true
@@ -8,7 +8,7 @@ FactoryBot.define do
8
8
  skip_injection { false }
9
9
  end
10
10
  author { build(:user, organization: commentable.organization, skip_injection:) }
11
- commentable { build(:dummy_resource, skip_injection:) }
11
+ commentable { build(:dummy_resource, :published, skip_injection:) }
12
12
  root_commentable { commentable }
13
13
  body { Decidim::Faker::Localized.paragraph }
14
14
  participatory_space { commentable.try(:participatory_space) }
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This holds the decidim-comments version.
5
5
  module Comments
6
6
  def self.version
7
- "0.29.1"
7
+ "0.29.3"
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-comments
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.29.1
4
+ version: 0.29.3
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: 2024-10-02 00:00:00.000000000 Z
13
+ date: 2025-04-29 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: decidim-core
@@ -18,14 +18,14 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.29.1
21
+ version: 0.29.3
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 0.29.1
28
+ version: 0.29.3
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: redcarpet
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -52,28 +52,28 @@ dependencies:
52
52
  requirements:
53
53
  - - '='
54
54
  - !ruby/object:Gem::Version
55
- version: 0.29.1
55
+ version: 0.29.3
56
56
  type: :development
57
57
  prerelease: false
58
58
  version_requirements: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - '='
61
61
  - !ruby/object:Gem::Version
62
- version: 0.29.1
62
+ version: 0.29.3
63
63
  - !ruby/object:Gem::Dependency
64
64
  name: decidim-dev
65
65
  requirement: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - '='
68
68
  - !ruby/object:Gem::Version
69
- version: 0.29.1
69
+ version: 0.29.3
70
70
  type: :development
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - '='
75
75
  - !ruby/object:Gem::Version
76
- version: 0.29.1
76
+ version: 0.29.3
77
77
  description: Pluggable comments system for some components.
78
78
  email:
79
79
  - josepjaume@gmail.com
@@ -173,6 +173,9 @@ files:
173
173
  - config/locales/ar.yml
174
174
  - config/locales/bg-BG.yml
175
175
  - config/locales/bg.yml
176
+ - config/locales/bn-BD.yml
177
+ - config/locales/bs-BA.yml
178
+ - config/locales/ca-IT.yml
176
179
  - config/locales/ca.yml
177
180
  - config/locales/cs-CZ.yml
178
181
  - config/locales/cs.yml
@@ -299,7 +302,7 @@ files:
299
302
  - lib/tasks/upgrade/decidim_comments.rake
300
303
  homepage: https://decidim.org
301
304
  licenses:
302
- - AGPL-3.0
305
+ - AGPL-3.0-or-later
303
306
  metadata:
304
307
  bug_tracker_uri: https://github.com/decidim/decidim/issues
305
308
  documentation_uri: https://docs.decidim.org/