decidim-admin 0.26.5 → 0.26.8

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 (110) hide show
  1. checksums.yaml +4 -4
  2. data/app/commands/decidim/admin/block_user.rb +7 -2
  3. data/app/commands/decidim/admin/publish_component.rb +1 -1
  4. data/app/controllers/concerns/decidim/admin/needs_admin_tos_accepted.rb +42 -0
  5. data/app/controllers/decidim/admin/admin_terms_controller.rb +1 -1
  6. data/app/controllers/decidim/admin/application_controller.rb +1 -0
  7. data/app/controllers/decidim/admin/space_publications_controller.rb +63 -0
  8. data/app/controllers/decidim/admin/static_page_topics_controller.rb +1 -3
  9. data/app/packs/src/decidim/admin/draggable-list.js +1 -1
  10. data/app/packs/stylesheets/decidim/admin/extra/_quill.scss +7 -0
  11. data/app/permissions/decidim/admin/permissions.rb +14 -1
  12. data/app/views/decidim/admin/area_types/edit.html.erb +1 -0
  13. data/app/views/decidim/admin/area_types/index.html.erb +1 -0
  14. data/app/views/decidim/admin/area_types/new.html.erb +1 -0
  15. data/app/views/decidim/admin/areas/edit.html.erb +1 -0
  16. data/app/views/decidim/admin/areas/index.html.erb +1 -0
  17. data/app/views/decidim/admin/areas/new.html.erb +1 -0
  18. data/app/views/decidim/admin/attachment_collections/edit.html.erb +1 -0
  19. data/app/views/decidim/admin/attachment_collections/index.html.erb +1 -0
  20. data/app/views/decidim/admin/attachment_collections/new.html.erb +1 -0
  21. data/app/views/decidim/admin/attachments/edit.html.erb +1 -0
  22. data/app/views/decidim/admin/attachments/index.html.erb +1 -0
  23. data/app/views/decidim/admin/attachments/new.html.erb +1 -0
  24. data/app/views/decidim/admin/authorization_workflows/index.html.erb +1 -0
  25. data/app/views/decidim/admin/categories/edit.html.erb +1 -0
  26. data/app/views/decidim/admin/categories/index.html.erb +1 -0
  27. data/app/views/decidim/admin/categories/new.html.erb +1 -0
  28. data/app/views/decidim/admin/components/edit.html.erb +1 -0
  29. data/app/views/decidim/admin/components/index.html.erb +1 -0
  30. data/app/views/decidim/admin/components/new.html.erb +1 -1
  31. data/app/views/decidim/admin/conflicts/index.html.erb +1 -0
  32. data/app/views/decidim/admin/help_sections/show.erb +1 -0
  33. data/app/views/decidim/admin/impersonatable_users/index.html.erb +1 -0
  34. data/app/views/decidim/admin/impersonations/new.html.erb +1 -0
  35. data/app/views/decidim/admin/logs/index.html.erb +1 -0
  36. data/app/views/decidim/admin/moderated_users/index.html.erb +1 -0
  37. data/app/views/decidim/admin/moderations/index.html.erb +1 -0
  38. data/app/views/decidim/admin/newsletter_templates/index.html.erb +1 -0
  39. data/app/views/decidim/admin/newsletter_templates/show.html.erb +1 -0
  40. data/app/views/decidim/admin/newsletters/index.html.erb +1 -0
  41. data/app/views/decidim/admin/newsletters/new.html.erb +1 -0
  42. data/app/views/decidim/admin/newsletters/show.html.erb +1 -0
  43. data/app/views/decidim/admin/officializations/index.html.erb +15 -10
  44. data/app/views/decidim/admin/officializations/new.html.erb +1 -0
  45. data/app/views/decidim/admin/organization/edit.html.erb +1 -0
  46. data/app/views/decidim/admin/organization_appearance/edit.html.erb +1 -0
  47. data/app/views/decidim/admin/organization_external_domain_whitelist/edit.html.erb +1 -0
  48. data/app/views/decidim/admin/scope_types/edit.html.erb +1 -0
  49. data/app/views/decidim/admin/scope_types/index.html.erb +1 -0
  50. data/app/views/decidim/admin/scope_types/new.html.erb +1 -0
  51. data/app/views/decidim/admin/scopes/edit.html.erb +1 -0
  52. data/app/views/decidim/admin/scopes/index.html.erb +1 -0
  53. data/app/views/decidim/admin/scopes/new.html.erb +1 -0
  54. data/app/views/decidim/admin/shared/landing_page_content_blocks/edit.html.erb +1 -0
  55. data/app/views/decidim/admin/static_page_topics/edit.html.erb +1 -0
  56. data/app/views/decidim/admin/static_page_topics/new.html.erb +1 -0
  57. data/app/views/decidim/admin/static_pages/_form.html.erb +1 -1
  58. data/app/views/decidim/admin/static_pages/edit.html.erb +1 -0
  59. data/app/views/decidim/admin/static_pages/index.html.erb +1 -0
  60. data/app/views/decidim/admin/static_pages/new.html.erb +1 -0
  61. data/app/views/decidim/admin/user_groups/index.html.erb +1 -0
  62. data/app/views/decidim/admin/user_groups_csv_verifications/new.html.erb +1 -0
  63. data/app/views/decidim/admin/users/index.html.erb +1 -0
  64. data/app/views/decidim/admin/users/new.html.erb +1 -0
  65. data/app/views/layouts/decidim/admin/global_moderations.html.erb +1 -0
  66. data/config/environment.rb +1 -0
  67. data/config/locales/ar.yml +10 -5
  68. data/config/locales/ca.yml +9 -6
  69. data/config/locales/cs.yml +5 -2
  70. data/config/locales/de.yml +10 -5
  71. data/config/locales/el.yml +59 -2
  72. data/config/locales/en.yml +6 -3
  73. data/config/locales/es-MX.yml +7 -4
  74. data/config/locales/es-PY.yml +7 -4
  75. data/config/locales/es.yml +8 -5
  76. data/config/locales/eu.yml +8 -13
  77. data/config/locales/fa-IR.yml +1 -0
  78. data/config/locales/fi-plain.yml +5 -2
  79. data/config/locales/fi.yml +8 -5
  80. data/config/locales/fr-CA.yml +6 -3
  81. data/config/locales/fr.yml +7 -4
  82. data/config/locales/gl.yml +0 -5
  83. data/config/locales/hu.yml +37 -22
  84. data/config/locales/id-ID.yml +0 -2
  85. data/config/locales/is-IS.yml +0 -2
  86. data/config/locales/it.yml +0 -5
  87. data/config/locales/ja.yml +13 -10
  88. data/config/locales/kaa.yml +200 -0
  89. data/config/locales/lb.yml +0 -5
  90. data/config/locales/lt.yml +0 -5
  91. data/config/locales/lv.yml +0 -4
  92. data/config/locales/nl.yml +0 -5
  93. data/config/locales/no.yml +0 -5
  94. data/config/locales/pl.yml +0 -5
  95. data/config/locales/pt-BR.yml +62 -3
  96. data/config/locales/pt.yml +0 -5
  97. data/config/locales/ro-RO.yml +10 -10
  98. data/config/locales/ru.yml +0 -2
  99. data/config/locales/sk.yml +0 -4
  100. data/config/locales/sr-CS.yml +0 -4
  101. data/config/locales/sv.yml +0 -6
  102. data/config/locales/tr-TR.yml +3 -5
  103. data/config/locales/uk.yml +0 -2
  104. data/config/locales/zh-CN.yml +0 -4
  105. data/config/locales/zh-TW.yml +1075 -0
  106. data/lib/decidim/admin/form_builder.rb +1 -2
  107. data/lib/decidim/admin/test/needs_admin_tos_accepted_examples.rb +9 -0
  108. data/lib/decidim/admin/test.rb +1 -0
  109. data/lib/decidim/admin/version.rb +1 -1
  110. metadata +14 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b25e792cc39b3d34099ecaa597e1276fb57edd45ebb88029542789ea2bfe9169
4
- data.tar.gz: 52c6be2188c53dbca507274c50a89ecc47a376a5cc49ac827fe17bc37df0c1b3
3
+ metadata.gz: 7ae3bb30016e22eb88e8cdf9118dbe1c1c58702539d2a68ce4863eaf17d40099
4
+ data.tar.gz: b319929c123442784d3416426d3b2cd30cf7a84a06ee15ecc40822270946782c
5
5
  SHA512:
6
- metadata.gz: 90617f1562b04639329aa21eb88a54cdb0e29e258754ea6385f648604f90682b4ad8f9d69dea344e98321dd7272da8fe90f444e86275568b0cc35a778186e48a
7
- data.tar.gz: 6212034bacccfa62cacff1f1c326076f54a5a1bfb5a1127786cc0cad83b9a5bd96a4507535a1fe65365c0eeae0f94f1d20fc0f983aed822a7563f11b69134efd
6
+ metadata.gz: d56cddac04cded212214f8f962171db9b0940650d338c9da3645ce15cf678cfca72ff58c6192b365a38da11b47773483daf59d4e51ae58f5b6e807a0def34907
7
+ data.tar.gz: 7c060e1ba90c6a94afc4a26d0c94c0706bc8aab1db866045d3b7df7bb78f45fc5a80da36a530205ff8415328a53f27e9d8e772eef3b897f5ee3643f87dcefc93
@@ -20,8 +20,9 @@ module Decidim
20
20
  return broadcast(:invalid) unless form.valid?
21
21
 
22
22
  transaction do
23
- block!
23
+ find_or_create_moderation!
24
24
  register_justification!
25
+ block!
25
26
  notify_user!
26
27
  end
27
28
 
@@ -32,6 +33,10 @@ module Decidim
32
33
 
33
34
  attr_reader :form
34
35
 
36
+ def find_or_create_moderation!
37
+ Decidim::UserModeration.create_or_find_by!(user: form.user)
38
+ end
39
+
35
40
  def register_justification!
36
41
  @current_blocking = UserBlock.create!(
37
42
  justification: form.justification,
@@ -65,7 +70,7 @@ module Decidim
65
70
  ) do
66
71
  form.user.blocked = true
67
72
  form.user.blocked_at = Time.current
68
- form.user.blocking = @current_blocking
73
+ form.user.block_id = @current_blocking.id
69
74
  form.user.extended_data["user_name"] = form.user.name
70
75
  form.user.name = "Blocked user"
71
76
  form.user.save!
@@ -18,7 +18,7 @@ module Decidim
18
18
  # Broadcasts :ok if published, :invalid otherwise.
19
19
  def call
20
20
  publish_component
21
- publish_event
21
+ publish_event unless component.previously_published?
22
22
 
23
23
  broadcast(:ok)
24
24
  end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Admin
5
+ # Shared behaviour for signed_in admins that require the latest TOS accepted
6
+ module NeedsAdminTosAccepted
7
+ extend ActiveSupport::Concern
8
+
9
+ included do
10
+ before_action :tos_accepted_by_admin
11
+ end
12
+
13
+ private
14
+
15
+ def tos_accepted_by_admin
16
+ return unless request.format.html?
17
+ return unless current_user
18
+ return if current_user.admin_terms_accepted?
19
+ return if permitted_paths?
20
+
21
+ store_location_for(
22
+ current_user,
23
+ request.path
24
+ )
25
+ redirect_to admin_tos_path
26
+ end
27
+
28
+ def permitted_paths?
29
+ # ensure that path with or without query string pass
30
+ permitted_paths.find { |el| el.split("?").first == request.path }
31
+ end
32
+
33
+ def permitted_paths
34
+ [admin_tos_path, decidim_admin.admin_terms_accept_path]
35
+ end
36
+
37
+ def admin_tos_path
38
+ decidim_admin.admin_terms_show_path
39
+ end
40
+ end
41
+ end
42
+ end
@@ -9,7 +9,7 @@ module Decidim
9
9
  current_user.admin_terms_accepted_at = Time.current
10
10
  if current_user.save!
11
11
  flash[:notice] = t("accept.success", scope: "decidim.admin.admin_terms_of_use")
12
- redirect_to decidim_admin.root_path
12
+ redirect_to stored_location_for(current_user) || decidim_admin.root_path
13
13
  else
14
14
  flash[:alert] = t("accept.error", scope: "decidim.admin.admin_terms_of_use")
15
15
  redirect_to decidim_admin.admin_terms_show_path
@@ -7,6 +7,7 @@ module Decidim
7
7
  include NeedsOrganization
8
8
  include NeedsPermission
9
9
  include NeedsSnippets
10
+ include NeedsAdminTosAccepted
10
11
  include FormFactory
11
12
  include LocaleSwitcher
12
13
  include UseOrganizationTimeZone
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Admin
5
+ # Base controller that can be inherited by other spaces to publish and unpublish the Space
6
+ #
7
+ class SpacePublicationsController < Decidim::Assemblies::Admin::ApplicationController
8
+ def create
9
+ enforce_permission_to_publish
10
+
11
+ publish_command.call(current_assembly, current_user) do
12
+ on(:ok) do
13
+ flash[:notice] = I18n.t("create.success", scope: i18n_scope)
14
+ end
15
+
16
+ on(:invalid) do
17
+ flash.now[:alert] = I18n.t("create.error", scope: i18n_scope)
18
+ end
19
+
20
+ redirect_back(fallback_location: assemblies_path)
21
+ end
22
+ end
23
+
24
+ def destroy
25
+ enforce_permission_to_publish
26
+
27
+ unpublish_command.call(current_assembly, current_user) do
28
+ on(:ok) do
29
+ flash[:notice] = I18n.t("destroy.success", scope: i18n_scope)
30
+ end
31
+
32
+ on(:invalid) do
33
+ flash.now[:alert] = I18n.t("destroy.error", scope: i18n_scope)
34
+ end
35
+
36
+ redirect_back(fallback_location: assemblies_path)
37
+ end
38
+ end
39
+
40
+ private
41
+
42
+ def current_participatory_space
43
+ raise "Not implemented"
44
+ end
45
+
46
+ def enforce_permission_to_publish
47
+ raise "Not implemented"
48
+ end
49
+
50
+ def publish_command
51
+ raise "Not implemented"
52
+ end
53
+
54
+ def unpublish_command
55
+ raise "Not implemented"
56
+ end
57
+
58
+ def i18n_scope
59
+ raise "Not implemented"
60
+ end
61
+ end
62
+ end
63
+ end
@@ -64,9 +64,7 @@ module Decidim
64
64
  private
65
65
 
66
66
  def topic
67
- @topic ||= StaticPageTopic.where(
68
- organization: current_organization
69
- ).find(params[:id])
67
+ @topic ||= current_organization.static_page_topics.find(params[:id])
70
68
  end
71
69
  end
72
70
  end
@@ -5,7 +5,7 @@ export default function createSortableList(lists) {
5
5
  createSortList(lists, {
6
6
  handle: "li",
7
7
  forcePlaceholderSize: true,
8
- connectWith: ".js-connect"
8
+ acceptFrom: ".js-connect"
9
9
  })
10
10
  }
11
11
 
@@ -3,3 +3,10 @@
3
3
  background: #eee;
4
4
  }
5
5
  }
6
+
7
+ .editor-container{
8
+ ul,
9
+ ol{
10
+ margin-bottom: 1rem;
11
+ }
12
+ }
@@ -39,10 +39,10 @@ module Decidim
39
39
  allow! if templates_action?
40
40
  allow! if organization_action?
41
41
  allow! if user_action?
42
+ allow! if admin_user_action?
42
43
 
43
44
  allow! if permission_action.subject == :category
44
45
  allow! if permission_action.subject == :component
45
- allow! if permission_action.subject == :admin_user
46
46
  allow! if permission_action.subject == :attachment
47
47
  allow! if permission_action.subject == :editor_image
48
48
  allow! if permission_action.subject == :attachment_collection
@@ -200,6 +200,19 @@ module Decidim
200
200
  end
201
201
  end
202
202
 
203
+ def admin_user_action?
204
+ return unless permission_action.subject == :admin_user
205
+
206
+ target_user = context.fetch(:user, nil)
207
+
208
+ case permission_action.action
209
+ when :destroy, :block
210
+ target_user != user
211
+ else
212
+ true
213
+ end
214
+ end
215
+
203
216
  def organization
204
217
  @organization ||= context.fetch(:organization, nil) || context.fetch(:current_organization, nil)
205
218
  end
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("decidim.admin.titles.area_types")) %>
1
2
  <div class="card" id="area-types">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("areas", scope: "decidim.admin.titles")) %>
1
2
  <div class="card" id="areas">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, url: areas_path) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("attachment_collections.edit.title", scope: "decidim.admin")) %>
1
2
  <%= decidim_form_for(@form, url: url_for([@attachment_collection.collection_for, @attachment_collection]), html: { class: "form edit_attachment_collection" }) do |f| %>
2
3
  <%= render partial: "decidim/admin/attachment_collections/form", object: f, locals: { title: t("attachment_collections.edit.title", scope: "decidim.admin") } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("attachment_collections.index.attachment_collections_title", scope: "decidim.admin")) %>
1
2
  <div class="card" id="attachment_collections">
2
3
  <div class="card-divider">
3
4
  <h2 class='card-title'>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("attachment_collections.new.title", scope: "decidim.admin")) %>
1
2
  <%= decidim_form_for(@form, url: url_for([collection_for, @form]), html: { class: "form new_attachment_collection" }) do |f| %>
2
3
  <%= render partial: "decidim/admin/attachment_collections/form", object: f, locals: { title: t("attachment_collections.new.title", scope: "decidim.admin") } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, url: url_for([@attachment.attached_to, @attachment]), html: { class: "form edit_attachment" }) do |f| %>
2
3
  <%= render partial: "decidim/admin/attachments/form", object: f, locals: { title: t(".title") } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".attachments_title")) %>
1
2
  <div class='card' id="attachments">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, url: url_for([attached_to, @form]), html: { class: "form new_attachment" }) do |f| %>
2
3
  <%= render partial: "decidim/admin/attachments/form", object: f, locals: { title: t(".title") } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("authorization_workflows", scope: "decidim.admin.titles")) %>
1
2
  <div class="card">
2
3
  <%= cell("decidim/verifications/revocations", @authorizations) %>
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, url: category_path(@category.participatory_space, @category), html: { class: "form edit_category" }) do |f| %>
2
3
  <%= render partial: "form", object: f, locals: { title: t(".title") } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("categories.index.categories_title", scope: "decidim.admin")) %>
1
2
  <div class="card" id="categories">
2
3
  <div class="card-divider">
3
4
  <h2 class='card-title'>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("categories.new.title", scope: "decidim.admin")) %>
1
2
  <%= decidim_form_for(@form, url: categories_path(current_participatory_space), html: { class: "form new_category" }) do |f| %>
2
3
  <%= render partial: "form", object: f, locals: { title: t("categories.new.title", scope: "decidim.admin") } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title", name: t("#{@component.manifest.name}.name", scope: "decidim.components"))) %>
1
2
  <%= decidim_form_for([current_participatory_space, @form], url: component_path(current_participatory_space, @component), method: "put", html: { class: "form edit_component" }) do |form| %>
2
3
  <%= render partial: "form", object: form, locals: { component: @component, title: t(".title", name: t("#{@component.manifest.name}.name", scope: "decidim.components")) } %>
3
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("components.title", scope: "decidim.admin")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,4 +1,4 @@
1
-
1
+ <% add_decidim_page_title(t(".title", name: t("#{manifest.name}.name", scope: "decidim.components"))) %>
2
2
  <%= decidim_form_for([current_participatory_space, @form], url: components_path(type: params[:type]), method: "post", html: { class: "form new_component" }) do |form| %>
3
3
  <%= render partial: "form", object: form, locals: { component: @component, title: t(".title", name: t("#{manifest.name}.name", scope: "decidim.components")) } %>
4
4
 
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("title", scope: "decidim.admin.conflicts")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1 +1,2 @@
1
+ <% add_decidim_page_title(t("help_sections", scope: "decidim.admin.menu")) %>
1
2
  <%= render partial: "form", object: @form %>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("impersonatable_users", scope: "decidim.admin.titles")) %>
1
2
  <% if current_organization.available_authorizations.empty? %>
2
3
  <div class="section">
3
4
  <div class="callout warning">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("impersonate_new_managed_user", scope: "decidim.admin.impersonations.new")) %>
1
2
  <h2 class="process-title-summary">
2
3
  <% if creating_managed_user? %>
3
4
  <%= t(".impersonate_new_managed_user") %>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("admin_log", scope: "decidim.admin.titles")) %>
1
2
  <div class="content">
2
3
  <div class="row">
3
4
  <%= render partial: "decidim/admin/logs/logs_list", locals: { logs: logs } %>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <div class="card with-overflow">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".preview", template_name: t(template_manifest.public_name_key))) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title"><%= t ".preview", template_name: t(template_manifest.public_name_key) %></h2>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form new_newsletter" }, url: newsletter_template_newsletters_path(newsletter_template_id: params[:newsletter_template_id])) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".preview")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title"><%= t ".preview" %></h2>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("decidim.admin.titles.participants")) %>
1
2
  <div class="card with-overflow" id='user-groups'>
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title"><%= t "decidim.admin.titles.participants" %></h2>
@@ -33,7 +34,7 @@
33
34
  <td><%= user.report_count %></td>
34
35
 
35
36
  <td class="table-list__actions">
36
- <% if allowed_to?(:block, :admin_user) %>
37
+ <% if allowed_to?(:block, :admin_user, user: user) %>
37
38
  <% if user.blocked? %>
38
39
  <%= icon_link_to "ban", user_block_path(user_id: user.id), t(".unblock"), class: "action-icon action-icon--disabled", method: :delete %>
39
40
  <% else %>
@@ -43,15 +44,19 @@
43
44
  <% if allowed_to? :show_email, :user, user: user %>
44
45
  <%= icon_link_to "envelope-open", show_email_officialization_path(user_id: user.id), t(".show_email"), class: "action-icon action-icon--show-email", data: { full_name: user.name, toggle: "show-email-modal" } %>
45
46
  <% end %>
46
- <%= icon_link_to "envelope-closed", current_or_new_conversation_path_with(user), t("decidim.contact"), class:"action-icon--new" %>
47
- <% if user.officialized? %>
48
- <%= icon "circle-check", class: "action-icon action-icon--disabled", role: "img", aria_label: t(".officialize") %>
49
- <%= icon_link_to "pencil", new_officialization_path(user_id: user.id), t(".reofficialize"), class: "action-icon--new" %>
50
- <%= icon_link_to "circle-x", officialization_path(user.id), t(".unofficialize"), method: :delete, class: "action-icon--reject" %>
51
- <% else %>
52
- <%= icon_link_to "circle-check", new_officialization_path(user_id: user.id), t(".officialize"), class: "action-icon--verify" %>
53
- <%= icon "pencil", class: "action-icon action-icon--disabled", role: "img", aria_label: t(".reofficialize") %>
54
- <%= icon "circle-x", class: "action-icon action-icon--disabled", role: "img", aria_label: t(".unofficialize") %>
47
+ <% unless user.blocked? %>
48
+ <% unless current_user == user %>
49
+ <%= icon_link_to "envelope-closed", current_or_new_conversation_path_with(user), t("decidim.contact"), class:"action-icon--new" %>
50
+ <% end %>
51
+ <% if user.officialized? %>
52
+ <%= icon "circle-check", class: "action-icon action-icon--disabled", role: "img", aria_label: t(".officialize") %>
53
+ <%= icon_link_to "pencil", new_officialization_path(user_id: user.id), t(".reofficialize"), class: "action-icon--new" %>
54
+ <%= icon_link_to "circle-x", officialization_path(user.id), t(".unofficialize"), method: :delete, class: "action-icon--reject" %>
55
+ <% else %>
56
+ <%= icon_link_to "circle-check", new_officialization_path(user_id: user.id), t(".officialize"), class: "action-icon--verify" %>
57
+ <%= icon "pencil", class: "action-icon action-icon--disabled", role: "img", aria_label: t(".reofficialize") %>
58
+ <%= icon "circle-x", class: "action-icon action-icon--disabled", role: "img", aria_label: t(".unofficialize") %>
59
+ <% end %>
55
60
  <% end %>
56
61
  </td>
57
62
  </tr>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title", name: user.name)) %>
1
2
  <h2 class="process-title-summary">
2
3
  <%= t(".title", name: user.name) %>
3
4
  </h2>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form edit_organization" }, url: organization_path) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("edit_organization_appearance", scope: "decidim.admin.titles")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form edit_organization_appearance" }, url: organization_appearance_path, method: :put) do |f| %>
2
3
  <%= render partial: "form", object: f %>
3
4
  <div class="button--double form-general-submit">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("edit_external_domains", scope: "decidim.admin.titles")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form edit_organization_external_domain_whitelist" }, url: organization_external_domain_whitelist_path, method: :patch) do |f| %>
2
3
  <%= render partial: "form", object: f %>
3
4
  <div class="button--double form-general-submit">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("decidim.admin.titles.scope_types")) %>
1
2
  <div class="card" id="scope-types">
2
3
  <div class="card-divider">
3
4
  <% if allowed_to? :creste, :scope_type %>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("decidim.admin.titles.scopes")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, url: current_scopes_path) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(content_block.public_name_key)) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form edit_content_block" }, url: resource_landing_page_content_block_path) do |form| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form edit_static_page_topic" }) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form new_static_page_topic" }) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -10,7 +10,7 @@
10
10
  <% end %>
11
11
 
12
12
  <div class="row column">
13
- <%= form.translated :editor, :content, toolbar: :full, lines: 25 %>
13
+ <%= form.translated :editor, :content %>
14
14
  </div>
15
15
 
16
16
  <div class="row column">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title t(".title") %>
1
2
  <%= decidim_form_for(@form, html: { class: "form edit_static_page" }) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("pages", scope: "decidim.admin.titles")) %>
1
2
  <% @topics.each do |topic| %>
2
3
  <%= render partial: "topic", locals: { pages: topic.pages, topic: topic } %>
3
4
  <% end %>
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form new_static_page" }) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("decidim.admin.titles.user_groups")) %>
1
2
  <div class="card" id='user-groups'>
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <div class="card" id='user-groups'>
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t("decidim.admin.titles.users")) %>
1
2
  <div class="card">
2
3
  <div class="card-divider">
3
4
  <h2 class="card-title">
@@ -1,3 +1,4 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <%= decidim_form_for(@form, html: { class: "form new_user" }) do |f| %>
2
3
  <div class="card">
3
4
  <div class="card-divider">