decidim-comments 0.25.2 → 0.26.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
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}" 、またはその参加者をフォローしているためこの通知を受け取りました。前のリンクからフォローを解除することができます。'