decidim-admin 0.28.2 → 0.28.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -13
  3. data/app/commands/decidim/admin/create_participatory_space_private_user.rb +1 -1
  4. data/app/commands/decidim/admin/destroy_component.rb +1 -0
  5. data/app/controllers/concerns/decidim/admin/filterable.rb +1 -1
  6. data/app/controllers/concerns/decidim/admin/verification_conflicts/filterable.rb +31 -0
  7. data/app/controllers/decidim/admin/application_controller.rb +1 -1
  8. data/app/controllers/decidim/admin/conflicts_controller.rb +13 -5
  9. data/app/helpers/decidim/admin/application_helper.rb +13 -0
  10. data/app/views/decidim/admin/block_user/new.html.erb +1 -1
  11. data/app/views/decidim/admin/components/index.html.erb +5 -1
  12. data/app/views/decidim/admin/conflicts/index.html.erb +29 -6
  13. data/app/views/decidim/admin/exports/_dropdown.html.erb +5 -5
  14. data/app/views/decidim/admin/imports/_dropdown.html.erb +6 -4
  15. data/app/views/decidim/admin/imports/new.html.erb +5 -4
  16. data/app/views/decidim/admin/newsletters/select_recipients_to_deliver.html.erb +4 -3
  17. data/app/views/decidim/admin/organization_appearance/form/_minimap.html.erb +3 -3
  18. data/app/views/layouts/decidim/admin/_application.html.erb +1 -1
  19. data/config/locales/bg.yml +2 -0
  20. data/config/locales/ca.yml +4 -2
  21. data/config/locales/cs.yml +7 -0
  22. data/config/locales/de.yml +2 -0
  23. data/config/locales/en.yml +2 -0
  24. data/config/locales/es-MX.yml +2 -0
  25. data/config/locales/es-PY.yml +2 -0
  26. data/config/locales/es.yml +4 -2
  27. data/config/locales/eu.yml +2 -0
  28. data/config/locales/fi-plain.yml +3 -1
  29. data/config/locales/fi.yml +7 -5
  30. data/config/locales/fr-CA.yml +2 -0
  31. data/config/locales/fr.yml +2 -0
  32. data/config/locales/ja.yml +4 -2
  33. data/config/locales/pt-BR.yml +3 -0
  34. data/config/locales/ro-RO.yml +9 -3
  35. data/config/locales/sv.yml +347 -207
  36. data/lib/decidim/admin/test/invite_participatory_space_users_shared_context.rb +1 -0
  37. data/lib/decidim/admin/test/manage_attachments_examples.rb +13 -1
  38. data/lib/decidim/admin/test/manage_paginated_collection_examples.rb +4 -4
  39. data/lib/decidim/admin/version.rb +1 -1
  40. data/lib/decidim/admin.rb +0 -15
  41. metadata +9 -10
  42. data/app/controllers/concerns/decidim/admin/paginable.rb +0 -20
  43. data/app/helpers/decidim/admin/paginable/per_page_helper.rb +0 -22
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75ccdc4a2f091d223bff9fa56f75347e91c6d8752bfba25eaf0a758191d705c0
4
- data.tar.gz: f451da89da78adc0809dd9fee4af0f87761870f5cbb8eee8cc9c20868dc9b023
3
+ metadata.gz: e2df15806d18b7a9463fba1af0a915d7eb271b42171c44b8ca6ba2d4b0314d7c
4
+ data.tar.gz: 542095a6b09cc350520f884ec35316b19e59cfb2ec8dd23474f0929020155c78
5
5
  SHA512:
6
- metadata.gz: 11998db7b9f88af5bef0396a5adb179a9495a8acb21e80b55f9a2e3257557356a5c414039016cf826e06a16e1e6fb5adcbe4e36830000beff84ee9c1abd41852
7
- data.tar.gz: 5fbf7d4e81e2fd1a366310eb5dbfd1d6aad2473d3d54af70ef1e6a095739468c8c0cf6e17df1208d6829af345fe52b4aa713d5abb7443f8da15fb63ae44ba929
6
+ metadata.gz: 853c6bc0e5b9ea946576f04a4fda4c00d3dbade41e6c7f1b95aae97a65cacee29de9df3196dd6570fba5453c6ee99f76fe7b66b3376907adb57813e08b6363f3
7
+ data.tar.gz: b5fa7e8a4122cae417e557638ef8526ef9f9213241ec5d321ffdee25cc768eeb459e2dcc12d5c2c9098fa3576c3e16a237e04988d6479492dc9a56353c44f15a
data/README.md CHANGED
@@ -42,19 +42,6 @@ There are some pages that exist by default and cannot be deleted since there
42
42
  are links to them inside the Decidim framework, see `Decidim::StaticPage` for
43
43
  the default list.
44
44
 
45
- ### Pager Configuration
46
-
47
- The number of results shown per page and per page range can be configured in the app `decidim.rb` initializer as follows:
48
-
49
- ```ruby
50
- Decidim::Admin.configure do |config|
51
- config.per_page_range = [15, 50, 100]
52
- end
53
- ```
54
-
55
- * `Decidim::Admin.per_page_range.first` sets the `default_per_page` value for `Decidim::Admin` (in Kaminari)
56
- * `Decidim::Admin.per_page_range.last` sets the `max_per_page` value for `Decidim::Admin` (in Kaminari)
57
-
58
45
  ## Contributing
59
46
 
60
47
  See [Decidim](https://github.com/decidim/decidim).
@@ -62,7 +62,7 @@ module Decidim
62
62
  return @existing_user if defined?(@existing_user)
63
63
 
64
64
  @existing_user = User.find_by(
65
- email: form.email,
65
+ email: form.email.downcase,
66
66
  organization: private_user_to.organization
67
67
  )
68
68
 
@@ -44,6 +44,7 @@ module Decidim
44
44
  end
45
45
 
46
46
  def run_before_hooks
47
+ Decidim::Reminder.where(component: @component).destroy_all
47
48
  @component.manifest.run_hooks(:before_destroy, @component)
48
49
  end
49
50
 
@@ -9,7 +9,7 @@ module Decidim
9
9
  extend ActiveSupport::Concern
10
10
 
11
11
  included do
12
- include Decidim::Admin::Paginable
12
+ include Decidim::Paginable
13
13
  include Decidim::TranslatableAttributes
14
14
 
15
15
  helper Decidim::Admin::FilterableHelper
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "active_support/concern"
4
+
5
+ module Decidim
6
+ module Admin
7
+ module VerificationConflicts
8
+ module Filterable
9
+ extend ActiveSupport::Concern
10
+
11
+ included do
12
+ include Decidim::Admin::Filterable
13
+
14
+ private
15
+
16
+ def base_query
17
+ collection
18
+ end
19
+
20
+ def search_field_predicate
21
+ :current_user_name_or_current_user_nickname_or_current_user_email_cont
22
+ end
23
+
24
+ def filters
25
+ []
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -17,6 +17,7 @@ module Decidim
17
17
  include Headers::ContentSecurityPolicy
18
18
  include DisableRedirectionToExternalHost
19
19
  include Decidim::Admin::Concerns::HasBreadcrumbItems
20
+ include ActiveStorage::SetCurrent
20
21
 
21
22
  helper Decidim::Admin::ApplicationHelper
22
23
  helper Decidim::Admin::AttributesDisplayHelper
@@ -25,7 +26,6 @@ module Decidim
25
26
  helper Decidim::Admin::IconWithTooltipHelper
26
27
  helper Decidim::Admin::MenuHelper
27
28
  helper Decidim::Admin::ScopesHelper
28
- helper Decidim::Admin::Paginable::PerPageHelper
29
29
  helper Decidim::DecidimFormHelper
30
30
  helper Decidim::ReplaceButtonsHelper
31
31
  helper Decidim::ScopesHelper
@@ -3,18 +3,16 @@
3
3
  module Decidim
4
4
  module Admin
5
5
  class ConflictsController < Decidim::Admin::ApplicationController
6
+ include Decidim::Admin::VerificationConflicts::Filterable
7
+
6
8
  layout "decidim/admin/users"
7
9
 
8
- helper_method :context_breadcrumb_items
10
+ helper_method :context_breadcrumb_items, :conflicts
9
11
 
10
12
  add_breadcrumb_item_from_menu :impersonate_menu
11
13
 
12
14
  def index
13
15
  enforce_permission_to :index, :impersonatable_user
14
-
15
- @conflicts = Decidim::Verifications::Conflict.joins(:current_user).where(
16
- decidim_users: { decidim_organization_id: current_organization.id }
17
- )
18
16
  end
19
17
 
20
18
  def edit
@@ -66,6 +64,16 @@ module Decidim
66
64
  url: decidim_admin.impersonatable_users_path
67
65
  }
68
66
  end
67
+
68
+ def collection
69
+ @collection ||= Decidim::Verifications::Conflict.joins(:current_user).where(
70
+ decidim_users: { decidim_organization_id: current_organization.id }
71
+ )
72
+ end
73
+
74
+ def conflicts
75
+ @conflicts ||= filtered_collection.order(created_at: :desc)
76
+ end
69
77
  end
70
78
  end
71
79
  end
@@ -16,6 +16,19 @@ module Decidim
16
16
  include Decidim::Admin::ResourceScopeHelper
17
17
  include Decidim::Admin::SearchFormHelper
18
18
 
19
+ # Public: Overwrites the `cell` helper method to automatically set some
20
+ # common context.
21
+ #
22
+ # name - the name of the cell to render
23
+ # model - the cell model
24
+ # options - a Hash with options
25
+ #
26
+ # Renders the cell contents.
27
+ def cell(name, model, options = {}, &)
28
+ options = { context: { view_context: self, current_user: } }.deep_merge(options)
29
+ super
30
+ end
31
+
19
32
  def participatory_space_active_link?(component)
20
33
  endpoints = component.manifest.admin_engine.try(:participatory_space_endpoints)
21
34
  endpoints && is_active_link?(decidim_admin_participatory_processes.components_path(current_participatory_space), %r{/\d+/manage/(#{endpoints.join("|")})\b})
@@ -19,7 +19,7 @@
19
19
  <%= cell("decidim/announcement", t(".already_reported_html"), callout_class: "alert" ) %>
20
20
  <% end %>
21
21
 
22
- <% if defined?(Decidim::Templates) %>
22
+ <% if Decidim.module_installed?(:templates) %>
23
23
  <%= render "decidim/templates/admin/block_user_templates/template_chooser", form: f %>
24
24
  <% end %>
25
25
 
@@ -14,8 +14,12 @@
14
14
  <div class="dropdown-pane" id="add-component-dropdown" data-dropdown data-auto-focus="true" data-close-on-click="true">
15
15
  <ul class="vertical menu add-components font-normal">
16
16
  <% @manifests.each do |manifest| %>
17
- <li><%= link_to t("#{manifest.name}.name", scope: "decidim.components"), new_component_path(type: manifest.name), class: manifest.name %></li>
17
+ <%= link_to new_component_path(type: manifest.name), class: manifest.name do %>
18
+ <li>
19
+ <%= t("#{manifest.name}.name", scope: "decidim.components") %>
20
+ </li>
18
21
  <% end %>
22
+ <% end %>
19
23
  </ul>
20
24
  </div>
21
25
  </div>
@@ -1,10 +1,32 @@
1
1
  <% add_decidim_page_title(t("title", scope: "decidim.admin.conflicts")) %>
2
- <div class="card">
3
- <div class="item_show__header">
4
- <h1 class="item_show__header-title">
5
- <%= t("title", scope: "decidim.admin.conflicts") %>
6
- </h1>
2
+ <div class="item_show__header">
3
+ <h1 class="item_show__header-title">
4
+ <%= t("title", scope: "decidim.admin.conflicts") %>
5
+ </h1>
6
+ </div>
7
+
8
+ <div class="filters__section">
9
+ <div class="fcell search">
10
+ <%= search_form_for(query, url: url_for) do |form| %>
11
+ <%= applied_filters_hidden_field_tags %>
12
+ <div class="input-group">
13
+ <%= form.search_field(
14
+ search_field_predicate,
15
+ class: "input-group-field",
16
+ label: false,
17
+ placeholder: t(".text")
18
+ ) %>
19
+ <div class="input-group-button">
20
+ <button type="submit" class="text-secondary" aria-label="<%= t("decidim.search.term_input_placeholder") %>">
21
+ <%= icon "search-line", class: "fill-secondary w-4 h-4" %>
22
+ </button>
23
+ </div>
24
+ </div>
25
+ <% end %>
7
26
  </div>
27
+ </div>
28
+
29
+ <div class="card">
8
30
  <div class="table-scroll">
9
31
  <table class="table-list">
10
32
  <thead>
@@ -17,7 +39,7 @@
17
39
  </tr>
18
40
  </thead>
19
41
  <tbody>
20
- <% @conflicts.each do |conflict| %>
42
+ <% conflicts.each do |conflict| %>
21
43
  <tr>
22
44
  <td><%= conflict.current_user.name %></td>
23
45
  <td><%= conflict.managed_user.name %></td>
@@ -30,3 +52,4 @@
30
52
  </table>
31
53
  </div>
32
54
  </div>
55
+ <%= decidim_paginate conflicts %>
@@ -10,11 +10,11 @@
10
10
  <ul class="vertical menu add-components">
11
11
  <% component.manifest.export_manifests.each do |manifest| %>
12
12
  <% manifest.formats.each do |format| %>
13
- <li class="exports--format--<%= format.downcase %> exports--<%= manifest.name %>">
14
- <%= link_to t("decidim.admin.exports.export_as", name: t("decidim.#{component.manifest.name}.admin.exports.#{manifest.name}"), export_format: t("decidim.admin.exports.formats.#{format}")),
15
- exports_path(component, id: manifest.name, format:, resource_id:, filters:),
16
- method: :post %>
17
- </li>
13
+ <%= link_to exports_path(component, id: manifest.name, format:, resource_id:, filters:), method: :post do %>
14
+ <li class="exports--format--<%= format.downcase %> exports--<%= manifest.name %>">
15
+ <%= t("decidim.admin.exports.export_as", name: t("decidim.#{component.manifest.name}.admin.exports.#{manifest.name}"), export_format: t("decidim.admin.exports.formats.#{format}")) %>
16
+ </li>
17
+ <% end %>
18
18
  <% end %>
19
19
  <% end %>
20
20
  </ul>
@@ -7,10 +7,12 @@
7
7
  <% if custom %>
8
8
  <%= yield %>
9
9
  <% else %>
10
- <% component.manifest.import_manifests.each do |import_manifest| %>
11
- <li class="imports--file imports--<%= import_manifest.name %>">
12
- <%= link_to import_manifest.message(:label, self), admin_imports_path(component, resource_id:, name: import_manifest.name) %>
13
- </li>
10
+ <% component.manifest.import_manifests.each do |import_manifest| %>
11
+ <%= link_to admin_imports_path(component, resource_id:, name: import_manifest.name) do %>
12
+ <li class="imports--file imports--<%= import_manifest.name %>">
13
+ <%= import_manifest.message(:label, self) %>
14
+ </li>
15
+ <% end %>
14
16
  <% end %>
15
17
  <% end %>
16
18
  </ul>
@@ -12,10 +12,11 @@
12
12
  <div class="dropdown-pane" id="example-dropdown" data-dropdown data-position=bottom data-alignment=right data-auto-focus="true" data-close-on-click="true">
13
13
  <ul class="vertical menu add-components">
14
14
  <% mime_types.each do |format, name| %>
15
- <li class="examples--format--<%= format.downcase %> examples--<%= import_manifest.name %>">
16
- <%= link_to t(".download_example_format", name:),
17
- admin_imports_example_path(@current_component, name: import_manifest.name, format:) %>
18
- </li>
15
+ <%= link_to admin_imports_example_path(@current_component, name: import_manifest.name, format:) do %>
16
+ <li class="examples--format--<%= format.downcase %> examples--<%= import_manifest.name %>">
17
+ <%= t(".download_example_format", name:) %>
18
+ </li>
19
+ <% end %>
19
20
  <% end %>
20
21
  </ul>
21
22
  </div>
@@ -54,13 +54,14 @@
54
54
  </div>
55
55
 
56
56
  <% if current_user.admin? %>
57
- <div class="card">
57
+ <div class="card mb-2">
58
58
  <div class="card-divider">
59
59
  <h2 class="card-title"><%= t ".select_scopes" %></h2>
60
60
  </div>
61
61
  <div class="card-section">
62
- <div class="row column">
63
- <%= scopes_picker_filter f, :scope_ids, help_text: t(".scopes_help") %>
62
+ <div class="cell small-12 medium-6 m-4">
63
+ <%= scopes_select_field f, :scope_ids, options: { include_blank: false }, html_options: { class: "chosen-select", multiple: true, size: 5 } %>
64
+ <span class="help-text"> <%= t(".scopes_help") %> </span>
64
65
  </div>
65
66
  </div>
66
67
  </div>
@@ -3,7 +3,7 @@
3
3
  <div id="minimap" class="grid grid-cols-1 md:grid-cols-2">
4
4
  <div class="minimap-tab">
5
5
  <% if current_organization.favicon.attached? %>
6
- <%= image_tag current_organization.attached_uploader(:favicon).path, class: "minimap-favicon" %>
6
+ <%= image_tag current_organization.attached_uploader(:favicon).url, class: "minimap-favicon" %>
7
7
  <% else %>
8
8
  <%= content_tag :div, nil, { class: "minimap-favicon placeholder", style: "width: #{image_width(current_organization, :favicon) * size_factor}px; height: #{image_height(current_organization, :favicon) * size_factor}px;" } do %>
9
9
  <span><%= t("favicon", scope: "activemodel.attributes.organization") %></span>
@@ -13,7 +13,7 @@
13
13
 
14
14
  <div class="minimap-header">
15
15
  <% if current_organization.logo.present? %>
16
- <%= image_tag current_organization.attached_uploader(:logo).path, class: "minimap-logo" %>
16
+ <%= image_tag current_organization.attached_uploader(:logo).url, class: "minimap-logo" %>
17
17
  <% else %>
18
18
  <%= content_tag :div, nil, { class: "minimap-logo placeholder", style: "width: #{image_width(current_organization, :logo) * size_factor}px; height: #{image_height(current_organization, :logo) * size_factor}px;" } do %>
19
19
  <span><%= t("logo", scope: "activemodel.attributes.organization") %></span>
@@ -26,7 +26,7 @@
26
26
 
27
27
  <div class="minimap-footer">
28
28
  <% if current_organization.official_img_footer.attached? %>
29
- <%= image_tag current_organization.attached_uploader(:official_img_footer).path, class: "minimap-official_img_footer" %>
29
+ <%= image_tag current_organization.attached_uploader(:official_img_footer).url, class: "minimap-official_img_footer" %>
30
30
  <% else %>
31
31
  <%= content_tag :div, nil, { class: "minimap-official_img_footer placeholder", style: "width: #{image_width(current_organization, :official_img_footer) * size_factor}px; height: #{image_height(current_organization, :official_img_footer) * size_factor}px;" } do %>
32
32
  <span><%= t("official_img_footer", scope: "activemodel.attributes.organization") %></span>
@@ -23,7 +23,7 @@
23
23
  <div class="layout-nav">
24
24
  <%= link_to decidim_admin.root_path, class: "logo hidden md:block", data: { "external-link": false }, aria: { label: t("decidim.accessibility.logo", organization: current_organization.name) } do %>
25
25
  <% if current_organization.logo.present? %>
26
- <%= image_tag current_organization.attached_uploader(:logo).path, alt: current_organization.name %>
26
+ <%= image_tag current_organization.attached_uploader(:logo).url, alt: current_organization.name %>
27
27
  <% else %>
28
28
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 134 109">
29
29
  <g fill="#fff">
@@ -351,6 +351,8 @@ bg:
351
351
  conflicts:
352
352
  attempts: Опити
353
353
  'false': 'Не'
354
+ index:
355
+ text: Търсете по имейл, име или псевдоним на текущия потребител.
354
356
  managed_user_name: Управляван потребител
355
357
  solved: Разрешен случай
356
358
  title: Проверка на конфликти
@@ -23,7 +23,7 @@ ca:
23
23
  category:
24
24
  description: Descripció
25
25
  name: Nom
26
- parent_id: Pare
26
+ parent_id: Categoria mare
27
27
  weight: Ordre de posició
28
28
  component:
29
29
  name: Nom
@@ -110,7 +110,7 @@ ca:
110
110
  code: Codi
111
111
  name: Nom
112
112
  organization: Organització
113
- parent_id: Pare
113
+ parent_id: Àmbit pare
114
114
  scope_type: Tipus d'àmbit
115
115
  scope_type_id: Tipus d'àmbit
116
116
  scope_type:
@@ -351,6 +351,8 @@ ca:
351
351
  conflicts:
352
352
  attempts: Intents
353
353
  'false': 'No'
354
+ index:
355
+ text: Cercar per correu electrònic, nom o àlies.
354
356
  managed_user_name: Usuari gestionat
355
357
  solved: Resolt
356
358
  title: Conflictes de verificació
@@ -351,6 +351,8 @@ cs:
351
351
  conflicts:
352
352
  attempts: Pokusy
353
353
  'false': 'Ne'
354
+ index:
355
+ text: Hledat podle aktuálního uživatelského e-mailu, jména nebo přezdívky.
354
356
  managed_user_name: Spravovaný uživatel
355
357
  solved: Vyřešeno
356
358
  title: Konflikty ověření
@@ -379,6 +381,11 @@ cs:
379
381
  update: Aktualizovat
380
382
  dashboard:
381
383
  pending_moderations:
384
+ anouncement:
385
+ one: Je zde %{count} čekající na moderování
386
+ few: Jsou zde %{count} čekající na moderování
387
+ many: Je zde %{count} čekajících na moderování
388
+ other: Je tu %{count} čekajících na moderování
382
389
  goto_moderation: Přejít na globální moderaci
383
390
  title: Čekající moderování
384
391
  show:
@@ -351,6 +351,8 @@ de:
351
351
  conflicts:
352
352
  attempts: Versuche
353
353
  'false': 'Nein'
354
+ index:
355
+ text: Suche nach bestehender E-Mail, Name oder Spitzname des Teilnehmenden.
354
356
  managed_user_name: Verwalteter Benutzer
355
357
  solved: Gelöst
356
358
  title: Überprüfungskonflikte
@@ -351,6 +351,8 @@ en:
351
351
  conflicts:
352
352
  attempts: Attempts
353
353
  'false': 'No'
354
+ index:
355
+ text: Search by current user email, name or nickname.
354
356
  managed_user_name: Managed User
355
357
  solved: Solved
356
358
  title: Verification conflicts
@@ -351,6 +351,8 @@ es-MX:
351
351
  conflicts:
352
352
  attempts: Intentos
353
353
  'false': 'No'
354
+ index:
355
+ text: Buscar por correo electrónico, nombre o alias.
354
356
  managed_user_name: Usuario gestionado
355
357
  solved: Resuelto
356
358
  title: Conflictos de verificación
@@ -351,6 +351,8 @@ es-PY:
351
351
  conflicts:
352
352
  attempts: Intentos
353
353
  'false': 'No'
354
+ index:
355
+ text: Buscar por correo electrónico, nombre o alias.
354
356
  managed_user_name: Usuario gestionado
355
357
  solved: Resuelto
356
358
  title: Conflictos de verificación
@@ -23,7 +23,7 @@ es:
23
23
  category:
24
24
  description: Descripción
25
25
  name: Nombre
26
- parent_id: Superior
26
+ parent_id: Categoría madre
27
27
  weight: Orden de posición
28
28
  component:
29
29
  name: Nombre
@@ -110,7 +110,7 @@ es:
110
110
  code: Código
111
111
  name: Nombre
112
112
  organization: Organización
113
- parent_id: Superior
113
+ parent_id: Ámbito padre
114
114
  scope_type: Tipo de ámbito
115
115
  scope_type_id: Tipo de ámbito
116
116
  scope_type:
@@ -351,6 +351,8 @@ es:
351
351
  conflicts:
352
352
  attempts: Intentos
353
353
  'false': 'No'
354
+ index:
355
+ text: Buscar por correo electrónico, nombre o alias.
354
356
  managed_user_name: Usuario gestionado
355
357
  solved: Resuelto
356
358
  title: Conflictos de verificación
@@ -351,6 +351,8 @@ eu:
351
351
  conflicts:
352
352
  attempts: Saiakerak
353
353
  'false': 'Ez'
354
+ index:
355
+ text: Bilatu gaur egungo erabiltzailearen posta elektronikoaren, izenaren edo ezizenaren bidez.
354
356
  managed_user_name: Erabiltzaile kudeatua
355
357
  solved: Ebatzita
356
358
  title: Egiaztapen-arazoak
@@ -319,7 +319,7 @@ fi-pl:
319
319
  create:
320
320
  error: Tämän komponentin luomisessa tapahtui virhe.
321
321
  success: Komponentti luotu onnistuneesti.
322
- success_landing_page: Komponentti luotu onnistuneesti. Voit lisätä sisältölohkon tälle komponentille osallistumistilan etusivulle. Siirry <a href="%{landing_page_path}">Laskeutumissivu-osioon</a> lisätäksesi komponentin osallistumistilan etusivulle.
322
+ success_landing_page: Komponentin luonti onnistui. Voit lisätä sisältölohkon tälle komponentille osallistumistilan etusivulle. Siirry <a href="%{landing_page_path}">Laskeutumissivu-osioon</a> lisätäksesi komponentin osallistumistilan etusivulle.
323
323
  destroy:
324
324
  error: Tämän komponentin tuhoamisessa tapahtui virhe.
325
325
  success: Komponentti poistettu onnistuneesti.
@@ -351,6 +351,8 @@ fi-pl:
351
351
  conflicts:
352
352
  attempts: Yritykset
353
353
  'false': 'Ei'
354
+ index:
355
+ text: Etsi nykyisen käyttäjän sähköpostin, nimen tai nimimerkin perusteella.
354
356
  managed_user_name: Hallittu käyttäjä
355
357
  solved: Ratkaistu
356
358
  title: Vahvistusten ristiriidat
@@ -298,7 +298,7 @@ fi:
298
298
  error: Aihepiirin luonti epäonnistui.
299
299
  success: Aihepiirin luonti onnistui.
300
300
  destroy:
301
- error: Tämän aihepiirin poistaminen epäonnistui. Poista ensin kaikki sen ala-aihepiirit ja varmista, että mikään muu kohde ei liity tähän aihepiiriin. Kokeile sen jälkeen uudestaan.
301
+ error: Tämän aihepiirin poistaminen epäonnistui. Poista ensin kaikki sen ala-aihepiirit ja varmista, että mikään muu kohde ei liity tähän aihepiiriin. Kokeile sen jälkeen uudelleen.
302
302
  success: Aihepiirin poistaminen onnistui.
303
303
  edit:
304
304
  title: Muokkaa aihepiiriä
@@ -319,7 +319,7 @@ fi:
319
319
  create:
320
320
  error: Komponentin luonti epäonnistui.
321
321
  success: Komponentin luonti onnistui.
322
- success_landing_page: Komponentti luotu onnistuneesti. Voit lisätä sisältölohkon tälle komponentille osallistumistilan etusivulle. Siirry <a href="%{landing_page_path}">Laskeutumissivu-osioon</a> lisätäksesi komponentin osallistumistilan etusivulle.
322
+ success_landing_page: Komponentin luonti onnistui. Voit lisätä sisältölohkon tälle komponentille osallistumistilan etusivulle. Siirry <a href="%{landing_page_path}">Laskeutumissivu-osioon</a> lisätäksesi komponentin osallistumistilan etusivulle.
323
323
  destroy:
324
324
  error: Komponentin tuhoaminen epäonnistui.
325
325
  success: Komponentin poisto onnistui.
@@ -351,6 +351,8 @@ fi:
351
351
  conflicts:
352
352
  attempts: Yritykset
353
353
  'false': 'Ei'
354
+ index:
355
+ text: Etsi nykyisen käyttäjän sähköpostin, nimen tai nimimerkin perusteella.
354
356
  managed_user_name: Hallittu käyttäjä
355
357
  solved: Ratkaistu
356
358
  title: Vahvistusten ristiriidat
@@ -729,7 +731,7 @@ fi:
729
731
  newsletters:
730
732
  create:
731
733
  error: Uutiskirjeen luonti epäonnistui.
732
- success: Uutiskirje luotu onnistuneesti. Tarkasta se ennen lähetystä.
734
+ success: Uutiskirjeen luonti onnistui. Tarkasta se ennen lähetystä.
733
735
  deliver:
734
736
  error: Uutiskirjeen toimitus epäonnistui.
735
737
  success: Uutiskirjeen toimitus onnistui.
@@ -887,7 +889,7 @@ fi:
887
889
  participatory_space_private_users_csv_imports:
888
890
  create:
889
891
  invalid: CSV-tiedoston lukeminen epäonnistui. Tarkasta, että olet seurannut esitettyjä ohjeita.
890
- success: CSV-tiedosto ladattu onnistuneesti. Lähetämme kutsusähköpostin osallistujille. Tämä voi kestää hetken.
892
+ success: CSV-tiedoston lataus onnistui. Lähetämme kutsusähköpostin osallistujille. Tämä voi kestää hetken.
891
893
  new:
892
894
  csv_upload:
893
895
  title: Lataa CSV-tiedosto
@@ -1037,7 +1039,7 @@ fi:
1037
1039
  user_group:
1038
1040
  csv_verify:
1039
1041
  invalid: CSV-tiedoston käsittely epäonnistui.
1040
- success: CSV-tiedosto on ladattu onnistuneesti. Vahvistamme kriteerien mukaiset käyttäjäryhmät. Tämä voi kestää hetken.
1042
+ success: CSV-tiedoston lataus onnistui. Vahvistamme kriteerien mukaiset käyttäjäryhmät. Tämä voi kestää hetken.
1041
1043
  reject:
1042
1044
  invalid: Käyttäjäryhmän hylkäys epäonnistui.
1043
1045
  success: Käyttäjäryhmän hylkäys onnistui.
@@ -351,6 +351,8 @@ fr-CA:
351
351
  conflicts:
352
352
  attempts: Tentatives
353
353
  'false': 'Non'
354
+ index:
355
+ text: Recherche par adresse e-mail, nom ou pseudonyme.
354
356
  managed_user_name: Utilisateur représenté
355
357
  solved: Résolu
356
358
  title: Conflits de vérification
@@ -351,6 +351,8 @@ fr:
351
351
  conflicts:
352
352
  attempts: Tentatives
353
353
  'false': 'Non'
354
+ index:
355
+ text: Recherche par adresse e-mail, nom ou pseudonyme.
354
356
  managed_user_name: Utilisateur représenté
355
357
  solved: Résolu
356
358
  title: Conflits de vérification
@@ -351,6 +351,8 @@ ja:
351
351
  conflicts:
352
352
  attempts: 試行回数
353
353
  'false': 'いいえ'
354
+ index:
355
+ text: 現在のユーザーのメールアドレス、名前、ニックネームで検索します。
354
356
  managed_user_name: 管理対象ユーザー
355
357
  solved: 解決済み
356
358
  title: 確認の競合
@@ -425,7 +427,7 @@ ja:
425
427
  reportable_type_string_eq:
426
428
  label: タイプ
427
429
  officialized_at_null:
428
- label: 都道府県:
430
+ label: 状態
429
431
  values:
430
432
  'false': 公式化済み
431
433
  'true': 公式化されていない
@@ -461,7 +463,7 @@ ja:
461
463
  user_name_or_user_email_cont: '%{collection} を名前またはメールアドレスで検索します。'
462
464
  user_name_or_user_nickname_or_user_email_cont: '%{collection} をメール、表示名、アカウントIDで検索します。'
463
465
  state_eq:
464
- label: 都道府県:
466
+ label: 状態
465
467
  values:
466
468
  all: すべて
467
469
  pending: 保留中
@@ -289,6 +289,7 @@ pt-BR:
289
289
  block_user:
290
290
  new:
291
291
  action: Bloquear conta e enviar justificativa
292
+ already_reported_html: Continuar com essa ação também resultará na ocultação o conteúdo de todos os participantes.
292
293
  description: Bloquear um usuário irá tornar sua conta inutilizável. Você pode fornecer em sua justificação quaisquer diretrizes sobre como você poderia considerar desbloquear o usuário.
293
294
  justification: Justificativa
294
295
  title: Bloquear usuário %{name}
@@ -350,6 +351,8 @@ pt-BR:
350
351
  conflicts:
351
352
  attempts: Tentativas
352
353
  'false': 'Não'
354
+ index:
355
+ text: Pesquisar por e-mail, nome ou apelido do usuário.
353
356
  managed_user_name: Usuário gerenciado
354
357
  solved: Resolvido
355
358
  title: Conflitos de verificação