decidim-comments 0.25.2 → 0.26.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 (53) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/comments/comment/utilities.erb +2 -2
  3. data/app/cells/decidim/comments/comment_cell.rb +19 -1
  4. data/app/cells/decidim/comments/comment_form_cell.rb +9 -0
  5. data/app/cells/decidim/comments/comments/order_control.erb +1 -1
  6. data/app/cells/decidim/comments/edit_comment_modal_form/show.erb +2 -2
  7. data/app/cells/decidim/comments/edit_comment_modal_form_cell.rb +8 -0
  8. data/app/events/decidim/comments/comment_event.rb +36 -3
  9. data/app/events/decidim/comments/comment_voted_event.rb +4 -0
  10. data/app/models/decidim/comments/comment.rb +9 -7
  11. data/app/packs/src/decidim/comments/comments.component.test.js +2 -3
  12. data/app/services/decidim/comments/new_comment_notification_creator.rb +1 -1
  13. data/app/views/decidim/comments/admin/shared/_availability_fields.html.erb +15 -0
  14. data/config/locales/ar.yml +0 -1
  15. data/config/locales/ca.yml +1 -1
  16. data/config/locales/cs.yml +7 -1
  17. data/config/locales/de.yml +7 -1
  18. data/config/locales/el.yml +0 -1
  19. data/config/locales/en.yml +7 -1
  20. data/config/locales/es-MX.yml +0 -1
  21. data/config/locales/es-PY.yml +0 -1
  22. data/config/locales/es.yml +7 -1
  23. data/config/locales/eu.yml +7 -1
  24. data/config/locales/fi-plain.yml +7 -1
  25. data/config/locales/fi.yml +7 -1
  26. data/config/locales/fr-CA.yml +7 -1
  27. data/config/locales/fr.yml +7 -1
  28. data/config/locales/gl.yml +7 -1
  29. data/config/locales/hu.yml +0 -1
  30. data/config/locales/it.yml +7 -1
  31. data/config/locales/ja.yml +9 -3
  32. data/config/locales/lb-LU.yml +161 -0
  33. data/config/locales/lb.yml +0 -1
  34. data/config/locales/lv.yml +0 -1
  35. data/config/locales/nl.yml +7 -1
  36. data/config/locales/no.yml +0 -1
  37. data/config/locales/pl.yml +0 -1
  38. data/config/locales/pt-BR.yml +1 -2
  39. data/config/locales/pt.yml +7 -1
  40. data/config/locales/ro-RO.yml +7 -1
  41. data/config/locales/sk.yml +0 -1
  42. data/config/locales/sr-CS.yml +0 -1
  43. data/config/locales/sv.yml +7 -1
  44. data/config/locales/tr-TR.yml +0 -1
  45. data/config/locales/val-ES.yml +1 -0
  46. data/config/locales/zh-CN.yml +0 -1
  47. data/lib/decidim/comments/has_availability_attributes.rb +23 -0
  48. data/lib/decidim/comments/test/shared_examples/has_comments_availability_attributes.rb +76 -0
  49. data/lib/decidim/comments/test/shared_examples/translatable_comment.rb +18 -0
  50. data/lib/decidim/comments/test.rb +2 -0
  51. data/lib/decidim/comments/version.rb +1 -1
  52. data/lib/decidim/comments.rb +1 -0
  53. metadata +16 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d1e3298db6f46520ee3aec73dfd157903fdd6c2d04df4aecaa2f12adaa7459b8
4
- data.tar.gz: bed10b00feb2030206840417606cdb319e6c7b22c1a43bd97aaffa5f4b38c285
3
+ metadata.gz: 3e83817a1c75bea86a18203c7337082ff1985b080c40d59e29d66170f2b08e87
4
+ data.tar.gz: db421cb33aa1382ab61b6c35497b3eedba6df9337bc534490c38a13f2fc82354
5
5
  SHA512:
6
- metadata.gz: f93e2ace868d629d78f279ff19fae6abe67c9bee71c177dc2cb22b1c96a76b78834722b118f7206f210b9c28ff2f3126b57c68f84a5cb9fe49bd307275edd38f
7
- data.tar.gz: 609fd4dea72997a20dfea7570d2524a5f9a614521dde027fce2bec1cb696d5458ade26a7bb1e2697fe0bb27029b9a1de459060c00929c10f056a5e6f4719db29
6
+ metadata.gz: 822bce1d6c9aaec9fc7b9cf7ad7def2e1e3ed1b9c26c00d3547c05a4b566f40f38c9a332f563c780af86de97954a5a3da1f287ef69462ed00024f73bc0d33c26
7
+ data.tar.gz: bd08532ef5fa64c9a442466e8e881a70f7bedf4bef2a2650998193cc7b9817997c3d47dfd86015a2c4cd2c7ea6df6a302ec55b4cd0ac7d198a7cb3ceb3849d4b
@@ -4,7 +4,7 @@
4
4
  </label>
5
5
  <ul id="<%= context_menu_id %>" data-dropdown data-close-on-click="true" data-position="left" data-alignment="top" class="card dropdown-pane comment__header__context-menu__content">
6
6
  <li>
7
- <button type="button" class="link-alt comment__header__context-menu__content-item" data-open="<%= current_user.present? ? "flagModalComment#{model.id}" : "loginModal" %>" title="<%= t("decidim.components.comment.report.title") %>" aria-controls="<%= current_user.present? ? "flagModalComment#{model.id}" : "loginModal" %>" aria-haspopup="true" tabindex="0">
7
+ <button type="button" class="link-alt comment__header__context-menu__content-item" data-open="<%= current_user.present? ? "flagModalComment#{model.id}" : "loginModal" %>" title="<%= t("decidim.components.comment.report.title") %>" aria-controls="<%= current_user.present? ? "flagModalComment#{model.id}" : "loginModal" %>" aria-haspopup="dialog" tabindex="0">
8
8
  <%= icon "flag", class: "icon--small", aria_label: t("decidim.components.comment.report.title") %>
9
9
  <span><%= t("decidim.components.comment.report.action") %></span>
10
10
  </button>
@@ -17,7 +17,7 @@
17
17
  </li>
18
18
  <% if model.authored_by?(current_user) %>
19
19
  <li>
20
- <button type="button" class="link-alt comment__header__context-menu__content-item" data-open="<%= "editCommentModal#{model.id}" %>" title="<%= t("decidim.components.comment.edit") %>" aria-controls="<%= "editCommentModal#{model.id}" %>" aria-haspopup="true" tabindex="0">
20
+ <button type="button" class="link-alt comment__header__context-menu__content-item" data-open="<%= "editCommentModal#{model.id}" %>" title="<%= t("decidim.components.comment.edit") %>" aria-controls="<%= "editCommentModal#{model.id}" %>" aria-haspopup="dialog" tabindex="0">
21
21
  <%= icon "pencil", class: "icon--small", aria_label: t("decidim.components.comment.edit") %>
22
22
  <span><%= t("decidim.components.comment.edit") %></span>
23
23
  </button>
@@ -16,6 +16,7 @@ module Decidim
16
16
  property :deleted_at
17
17
  property :alignment
18
18
  property :translated_body
19
+ property :formatted_body
19
20
  property :comment_threads
20
21
  property :accepts_new_comments?
21
22
  property :edited?
@@ -32,14 +33,31 @@ module Decidim
32
33
  render :votes
33
34
  end
34
35
 
36
+ def perform_caching?
37
+ super && has_replies? == false
38
+ end
39
+
35
40
  private
36
41
 
42
+ def cache_hash
43
+ return @hash if defined?(@hash)
44
+
45
+ hash = []
46
+ hash.push(I18n.locale)
47
+ hash.push(model.must_render_translation?(current_organization) ? 1 : 0)
48
+ hash.push(model.authored_by?(current_user) ? 1 : 0)
49
+ hash.push(model.reported_by?(current_user) ? 1 : 0)
50
+ hash.push(model.cache_key_with_version)
51
+ hash.push(model.author.cache_key_with_version)
52
+ @hash = hash.join(Decidim.cache_key_separator)
53
+ end
54
+
37
55
  def decidim_comments
38
56
  Decidim::Comments::Engine.routes.url_helpers
39
57
  end
40
58
 
41
59
  def comment_body
42
- Decidim::ContentProcessor.render(translated_body)
60
+ formatted_body
43
61
  end
44
62
 
45
63
  def replies
@@ -17,6 +17,15 @@ module Decidim
17
17
 
18
18
  private
19
19
 
20
+ def cache_hash
21
+ hash = []
22
+ hash.push(I18n.locale)
23
+ hash.push(model.cache_key)
24
+ hash.push(order)
25
+ hash.push(current_user.try(:id))
26
+ hash.join(Decidim.cache_key_separator)
27
+ end
28
+
20
29
  def decidim_comments
21
30
  Decidim::Comments::Engine.routes.url_helpers
22
31
  end
@@ -12,7 +12,7 @@
12
12
  <a href="#" id="comments-order-menu-control"
13
13
  aria-label="<%= t("decidim.components.comment_order_selector.title") %>"
14
14
  aria-controls="comments-order-menu"
15
- aria-haspopup="true"
15
+ aria-haspopup="menu"
16
16
  role="menuitem"><%= t("decidim.components.comment_order_selector.order.#{order}") %></a>
17
17
  <ul class="menu is-dropdown-submenu submenu first-sub vertical"
18
18
  id="comments-order-chooser-menu"
@@ -1,6 +1,6 @@
1
- <div class="reveal edit-comment-modal" id="<%= "editCommentModal#{model.id}" %>" data-reveal>
1
+ <div class="reveal edit-comment-modal" id="<%= "editCommentModal#{model.id}" %>" data-reveal role="dialog" aria-modal="true" aria-labelledby="<%= "editCommentModal#{model.id}" %>-label">
2
2
  <div class="reveal__header">
3
- <h3 class="reveal__title"><%= t("decidim.components.edit_comment_modal_form.title") %></h3>
3
+ <h3 id="<%= "editCommentModal#{model.id}" %>-label" class="reveal__title"><%= t("decidim.components.edit_comment_modal_form.title") %></h3>
4
4
  <button class="close-button" data-close aria-label="<%= t("decidim.components.edit_comment_modal_form.close") %>" type="button">
5
5
  <span aria-hidden="true">&times;</span>
6
6
  </button>
@@ -9,6 +9,14 @@ module Decidim
9
9
 
10
10
  private
11
11
 
12
+ def cache_hash
13
+ hash = []
14
+ hash.push(I18n.locale)
15
+ hash.push(model.id)
16
+ hash.push(current_user.try(:id))
17
+ hash.join(Decidim.cache_key_separator)
18
+ end
19
+
12
20
  def decidim_comments
13
21
  Decidim::Comments::Engine.routes.url_helpers
14
22
  end
@@ -7,10 +7,12 @@ module Decidim
7
7
  module CommentEvent
8
8
  extend ActiveSupport::Concern
9
9
  include Decidim::Events::AuthorEvent
10
+ include Decidim::Events::MachineTranslatedEvent
10
11
 
11
12
  included do
12
- def resource_text
13
- comment.formatted_body
13
+ def resource_text(override_translation = nil)
14
+ translated_body = translated_attribute(comment.body, comment.organization, override_translation)
15
+ Decidim::ContentProcessor.render(sanitize_content(render_markdown(translated_body)), "div")
14
16
  end
15
17
 
16
18
  def author
@@ -28,14 +30,45 @@ module Decidim
28
30
  end
29
31
  end
30
32
 
33
+ def translatable_resource
34
+ comment
35
+ end
36
+
37
+ def translatable_text
38
+ comment.body
39
+ end
40
+
41
+ def safe_resource_text
42
+ I18n.with_locale(comment.content_original_language) { resource_text }
43
+ end
44
+
45
+ def safe_resource_translated_text
46
+ I18n.with_locale(I18n.locale) { resource_text(true) }
47
+ end
48
+
31
49
  private
32
50
 
51
+ # Private: Initializes the Markdown parser
52
+ def markdown
53
+ @markdown ||= Decidim::Comments::Markdown.new
54
+ end
55
+
56
+ # Private: converts the string from markdown to html
57
+ def render_markdown(string)
58
+ markdown.render(string)
59
+ end
60
+
61
+ # Private: Returns the comment body sanitized, sanitizing HTML tags
62
+ def sanitize_content(content)
63
+ Decidim::ContentProcessor.sanitize(content)
64
+ end
65
+
33
66
  def comment
34
67
  @comment ||= Decidim::Comments::Comment.find(extra[:comment_id])
35
68
  end
36
69
 
37
70
  def resource_url_params
38
- { anchor: "comment_#{comment.id}" }
71
+ { anchor: "comment_#{comment.id}", commentId: comment.id }
39
72
  end
40
73
  end
41
74
  end
@@ -21,6 +21,10 @@ module Decidim
21
21
  extra[:downvotes]
22
22
  end
23
23
 
24
+ def perform_translation?
25
+ false
26
+ end
27
+
24
28
  private
25
29
 
26
30
  def resource_url_params
@@ -179,11 +179,11 @@ module Decidim
179
179
  end
180
180
 
181
181
  def formatted_body
182
- Decidim::ContentProcessor.render(sanitize_content(render_markdown(translated_body)), "div")
182
+ Decidim::ContentProcessor.render(sanitize_content_for_comment(render_markdown(translated_body)), "div")
183
183
  end
184
184
 
185
185
  def translated_body
186
- @translated_body ||= translated_attribute(body, organization)
186
+ translated_attribute(body, organization)
187
187
  end
188
188
 
189
189
  def delete!
@@ -234,11 +234,6 @@ module Decidim
234
234
  self.depth = commentable.depth + 1 if commentable.respond_to?(:depth)
235
235
  end
236
236
 
237
- # Private: Returns the comment body sanitized, sanitizing HTML tags
238
- def sanitize_content(content)
239
- Decidim::ContentProcessor.sanitize(content)
240
- end
241
-
242
237
  # Private: Initializes the Markdown parser
243
238
  def markdown
244
239
  @markdown ||= Decidim::Comments::Markdown.new
@@ -254,6 +249,13 @@ module Decidim
254
249
 
255
250
  root_commentable.update_comments_count
256
251
  end
252
+
253
+ def sanitize_content_for_comment(text, options = {})
254
+ Rails::Html::WhiteListSanitizer.new.sanitize(
255
+ text,
256
+ { scrubber: Decidim::Comments::UserInputScrubber.new }.merge(options)
257
+ ).try(:html_safe)
258
+ end
257
259
  end
258
260
  end
259
261
  end
@@ -114,7 +114,6 @@ describe("CommentsComponent", () => {
114
114
  data-tooltip="true"
115
115
  data-disable-hover="false"
116
116
  data-keep-on-hover="true"
117
- aria-haspopup="true"
118
117
  class="label-required has-tip"
119
118
  >
120
119
  <span aria-hidden="true">*</span><span class="show-for-sr">Required field</span>
@@ -170,7 +169,7 @@ describe("CommentsComponent", () => {
170
169
  </span>
171
170
  </div>
172
171
  <div class="author-data__extra">
173
- <button type="button" class="link-alt" data-open="flagModalComment${commentId}" title="Report inappropriate content" aria-controls="flagModalComment${commentId}" aria-haspopup="true" tabindex="0">
172
+ <button type="button" class="link-alt" data-open="flagModalComment${commentId}" title="Report inappropriate content" aria-controls="flagModalComment${commentId}" aria-haspopup="dialog" tabindex="0">
174
173
  <svg role="img" aria-hidden="true" class="icon--flag icon icon--small">
175
174
  <title></title>
176
175
  <use href="/assets/decidim/icons-123.svg#icon-flag"></use>
@@ -261,7 +260,7 @@ describe("CommentsComponent", () => {
261
260
  let orderSelector = `
262
261
  <ul id="comments-order-menu" class="dropdown menu" data-dropdown-menu="data-dropdown-menu" data-autoclose="false" data-disable-hover="true" data-click-open="true" data-close-on-click="true" tabindex="-1" role="menubar">
263
262
  <li class="is-dropdown-submenu-parent opens-right" tabindex="-1" role="none">
264
- <a href="#" id="comments-order-menu-control" aria-label="Order by:" aria-controls="comments-order-menu" aria-haspopup="true" role="menuitem">Older</a>
263
+ <a href="#" id="comments-order-menu-control" aria-label="Order by:" aria-controls="comments-order-menu" aria-haspopup="menu" role="menuitem">Older</a>
265
264
  <ul class="menu is-dropdown-submenu submenu first-sub vertical" id="comments-order-chooser-menu" role="menu" aria-labelledby="comments-order-menu-control" tabindex="-1" data-submenu="">
266
265
  <li role="none" class="is-submenu-item is-dropdown-submenu-item">
267
266
  <a tabindex="-1" role="menuitem" data-remote="true" href="/comments?commentable_gid=commentable-gid&amp;order=best_rated&amp;reload=1">
@@ -56,7 +56,7 @@ module Decidim
56
56
  affected_users = group.accepted_users - already_notified_users
57
57
  @already_notified_users += affected_users
58
58
 
59
- notify(:user_group_mentioned, affected_users: affected_users, extra: { group: group })
59
+ notify(:user_group_mentioned, affected_users: affected_users, extra: { group_id: group.id })
60
60
  end
61
61
  end
62
62
 
@@ -0,0 +1,15 @@
1
+ <div class="row column">
2
+ <%= form.check_box :comments_enabled, label: t(".enabled"), :"data-toggle" => "customize_comments_times-div" %>
3
+ </div>
4
+
5
+ <div id="customize_comments_times-div" data-toggler=".hide" class="row column <%= @form.comments_enabled ? nil : "hide" %>">
6
+ <div class="row">
7
+ <div class="columns xlarge-6">
8
+ <%= form.datetime_field :comments_start_time, label: t(".start_time") %>
9
+ </div>
10
+
11
+ <div class="columns xlarge-6">
12
+ <%= form.datetime_field :comments_end_time, label: t(".end_time") %>
13
+ </div>
14
+ </div>
15
+ </div>
@@ -77,7 +77,6 @@ ar:
77
77
  blocked_comments_warning: التعليقات معطلة في هذا الوقت ، لكن يمكنك قراءة التعليقات السابقة.
78
78
  comment_details_title: تفاصيل التعليق
79
79
  loading: جارٍ تحميل التعليقات ...
80
- single_comment_warning: يمكنك الإطلاع على التعليقات المتبقية الأخرى <a href="%{url}">هنا</a>.
81
80
  single_comment_warning_title: إنك ترى تعليقا واحدا
82
81
  events:
83
82
  comments:
@@ -93,7 +93,7 @@ ca:
93
93
  blocked_comments_warning: Els comentaris estan desactivats en aquest moment, però pots llegir els anteriors.
94
94
  comment_details_title: Detalls del comentari
95
95
  loading: Carregant els comentaris ...
96
- single_comment_warning: Pots revisar la resta de comentaris <a href="%{url}">aquí</a>.
96
+ single_comment_warning: <a href="%{url}">Mostra tots els comentaris</a>
97
97
  single_comment_warning_title: Estàs veient un sol comentari
98
98
  title:
99
99
  one: "%{count} comentari"
@@ -20,6 +20,12 @@ cs:
20
20
  other: Hlasy
21
21
  decidim:
22
22
  comments:
23
+ admin:
24
+ shared:
25
+ availability_fields:
26
+ enabled: Komentáře povoleny
27
+ end_time: Komentáře povoleny do
28
+ start_time: Komentáře povoleny od
23
29
  comments:
24
30
  create:
25
31
  error: Při vytváření komentáře došlo k chybě.
@@ -97,7 +103,7 @@ cs:
97
103
  blocked_comments_warning: Komentáře jsou momentálně zakázány, ale můžete si přečíst ty předchozí.
98
104
  comment_details_title: Podrobnosti komentáře
99
105
  loading: Načítání komentářů ...
100
- single_comment_warning: Můžete zkontrolovat zbytek komentářů <a href="%{url}">zde</a>.
106
+ single_comment_warning: <a href="%{url}">Zobrazit všechny komentáře</a>
101
107
  single_comment_warning_title: Vidíte jeden komentář
102
108
  title:
103
109
  one: "%{count} komentář"
@@ -16,6 +16,12 @@ de:
16
16
  other: Stimmen
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Kommentare aktiviert
23
+ end_time: Kommentare aktiviert bis
24
+ start_time: Kommentare aktiviert von
19
25
  comments:
20
26
  create:
21
27
  error: Beim Erstellen des Kommentars ist ein Fehler aufgetreten.
@@ -93,7 +99,7 @@ de:
93
99
  blocked_comments_warning: Kommentare sind zu diesem Zeitpunkt deaktiviert, aber Sie können die vorherigen lesen.
94
100
  comment_details_title: Kommentarinformationen
95
101
  loading: Kommentare werden geladen ...
96
- single_comment_warning: Sie können die restlichen Kommentare <a href="%{url}">hier</a> prüfen.
102
+ single_comment_warning: <a href="%{url}">Alle Kommentare anzeigen</a>
97
103
  single_comment_warning_title: Ihnen wird ein einzelner Kommentar angezeigt
98
104
  title:
99
105
  one: "%{count} Kommentar"
@@ -93,7 +93,6 @@ el:
93
93
  blocked_comments_warning: Τα σχόλια είναι απενεργοποιημένα αυτήν τη στιγμή, αλλά μπορείτε να διαβάσετε τα προηγούμενα σχόλια.
94
94
  comment_details_title: Λεπτομέρειες σχολίων
95
95
  loading: Φόρτωση σχολίων...
96
- single_comment_warning: Μπορείτε να δείτε τα υπόλοιπα σχόλια <a href="%{url}">εδώ</a>.
97
96
  single_comment_warning_title: Βλέπετε ένα μόνο σχόλιο
98
97
  title:
99
98
  one: "%{count} σχόλιο"
@@ -17,6 +17,12 @@ en:
17
17
  other: Votes
18
18
  decidim:
19
19
  comments:
20
+ admin:
21
+ shared:
22
+ availability_fields:
23
+ enabled: Comments enabled
24
+ end_time: Comments enabled until
25
+ start_time: Comments enabled from
20
26
  comments:
21
27
  create:
22
28
  error: There was a problem creating the comment.
@@ -94,7 +100,7 @@ en:
94
100
  blocked_comments_warning: Comments are disabled at this time, but you can read the previous ones.
95
101
  comment_details_title: Comment details
96
102
  loading: Loading comments ...
97
- single_comment_warning: You can check the rest of the comments <a href="%{url}">here</a>.
103
+ single_comment_warning: <a href="%{url}">View all comments</a>
98
104
  single_comment_warning_title: You are seeing a single comment
99
105
  title:
100
106
  one: "%{count} comment"
@@ -93,7 +93,6 @@ es-MX:
93
93
  blocked_comments_warning: Los comentarios están deshabilitados en este momento, pero puedes leer los anteriores.
94
94
  comment_details_title: Detalles del comentario
95
95
  loading: Cargando los comentarios ...
96
- single_comment_warning: Puedes revisar el resto de los comentarios <a href="%{url}">aquí</a>.
97
96
  single_comment_warning_title: Estás viendo un solo comentario
98
97
  title:
99
98
  one: "%{count} comentario"
@@ -93,7 +93,6 @@ es-PY:
93
93
  blocked_comments_warning: Los comentarios están deshabilitados en este momento, pero puedes leer los anteriores.
94
94
  comment_details_title: Detalles del comentario
95
95
  loading: Cargando los comentarios ...
96
- single_comment_warning: Puedes revisar el resto de los comentarios <a href="%{url}">aquí</a>.
97
96
  single_comment_warning_title: Estás viendo un solo comentario
98
97
  title:
99
98
  one: "%{count} comentario"
@@ -16,6 +16,12 @@ es:
16
16
  other: Votos
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Comentarios habilitados
23
+ end_time: Comentarios habilitados hasta
24
+ start_time: Comentarios habilitados desde
19
25
  comments:
20
26
  create:
21
27
  error: Se ha producido un error al crear el comentario.
@@ -93,7 +99,7 @@ es:
93
99
  blocked_comments_warning: Los comentarios están deshabilitados en este momento, pero puedes leer los anteriores.
94
100
  comment_details_title: Detalles del comentario
95
101
  loading: Cargando los comentarios ...
96
- single_comment_warning: Puedes revisar el resto de los comentarios <a href="%{url}">aquí</a>.
102
+ single_comment_warning: <a href="%{url}">Ver todos los comentarios</a>
97
103
  single_comment_warning_title: Estás viendo un solo comentario
98
104
  title:
99
105
  one: "%{count} comentario"
@@ -16,6 +16,12 @@ eu:
16
16
  other: Botoak
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Iruzkinak gaituta
23
+ end_time: Iruzkinak noiz arte aktibatuta
24
+ start_time: Iruzkinak noiztik aktibatuta
19
25
  comments:
20
26
  create:
21
27
  error: Arazoa gertatu da iruzkina sortzean.
@@ -93,7 +99,7 @@ eu:
93
99
  blocked_comments_warning: Iruzkinak desgaituta daude une honetan, baina aurrekoak irakur ditzakezu.
94
100
  comment_details_title: Iruzkinaren xehetasunak
95
101
  loading: Iruzkinak kargatzen...
96
- single_comment_warning: Gainontzeko iruzkinak berrikusi ahal dituzu <a href="%{url}">hemen</a>.
102
+ single_comment_warning: <a href="%{url}">k erakusten ditu iruzkin guztiak</a>
97
103
  single_comment_warning_title: Iruzkin bakar bat ikusten ari zara
98
104
  down_vote_button:
99
105
  text: Ez nago ados iruzkin honekin
@@ -16,6 +16,12 @@ fi-pl:
16
16
  other: Äänet
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Kommentointi sallittu
23
+ end_time: Kommentointi sallittu aikarajaan saakka
24
+ start_time: Kommentointi sallittu alkaen
19
25
  comments:
20
26
  create:
21
27
  error: Kommentin luotaessa tapahtui virhe.
@@ -93,7 +99,7 @@ fi-pl:
93
99
  blocked_comments_warning: Kommentit on poistettu käytöstä tällä hetkellä, mutta voit lukea aikaisempia kommentteja.
94
100
  comment_details_title: Kommentin yksityiskohdat
95
101
  loading: Ladataan kommentteja ...
96
- single_comment_warning: Voit katsoa loput kommentit <a href="%{url}">täältä</a>.
102
+ single_comment_warning: <a href="%{url}">Näytä kaikki kommentit</a>
97
103
  single_comment_warning_title: Näet yhden kommentin
98
104
  title:
99
105
  one: "%{count} kommentti"
@@ -16,6 +16,12 @@ fi:
16
16
  other: Äänet
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Kommentointi sallittu
23
+ end_time: Kommentointi sallittu aikarajaan saakka
24
+ start_time: Kommentointi sallittu alkaen
19
25
  comments:
20
26
  create:
21
27
  error: Kommentin luotaessa tapahtui virhe.
@@ -93,7 +99,7 @@ fi:
93
99
  blocked_comments_warning: Kommentit on poistettu käytöstä tällä hetkellä, mutta voit lukea aikaisempia kommentteja.
94
100
  comment_details_title: Kommentin yksityiskohdat
95
101
  loading: Ladataan kommentteja ...
96
- single_comment_warning: Voit katsoa loput kommentit <a href="%{url}">täältä</a>.
102
+ single_comment_warning: <a href="%{url}">Näytä kaikki kommentit</a>
97
103
  single_comment_warning_title: Näet yhden kommentin
98
104
  title:
99
105
  one: "%{count} kommentti"
@@ -16,6 +16,12 @@ fr-CA:
16
16
  other: Votes
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Commentaires activés
23
+ end_time: Commentaires activés jusqu'à
24
+ start_time: Commentaires activés depuis
19
25
  comments:
20
26
  create:
21
27
  error: Une erreur s'est produite lors de la création du commentaire.
@@ -93,7 +99,7 @@ fr-CA:
93
99
  blocked_comments_warning: Les commentaires sont actuellement désactivés, mais vous pouvez lire ceux déjà saisis.
94
100
  comment_details_title: Détails du commentaire
95
101
  loading: Chargement des commentaires ...
96
- single_comment_warning: Vous pouvez accéder au reste des commentaires <a href="%{url}">ici</a>.
102
+ single_comment_warning: <a href="%{url}">Voir tous les commentaires</a>
97
103
  single_comment_warning_title: Vous ne voyez qu'un seul commentaire
98
104
  title:
99
105
  one: "%{count} commentaire"
@@ -16,6 +16,12 @@ fr:
16
16
  other: Votes
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Commentaires activés
23
+ end_time: Commentaires activés jusqu'à
24
+ start_time: Commentaires activés depuis
19
25
  comments:
20
26
  create:
21
27
  error: Une erreur s'est produite lors de la création du commentaire.
@@ -93,7 +99,7 @@ fr:
93
99
  blocked_comments_warning: Les commentaires sont actuellement désactivés, mais vous pouvez lire ceux déjà saisis.
94
100
  comment_details_title: Détails du commentaire
95
101
  loading: Chargement des commentaires ...
96
- single_comment_warning: Vous pouvez accéder au reste des commentaires <a href="%{url}">ici</a>.
102
+ single_comment_warning: <a href="%{url}">Voir tous les commentaires</a>
97
103
  single_comment_warning_title: Vous ne voyez qu'un seul commentaire
98
104
  title:
99
105
  one: "%{count} commentaire"
@@ -16,6 +16,12 @@ gl:
16
16
  other: Votos
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Comentarios habilitados
23
+ end_time: Comentarios habilitados até
24
+ start_time: Comentarios habilitados dende
19
25
  comments:
20
26
  create:
21
27
  error: Produciuse un problema ao crear o comentario.
@@ -93,7 +99,7 @@ gl:
93
99
  blocked_comments_warning: Os comentarios están desactivados neste momento, pero podes ler os anteriores.
94
100
  comment_details_title: Detalles do comentario
95
101
  loading: Cargando comentarios ...
96
- single_comment_warning: Podes revisar os comentarios restantes <a href="%{url}">aquí</a>.
102
+ single_comment_warning: <a href="%{url}">Ver todos os comentarios</a>
97
103
  single_comment_warning_title: Estás a ver un único comentario
98
104
  title:
99
105
  one: "%{count} comentario"
@@ -69,7 +69,6 @@ hu:
69
69
  blocked_comments_warning: A megjegyzések jelenleg le vannak tiltva, de a korábbiakat elolvashatod.
70
70
  comment_details_title: Megjegyzés részletei
71
71
  loading: Hozzászólások betöltése ...
72
- single_comment_warning: A többi hozzászólást <a href="%{url}">itt</a> ellenőrizheti.
73
72
  single_comment_warning_title: Egyetlen megjegyzést látsz
74
73
  events:
75
74
  comments:
@@ -16,6 +16,12 @@ it:
16
16
  other: voti
17
17
  decidim:
18
18
  comments:
19
+ admin:
20
+ shared:
21
+ availability_fields:
22
+ enabled: Commenti abilitati
23
+ end_time: Commenti abilitati fino a
24
+ start_time: Commenti abilitati da
19
25
  comments:
20
26
  create:
21
27
  error: Ci sono stati problemi durante la creazione del commento.
@@ -93,7 +99,7 @@ it:
93
99
  blocked_comments_warning: I commenti sono disabilitati in questo momento, ma puoi leggere quelli precedenti.
94
100
  comment_details_title: Dettagli commento
95
101
  loading: Sto caricando i commenti ...
96
- single_comment_warning: Puoi controllare il resto dei commenti <a href="%{url}">qui</a>.
102
+ single_comment_warning: <a href="%{url}">Visualizza tutti i commenti</a>
97
103
  single_comment_warning_title: Stai vedendo un singolo commento
98
104
  title:
99
105
  one: "%{count} commento"
@@ -14,6 +14,12 @@ ja:
14
14
  other: 投票
15
15
  decidim:
16
16
  comments:
17
+ admin:
18
+ shared:
19
+ availability_fields:
20
+ enabled: コメントを有効にする
21
+ end_time: 次の時点までのコメントを有効にする
22
+ start_time: 次の時点からコメントを有効にする
17
23
  comments:
18
24
  create:
19
25
  error: コメントの登録に問題がありました。
@@ -91,7 +97,7 @@ ja:
91
97
  blocked_comments_warning: コメントは現時点で無効になっていますが、以前のコメントを読むことができます。
92
98
  comment_details_title: コメントの詳細
93
99
  loading: コメントを読み込んでいます...
94
- single_comment_warning: コメントの残りは <a href="%{url}">こちら</a>で確認できます。
100
+ single_comment_warning: <a href="%{url}">すべてのコメントを表示</a>
95
101
  single_comment_warning_title: コメントを1件のみ表示しています
96
102
  title:
97
103
  other: "%{count} 件のコメント"
@@ -113,12 +119,12 @@ ja:
113
119
  email_intro: "%{author_name} は %{resource_title}にコメントを残しました。このページで読むことができます:"
114
120
  email_outro: '%{author_name}をフォローしているため、この通知を受け取りました。プロフィールページからこのユーザーのフォローを解除することができます。'
115
121
  email_subject: '%{author_name} から %{resource_title} に対して新しいコメントがあります'
116
- notification_title: There is a new comment by <a href="%{author_path}">%{author_name} %{author_nickname}</a> in <a href="%{resource_path}">%{resource_title}</a>.
122
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> より <a href="%{resource_path}">%{resource_title} に対して新しいコメントがあります</a>.
117
123
  comment_by_followed_user_group:
118
124
  email_intro: 'グループ %{author_name} は %{resource_title}にコメントを残しました。このページで読むことができます:'
119
125
  email_outro: '%{author_name}をフォローしているため、この通知を受け取りました。プロフィールページからこのグループのフォローを解除できます。'
120
126
  email_subject: '%{author_name} から %{resource_title} に対して新しいコメントがあります'
121
- notification_title: There is a new comment by <a href="%{author_path}">%{author_name} %{author_nickname}</a> in <a href="%{resource_path}">%{resource_title}</a>.
127
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> より <a href="%{resource_path}">%{resource_title} に対して新しいコメントがあります</a>.
122
128
  comment_created:
123
129
  email_intro: "%{resource_title} はコメントされました。このページでコメントを読むことができます:"
124
130
  email_outro: '"%{resource_title}" 、またはその参加者をフォローしているためこの通知を受け取りました。前のリンクからフォローを解除することができます。'