decidim-admin 0.24.0.rc1 → 0.24.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of decidim-admin might be problematic. Click here for more details.

Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim/admin/application.js.es6 +2 -1
  3. data/app/controllers/concerns/decidim/admin/global_moderation_context.rb +5 -9
  4. data/app/helpers/decidim/admin/admin_terms_helper.rb +0 -7
  5. data/app/views/decidim/admin/admin_terms/show.html.erb +1 -1
  6. data/app/views/decidim/admin/area_types/index.html.erb +2 -2
  7. data/app/views/decidim/admin/areas/index.html.erb +1 -1
  8. data/app/views/decidim/admin/components/_form.html.erb +1 -1
  9. data/app/views/decidim/admin/dashboard/show.html.erb +1 -1
  10. data/app/views/decidim/admin/moderations/index.html.erb +1 -0
  11. data/app/views/decidim/admin/newsletters/index.html.erb +1 -1
  12. data/app/views/decidim/admin/newsletters/select_recipients_to_deliver.html.erb +1 -1
  13. data/app/views/decidim/admin/newsletters/show.html.erb +1 -1
  14. data/app/views/decidim/admin/scope_types/index.html.erb +2 -2
  15. data/app/views/decidim/admin/scopes/index.html.erb +1 -1
  16. data/app/views/decidim/admin/static_pages/_topic.html.erb +3 -3
  17. data/app/views/decidim/admin/users/index.html.erb +2 -2
  18. data/app/views/layouts/decidim/admin/_application.html.erb +1 -0
  19. data/app/views/layouts/decidim/admin/_js_configuration.html.erb +26 -0
  20. data/app/views/layouts/decidim/admin/newsletters.erb +1 -1
  21. data/app/views/layouts/decidim/admin/pages.html.erb +2 -2
  22. data/config/locales/ca.yml +120 -0
  23. data/config/locales/cs.yml +5 -4
  24. data/config/locales/en.yml +1 -0
  25. data/config/locales/es-MX.yml +111 -0
  26. data/config/locales/es-PY.yml +111 -0
  27. data/config/locales/es.yml +112 -1
  28. data/config/locales/fi-plain.yml +1 -0
  29. data/config/locales/fi.yml +1 -0
  30. data/config/locales/fr-CA.yml +7 -0
  31. data/config/locales/fr.yml +7 -0
  32. data/config/locales/gl.yml +76 -0
  33. data/config/locales/it.yml +11 -0
  34. data/config/locales/ja.yml +21 -0
  35. data/config/locales/nl.yml +3 -0
  36. data/config/locales/no.yml +14 -2
  37. data/config/locales/pl.yml +25 -24
  38. data/config/locales/ro-RO.yml +292 -117
  39. data/config/locales/sv.yml +100 -1
  40. data/lib/decidim/admin/test/manage_moderations_examples.rb +19 -0
  41. data/lib/decidim/admin/version.rb +1 -1
  42. metadata +11 -11
  43. data/app/assets/javascripts/decidim/admin/gallery.js.es6 +0 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5e4adaee165200528c7f4ed7cfc476bb1511b072f65f1e3c02e86ab6e15186a3
4
- data.tar.gz: 0bb896be7485dc38c44403e13f7aa2ec42b42ad020ee07a9dd2193450fcec30b
3
+ metadata.gz: 325402c97956e2279a1f445f2cd88e268f3c02f3d960aefc148a77a695228043
4
+ data.tar.gz: 3e8728e72a5bc5eee562e55cb44021aa75377c8c0300139fb8c0345c02fbbf79
5
5
  SHA512:
6
- metadata.gz: 8bf7495ec649322f3e9ebd1dea1905a74cf2d8b158b16a2093fcc02fbdd145fbe4f5416068c323fe15bbf1cfc9828025c6233d46ca2e1078075872d3721c33ba
7
- data.tar.gz: fd1177db978fdeeb3a08b3c57f92b8354b1f88bcec105107e20d01940b10ca9ebfc3750e7595be7bbc63dc4179a5de52fc9a8aea23fbc52ac02482b1faec8e1a
6
+ metadata.gz: 8aa7a02f5aa51d9f15afc1bdd6a2aa450d885e92674328929ec02d2fac98e8a7b62e3f8daf32f13480790869e6e64c9d4fc019686b3758d027d8f0059699d22d
7
+ data.tar.gz: e7140826d72d65006e121608884e20aa7db8c837da7a105570d97535a151ed2493fcfef0bf203205641f791e5ca979b29b9c0c2a7b8f161da54d1fec2e502860
@@ -18,7 +18,7 @@
18
18
  // = require ./bundle
19
19
  // = require ./draggable-list
20
20
  // = require ./sortable
21
- // = require ./gallery
21
+ // = require decidim/gallery
22
22
  // = require ./moderations
23
23
  // = require decidim/input_tags
24
24
  // = require decidim/input_hashtags
@@ -31,6 +31,7 @@
31
31
  // = require decidim/geocoding/attach_input
32
32
  // = require decidim/session_timeouter
33
33
  // = require_self
34
+ // = require decidim/configuration
34
35
 
35
36
  window.Decidim = window.Decidim || {};
36
37
  window.DecidimAdmin = window.DecidimAdmin || {};
@@ -15,9 +15,8 @@ module Decidim
15
15
  end
16
16
 
17
17
  # Private: Finds the participatory spaces the current user is admin to.
18
- # This is only used for users that are "participatoy space admins", not
19
- # organization-wide admins. This method will later be used to find out
20
- # what moderations can the current user manage.
18
+ # This method will later be used to find out what moderations the
19
+ # current user can manage.
21
20
  #
22
21
  # Returns an Array.
23
22
  def spaces_user_is_admin_to
@@ -27,7 +26,8 @@ module Decidim
27
26
  .find_participatory_space_manifest(manifest.name)
28
27
  .participatory_spaces
29
28
  .call(current_organization)&.select do |space|
30
- space.moderators.exists?(id: current_user.id)
29
+ space.moderators.exists?(id: current_user.id) ||
30
+ space.admins.exists?(id: current_user.id)
31
31
  end
32
32
  end
33
33
  end
@@ -39,11 +39,7 @@ module Decidim
39
39
  # Returns an `ActiveRecord::Relation`
40
40
  def moderations_for_user
41
41
  @moderations_for_user ||=
42
- if current_user.admin?
43
- Decidim::Moderation.all
44
- else
45
- Decidim::Moderation.where(participatory_space: spaces_user_is_admin_to)
46
- end
42
+ Decidim::Moderation.where(participatory_space: spaces_user_is_admin_to)
47
43
  end
48
44
  end
49
45
  end
@@ -8,13 +8,6 @@ module Decidim
8
8
  current_organization.admin_terms_of_use_body.symbolize_keys[I18n.locale].html_safe
9
9
  end
10
10
 
11
- def admin_terms_announcement_args
12
- {
13
- callout_class: current_user.admin_terms_accepted? ? "success" : "warning",
14
- announcement: announcement_body
15
- }
16
- end
17
-
18
11
  def announcement_body
19
12
  if current_user.admin_terms_accepted?
20
13
  t("accept.success", scope: "decidim.admin.admin_terms_of_use")
@@ -1,4 +1,4 @@
1
- <%= cell("decidim/announcement", admin_terms_announcement_args ) %>
1
+ <%= cell("decidim/announcement", announcement_body, callout_class: current_user.admin_terms_accepted? ? "success" : "warning" ) %>
2
2
 
3
3
  <article class="card">
4
4
  <div class="card-section grid-x grid-margin-x">
@@ -3,7 +3,7 @@
3
3
  <h2 class="card-title">
4
4
  <%= t "decidim.admin.titles.area_types" %>
5
5
  <% if allowed_to? :create, :area_type %>
6
- <%= link_to t("actions.add", scope: "decidim.admin"), ["new", "area_type"], class: "button tiny button--title new" %>
6
+ <%= link_to t("actions.add", scope: "decidim.admin"), [:new, :area_type], class: "button tiny button--title new" %>
7
7
  <% end %>
8
8
  </h2>
9
9
  </div>
@@ -28,7 +28,7 @@
28
28
  </td>
29
29
  <td class="table-list__actions">
30
30
  <% if allowed_to? :update, :area_type, area_type: area_type %>
31
- <%= icon_link_to "pencil", ["edit", area_type], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
31
+ <%= icon_link_to "pencil", [:edit, area_type], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
32
32
  <% end %>
33
33
 
34
34
  <% if allowed_to? :destroy, :area_type, area_type: area_type %>
@@ -29,7 +29,7 @@
29
29
  </td>
30
30
  <td class="table-list__actions">
31
31
  <% if allowed_to? :update, :area, area: area %>
32
- <%= icon_link_to "pencil", ["edit", area], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
32
+ <%= icon_link_to "pencil", [:edit, area], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
33
33
  <% end %>
34
34
 
35
35
  <% if allowed_to? :destroy, :area, area: area %>
@@ -78,7 +78,7 @@
78
78
  </fieldset>
79
79
  <% end %>
80
80
 
81
- <% unless component.published? %>
81
+ <% if component && component.persisted? && !component.published? %>
82
82
  <%= render partial: "decidim/admin/share_tokens/share_tokens", locals: { share_tokens: form.object.share_tokens } %>
83
83
  <% end %>
84
84
  </div>
@@ -8,7 +8,7 @@
8
8
  <p><%= t ".welcome" %></p>
9
9
 
10
10
  <% unless current_user.admin_terms_accepted? %>
11
- <%= cell("decidim/announcement", admin_terms_announcement_args ) %>
11
+ <%= cell("decidim/announcement", announcement_body, callout_class: current_user.admin_terms_accepted? ? "success" : "warning" ) %>
12
12
  <% end %>
13
13
 
14
14
  <div class="grid-x grid-margin-x">
@@ -33,6 +33,7 @@
33
33
  </thead>
34
34
  <tbody>
35
35
  <% moderations.each do |moderation| %>
36
+ <% next unless moderation.reportable %>
36
37
  <tr data-id="<%= moderation.id %>">
37
38
  <td><%= moderation.reportable.id %></td>
38
39
  <td>
@@ -8,7 +8,7 @@
8
8
  <strong class="subscribed_title"><%= t("newsletters.index.subscribed_count", scope: "decidim.admin") %></strong>
9
9
  <span class="subscribed_count"><%= recipients_count_query %></span>
10
10
  <% if allowed_to? :create, :newsletter %>
11
- <%= link_to t("actions.newsletter.new", scope: "decidim.admin"), ["newsletter_templates"], class: "button tiny button--title new" %>
11
+ <%= link_to t("actions.newsletter.new", scope: "decidim.admin"), [:newsletter_templates], class: "button tiny button--title new" %>
12
12
  <% end %>
13
13
  </div>
14
14
  </div>
@@ -65,7 +65,7 @@
65
65
 
66
66
  <div class="button--double form-general-submit">
67
67
  <% if allowed_to?(:update, :newsletter, newsletter: @newsletter) && !@newsletter.sent? %>
68
- <%= link_to t("actions.edit", scope: "decidim.admin"), ["edit", @newsletter], class: "button" %>
68
+ <%= link_to t("actions.edit", scope: "decidim.admin"), [:edit, @newsletter], class: "button" %>
69
69
  <% end %>
70
70
  <% unless @newsletter.sent? %>
71
71
  <%= f.submit t(".deliver"), class: "button alert", data: { confirm: t(".confirm_deliver") } %>
@@ -17,7 +17,7 @@
17
17
  <div class="button--double form-general-submit">
18
18
  <% if allowed_to?(:update, :newsletter, newsletter: @newsletter) %>
19
19
  <% if !@newsletter.sent? %>
20
- <%= link_to t("actions.edit", scope: "decidim.admin"), ["edit", @newsletter], class: "button" %>
20
+ <%= link_to t("actions.edit", scope: "decidim.admin"), [:edit, @newsletter], class: "button" %>
21
21
  <% end %>
22
22
  <% unless @newsletter.sent? %>
23
23
  <%= link_to t(".select_recipients_to_deliver"), select_recipients_to_deliver_newsletter_path(@newsletter), class: "button alert" %>
@@ -1,7 +1,7 @@
1
1
  <div class="card">
2
2
  <div class="card-divider">
3
3
  <% if allowed_to? :creste, :scope_type %>
4
- <h2 class="card-title"><%= t "decidim.admin.titles.scope_types" %> <%= link_to t("actions.add", scope: "decidim.admin"), ["new", "scope_type"], class: "button tiny button--title" %></h2>
4
+ <h2 class="card-title"><%= t "decidim.admin.titles.scope_types" %> <%= link_to t("actions.add", scope: "decidim.admin"), [:new, :scope_type], class: "button tiny button--title" %></h2>
5
5
  <% end %>
6
6
  </div>
7
7
  <div class="card-section">
@@ -26,7 +26,7 @@
26
26
  <td class="table-list__actions">
27
27
 
28
28
  <% if allowed_to? :update, :scope_type, scope_type: scope_type %>
29
- <%= icon_link_to "pencil", ["edit", scope_type], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
29
+ <%= icon_link_to "pencil", [:edit, scope_type], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
30
30
  <% end %>
31
31
 
32
32
  <% if allowed_to? :destroy, :scope_type, scope_type: scope_type %>
@@ -32,7 +32,7 @@
32
32
  <%= icon_link_to "zoom-in", scope_scopes_path(scope), t("actions.browse", scope: "decidim.admin"), class: "action-icon--browse", method: :get, data: {} %>
33
33
 
34
34
  <% if allowed_to? :update, :scope, scope: scope %>
35
- <%= icon_link_to "pencil", ["edit", scope], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
35
+ <%= icon_link_to "pencil", [:edit, scope], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit", method: :get, data: {} %>
36
36
  <% end %>
37
37
 
38
38
  <% if allowed_to? :destroy, :scope, scope: scope %>
@@ -5,7 +5,7 @@
5
5
  <% if topic %>
6
6
  <%= translated_attribute(topic.title) %>
7
7
  <%= link_to t(".destroy"), [topic], class: "button tiny button--title destroy", method: :delete, data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") } %>
8
- <%= link_to t(".edit"), ["edit", topic], class: "button tiny button--title new" %>
8
+ <%= link_to t(".edit"), [:edit, topic], class: "button tiny button--title new" %>
9
9
  <% else %>
10
10
  <%= t(".without_topic") %>
11
11
  <% end %>
@@ -28,7 +28,7 @@
28
28
  <% pages.each do |page| %>
29
29
  <tr>
30
30
  <td>
31
- <%= link_to translated_attribute(page.title), ["edit", page] %><br>
31
+ <%= link_to translated_attribute(page.title), [:edit, page] %><br>
32
32
  </td>
33
33
  <td>
34
34
  <%= l page.created_at, format: :short %>
@@ -40,7 +40,7 @@
40
40
  </td>
41
41
  <td class="table-list__actions">
42
42
  <% if allowed_to? :update, :static_page, static_page: page %>
43
- <%= icon_link_to "pencil", ["edit", page], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit" %>
43
+ <%= icon_link_to "pencil", [:edit, page], t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit" %>
44
44
  <% end %>
45
45
 
46
46
  <%= icon_link_to "eye", decidim.page_path(page), t("actions.view", scope: "decidim.admin.static_pages"), class: "action-icon--preview" %>
@@ -3,7 +3,7 @@
3
3
  <h2 class="card-title">
4
4
  <%= t "decidim.admin.titles.users" %>
5
5
  <% if allowed_to? :create, :admin_user %>
6
- <%= link_to t("actions.user.new", scope: "decidim.admin"), ["new", "user"], class: "button tiny button--title" %>
6
+ <%= link_to t("actions.user.new", scope: "decidim.admin"), [:new, :user], class: "button tiny button--title" %>
7
7
  <% end %>
8
8
  </h2>
9
9
  </div>
@@ -46,7 +46,7 @@
46
46
  <td><%= l user.created_at, format: :short %></td>
47
47
  <td class="table-list__actions">
48
48
  <% if allowed_to?(:invite, :admin_user, user: user) && user.invited_to_sign_up? %>
49
- <%= icon_link_to "reload", ["resend_invitation", user], t("actions.resend_invitation", scope: "decidim.admin"), class: "resend-invitation", method: :post %>
49
+ <%= icon_link_to "reload", [:resend_invitation, user], t("actions.resend_invitation", scope: "decidim.admin"), class: "resend-invitation", method: :post %>
50
50
  <% end %>
51
51
 
52
52
  <% if allowed_to? :destroy, :admin_user, user: user %>
@@ -28,5 +28,6 @@
28
28
  </div>
29
29
  <%= render partial: "layouts/decidim/admin/template_bottom" %>
30
30
  <%= render partial: "decidim/shared/confirm_modal" %>
31
+ <%= render partial: "layouts/decidim/admin/js_configuration" %>
31
32
  </body>
32
33
  </html>
@@ -0,0 +1,26 @@
1
+ <%
2
+ js_configs = {
3
+ icons_path: image_path("decidim/icons.svg"),
4
+ messages: {
5
+ "selfxssWarning": {
6
+ title: t("decidim.security.selfxss_warning.title"),
7
+ description: t("decidim.security.selfxss_warning.description")
8
+ }
9
+ }
10
+ }
11
+ character_messages = {
12
+ "charactersAtLeast": {
13
+ one: t("forms.length_validator.minimum.one", count: "%count%", default: "forms.length_validator.minimum.other"),
14
+ other: t("forms.length_validator.minimum.other", count: "%count%")
15
+ },
16
+ "charactersLeft": {
17
+ one: t("decidim.components.add_comment_form.remaining_characters_1", count: "%count%"),
18
+ other: t("decidim.components.add_comment_form.remaining_characters", count: "%count%")
19
+ }
20
+ }
21
+ %>
22
+
23
+ <script>
24
+ Decidim.config.set(<%== js_configs.to_json %>);
25
+ Decidim.InputCharacterCounter.configureMessages(<%== character_messages.to_json %>);
26
+ </script>
@@ -4,7 +4,7 @@
4
4
  <%= t ".title" %>
5
5
  </div>
6
6
  <div class="secondary-nav__actions">
7
- <%= link_to t("actions.newsletter.new", scope: "decidim.admin"), ["newsletter_templates"], class: "button expanded small new" %>
7
+ <%= link_to t("actions.newsletter.new", scope: "decidim.admin"), [:newsletter_templates], class: "button expanded small new" %>
8
8
  </div>
9
9
  </div>
10
10
  <% end %>
@@ -4,8 +4,8 @@
4
4
  <%= t "decidim.admin.titles.static_pages" %>
5
5
  </div>
6
6
  <div class="secondary-nav__actions">
7
- <%= link_to t("static_page_topics.new.create", scope: "decidim.admin"), ["new", "static_page_topic"], class: "button expanded small new" %>
8
- <%= link_to t("static_pages.new.create", scope: "decidim.admin"), ["new", "static_page"], class: "button expanded small new" %>
7
+ <%= link_to t("static_page_topics.new.create", scope: "decidim.admin"), [:new, :static_page_topic], class: "button expanded small new" %>
8
+ <%= link_to t("static_pages.new.create", scope: "decidim.admin"), [:new, :static_page], class: "button expanded small new" %>
9
9
  </div>
10
10
  </div>
11
11
  <% end %>
@@ -26,11 +26,15 @@ ca:
26
26
  published_at: Publicat el
27
27
  weight: Pes
28
28
  id: ID
29
+ import:
30
+ user_group_id: Importar com
29
31
  newsletter:
30
32
  body: Cos
31
33
  subject: Assumpte
32
34
  organization:
35
+ admin_terms_of_use_body: Cos del text de condicions d'ús per als administradors
33
36
  alert_color: Alerta
37
+ available_authorizations: Autoritzacions disponibles
34
38
  badges_enabled: Habilitar les ensenyes
35
39
  comments_max_length: Longitud màxima dels comentaris (deixa 0 si vols mantenir la configuració per defecte)
36
40
  cta_button_path: URL del botó d'acció
@@ -41,6 +45,8 @@ ca:
41
45
  enable_omnipresent_banner: Mostrar el banner omnipresent
42
46
  facebook_handler: Nom d'usuari de Facebook
43
47
  favicon: Icona
48
+ force_authentication: Forçar autenticació
49
+ force_users_to_authenticate_before_access_organization: Forçar les usuàries a autenticar-se abans d'accedir a l'organització
44
50
  from: Adreça des d'on s'enviaran els correus electrònics
45
51
  github_handler: Nom d'usuari de GitHub
46
52
  header_snippets: Codi personalitzat a la capçalera
@@ -53,6 +59,7 @@ ca:
53
59
  highlighted_content_banner_image: Imatge
54
60
  highlighted_content_banner_short_description: Breu descripció
55
61
  highlighted_content_banner_title: Títol
62
+ host: Host
56
63
  instagram_handler: Nom d'usuari a Instagram
57
64
  logo: Logotip
58
65
  machine_translation_display_priority: Prioritat al mostrar les traduccions automàtiques
@@ -65,16 +72,21 @@ ca:
65
72
  omnipresent_banner_short_description: Breu descripció
66
73
  omnipresent_banner_title: Títol
67
74
  omnipresent_banner_url: URL
75
+ organization_admin_email: Correu electrònic de l'administradora de l'organització
76
+ organization_admin_name: Nom de l'administradora de l'organització
77
+ organization_locales: Idiomes de l'organització
68
78
  primary_color: Primària
69
79
  reference_prefix: prefix de referència
70
80
  rich_text_editor_in_public_views: Habilitar l'editor de text enriquit
71
81
  secondary_color: Secundari
82
+ secondary_hosts: Hosts secundaris
72
83
  send_welcome_notification: Envia la notificació de benvinguda
73
84
  success_color: Èxit
74
85
  time_zone: Zona horària
75
86
  tos_version: Versió dels Termes de Servei
76
87
  twitter_handler: Nom d'usuària de Twitter
77
88
  user_groups_enabled: Habilitar grups
89
+ users_registration_mode: Mode registre d'usuàries
78
90
  warning_color: Avís
79
91
  welcome_notification_body: Cos de la notificació de benvinguda
80
92
  welcome_notification_subject: Assumpte de la notificació de benvinguda
@@ -90,6 +102,8 @@ ca:
90
102
  name: Nom
91
103
  organization: Organització
92
104
  plural: Plural
105
+ settings:
106
+ scope_id: Àmbit
93
107
  static_page:
94
108
  allow_public_access: Permet l'accés sense autenticació
95
109
  changed_notably: S'han produït canvis notables.
@@ -114,6 +128,10 @@ ca:
114
128
  allowed_file_content_types: Fitxer d'imatge no vàlid
115
129
  official_img_header:
116
130
  allowed_file_content_types: Fitxer d'imatge no vàlid
131
+ new_import:
132
+ attributes:
133
+ file:
134
+ invalid_mime_type: Tipus Mime invàlid
117
135
  activerecord:
118
136
  attributes:
119
137
  decidim/static_page:
@@ -140,6 +158,7 @@ ca:
140
158
  category:
141
159
  new: Nova categoria
142
160
  export: Exporta
161
+ import: Importar
143
162
  manage: Gestionar
144
163
  new: Nou %{name}
145
164
  newsletter:
@@ -158,6 +177,7 @@ ca:
158
177
  error: S'ha produït un error en acceptar els Termes i Condicions dell panell d'administració.
159
178
  success: Genial! Has acceptat els Termes i Condicions del panell d'administració.
160
179
  actions:
180
+ accept: Estic d'acord amb els termes següents
161
181
  are_you_sure: Segur que vols rebutjar els Termes i Condicions del panell d'administració?
162
182
  refuse: Rebutjar els termes
163
183
  title: Accepto els Termes i Condicions d'Administració
@@ -297,6 +317,21 @@ ca:
297
317
  update:
298
318
  error: S'ha produït un error en actualitzar aquest component.
299
319
  success: El component s'ha actualitzat correctament.
320
+ conflicts:
321
+ attempts: Intents
322
+ 'false': 'No'
323
+ managed_user_name: Usuari gestionat
324
+ solved: Resolt
325
+ title: Conflictes de verificacions
326
+ transfer:
327
+ email: Correu electrònic
328
+ error: S¡ha produït un error en transferir la participant actual a la participant gestionada.
329
+ name: Nom
330
+ reason: Raó
331
+ success: La transferència s'ha completat correctament.
332
+ title: Transferir
333
+ 'true': 'Sí'
334
+ user_name: Usuària
300
335
  dashboard:
301
336
  show:
302
337
  view_more_logs: Veure més registres
@@ -336,9 +371,16 @@ ca:
336
371
  search_label: Cercar
337
372
  search_placeholder:
338
373
  name_or_nickname_or_email_cont: Buscar %{collection} per correu electrònic, nom o àlies.
374
+ reported_id_string_or_reported_content_cont: Cercar %{collection} per id o contingut reportable.
339
375
  title_cont: Buscar %{collection} per títol.
340
376
  state_eq:
341
377
  label: Estat
378
+ forms:
379
+ file_help:
380
+ import:
381
+ explanation: 'Instruccions per a l''arxiu:'
382
+ message_1: Estan suportats els arxius CSV, JSON i Excel (.xls)
383
+ message_2: Pels arxius CSV, el separador entre columnes ha de ser un punt i coma (";")
342
384
  help_sections:
343
385
  error: S'ha produït un error en actualitzar les seccions d'ajuda
344
386
  form:
@@ -377,6 +419,24 @@ ca:
377
419
  impersonate_existing_managed_user: Gestionar la participant "%{name}"
378
420
  impersonate_existing_user: Gestionar la participant "%{name}"
379
421
  impersonate_new_managed_user: Gestionar una nova participant
422
+ imports:
423
+ creators:
424
+ proposalcreator: Creador de la proposta
425
+ error: S'ha produït un error durant la importació
426
+ help:
427
+ proposalcreator: L'arxiu ha d'incloure els noms de columna title/en i body/en (o un altre idioma de preferència per exemple, title/ca i body/ca). També s'admeten les columnes scope/id i category/id.
428
+ import_from_file: Importar d'un arxiu
429
+ invalid_lines: S'ha trobat un error al recurs número %{invalid_lines}
430
+ new:
431
+ accepted_mime_types:
432
+ csv: csv
433
+ json: json
434
+ xls: xls
435
+ actions:
436
+ back: Tornar
437
+ file_legend: Afegir un arxiu d'importació que serà processat.
438
+ import: Importar
439
+ notice: "%{number} %{resource_name} importat correctament"
380
440
  logs:
381
441
  logs_list:
382
442
  no_logs_yet: Encara no hi ha cap registre d'activitat
@@ -400,8 +460,10 @@ ca:
400
460
  help_sections: Seccions d'ajuda
401
461
  homepage: Pàgina d'inici
402
462
  impersonations: Impersonacions
463
+ moderation: Moderacions globals
403
464
  newsletters: Butlletins
404
465
  participants: Participants
466
+ reported_users: Usuàries reportades
405
467
  scope_types: Tipus d'àmbit
406
468
  scopes: Àmbits
407
469
  settings: Configuració
@@ -489,6 +551,26 @@ ca:
489
551
  phone: Telèfon
490
552
  state: Estat
491
553
  users_count: Nombre de participants
554
+ moderated_users:
555
+ index:
556
+ actions:
557
+ block: Bloquejar usuària
558
+ title: Accions
559
+ unblock: Desbloquejar usuària
560
+ unreport: Desfer denúncia
561
+ name: Nom
562
+ nickname: Àlies
563
+ reason: Raó
564
+ reports: Número de denúncies
565
+ title: Llistant usuàries reportades
566
+ report:
567
+ reasons:
568
+ does_not_belong: No pertany
569
+ offensive: Ofensiu
570
+ spam: Spam
571
+ tabs:
572
+ blocked: Bloquejat
573
+ unblocked: No bloquejat
492
574
  moderations:
493
575
  index:
494
576
  title: Moderacions
@@ -500,6 +582,18 @@ ca:
500
582
  reports:
501
583
  index:
502
584
  author: Autor(s)
585
+ callout_html: Un contingut apareix al panell de moderació quan ha estat reportat per una usuària (pot ser qualsevol amb un compte registrat) fent clic en la icona %{icon} al costat de l'element.
586
+ content_original_language: Idioma original del contingut
587
+ participatory_space: Espai de participació
588
+ reported_content: Contingut reportat
589
+ see_current: Veure actual
590
+ see_original: Veure original
591
+ title: Informes de moderació
592
+ show:
593
+ report_details: Detalls del motiu
594
+ report_language: Idioma de l'informe
595
+ report_reason: Motiu
596
+ title: Detalls de l'informe
503
597
  newsletter_templates:
504
598
  index:
505
599
  preview_template: Previsualitzar
@@ -583,6 +677,7 @@ ca:
583
677
  officialize: Oficialitza
584
678
  officialized: Oficialitzada
585
679
  reofficialize: Torna a oficialitzar
680
+ reports: Informes
586
681
  show_email: Mostra l'adreça de correu
587
682
  status: Estat
588
683
  unblock: Desbloquejar usuària
@@ -613,6 +708,7 @@ ca:
613
708
  rich_text_editor_in_public_views_help: En algunes àrees de text, les participants podran inserir algunes etiquetes HTML amb l'editor de text enriquit.
614
709
  social_handlers: Social
615
710
  twitter: Twitter
711
+ url: URL
616
712
  youtube: YouTube
617
713
  update:
618
714
  error: S'ha produït un error en actualitzar aquesta organització.
@@ -647,6 +743,7 @@ ca:
647
743
  error: S'ha produït un error en eliminar una participant participada d'aquest espai participatiu.
648
744
  success: L'accés de la participant a l'espai de participació privat s'ha eliminat correctament.
649
745
  index:
746
+ import_via_csv: Importar des de CSV
650
747
  title: Participant de l'espai participatiu privat
651
748
  new:
652
749
  create: Crear
@@ -769,6 +866,7 @@ ca:
769
866
  impersonatable_users: Participants que es poden gestionar
770
867
  impersonations: Gestió de participants
771
868
  metrics: Mètriques
869
+ panel: Administradora
772
870
  participants: Participants
773
871
  scope_types: Tipus d'àmbit
774
872
  scopes: Àmbits
@@ -832,8 +930,19 @@ ca:
832
930
  errors:
833
931
  impersonate_user:
834
932
  reason: Has d'indicar un motiu per a la gestió d'una participant no gestionada
933
+ metrics:
934
+ blocked_users:
935
+ object: usuàries bloquejades
936
+ title: Usuàries bloquejades
937
+ reported_users:
938
+ object: usuàries reportades
939
+ title: Usuàries reportades
940
+ user_reports:
941
+ object: informes d'usuari
942
+ title: Informes d'usuari
835
943
  moderations:
836
944
  actions:
945
+ expand: Expandir
837
946
  hidden: Ocults
838
947
  hide: Amagar
839
948
  not_hidden: No ocult
@@ -854,17 +963,28 @@ ca:
854
963
  models:
855
964
  moderation:
856
965
  fields:
966
+ created_at: Data de creació
857
967
  hidden_at: Data d'ocultació
968
+ participatory_space: Espai de participació
858
969
  report_count: Recompte
970
+ reportable_id: Id
971
+ reportable_type: Tipus
859
972
  reported_content_url: URL contingut del contingut reportat
860
973
  reports: Denúncies
861
974
  visit_url: Visiteu l'URL
975
+ report:
976
+ fields:
977
+ details: Detalls del motiu
978
+ locale: Idioma
979
+ reason: Motiu
862
980
  errors:
863
981
  messages:
864
982
  invalid_json: JSON no vàlid
865
983
  layouts:
866
984
  decidim:
867
985
  admin:
986
+ global_moderations:
987
+ title: Moderacions globals
868
988
  newsletters:
869
989
  title: Butlletins
870
990
  settings: