decidim-admin 0.27.4 → 0.27.6
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.
- checksums.yaml +4 -4
- data/app/commands/decidim/admin/destroy_category.rb +1 -1
- data/app/controllers/concerns/decidim/admin/needs_admin_tos_accepted.rb +36 -0
- data/app/controllers/concerns/decidim/moderations/admin/filterable.rb +4 -0
- data/app/controllers/decidim/admin/application_controller.rb +1 -0
- data/app/controllers/decidim/admin/conflicts_controller.rb +6 -0
- data/app/controllers/decidim/admin/impersonatable_users_controller.rb +1 -1
- data/app/controllers/decidim/admin/managed_users/impersonation_logs_controller.rb +2 -0
- data/app/events/decidim/component_published_event.rb +11 -0
- data/app/events/decidim/resource_hidden_event.rb +5 -1
- data/app/forms/decidim/admin/organization_form.rb +2 -2
- data/app/helpers/decidim/admin/admin_terms_helper.rb +1 -1
- data/app/helpers/decidim/admin/newsletters_helper.rb +1 -1
- data/app/packs/images/decidim/admin/.keep +0 -0
- data/app/packs/stylesheets/decidim/admin/_variables.scss +1 -1
- data/app/views/decidim/admin/categories/index.html.erb +7 -1
- data/app/views/decidim/admin/components/_actions.html.erb +43 -0
- data/app/views/decidim/admin/components/_component.html.erb +3 -41
- data/app/views/decidim/admin/resource_permissions/edit.html.erb +2 -2
- data/app/views/layouts/decidim/admin/_header.html.erb +3 -0
- data/app/views/layouts/decidim/admin/_js_configuration.html.erb +1 -0
- data/config/locales/ar.yml +8 -19
- data/config/locales/bg.yml +153 -1
- data/config/locales/ca.yml +9 -9
- data/config/locales/cs.yml +8 -8
- data/config/locales/de.yml +27 -27
- data/config/locales/el.yml +1 -20
- data/config/locales/en.yml +2 -2
- data/config/locales/es-MX.yml +10 -10
- data/config/locales/es-PY.yml +10 -10
- data/config/locales/es.yml +10 -10
- data/config/locales/eu.yml +311 -284
- data/config/locales/fi-plain.yml +5 -5
- data/config/locales/fi.yml +6 -6
- data/config/locales/fr-CA.yml +10 -10
- data/config/locales/fr.yml +11 -11
- data/config/locales/ga-IE.yml +0 -5
- data/config/locales/gl.yml +3 -20
- data/config/locales/he-IL.yml +53 -0
- data/config/locales/hu.yml +20 -18
- data/config/locales/id-ID.yml +5 -7
- data/config/locales/is-IS.yml +4 -3
- data/config/locales/it.yml +0 -19
- data/config/locales/ja.yml +11 -11
- data/config/locales/kaa.yml +15 -1
- data/config/locales/ko.yml +720 -0
- data/config/locales/lb.yml +3 -22
- data/config/locales/lt.yml +31 -21
- data/config/locales/lv.yml +5 -9
- data/config/locales/nl.yml +2 -21
- data/config/locales/no.yml +2 -17
- data/config/locales/pl.yml +42 -9
- data/config/locales/pt-BR.yml +36 -19
- data/config/locales/pt.yml +4 -23
- data/config/locales/ro-RO.yml +2 -21
- data/config/locales/ru.yml +5 -8
- data/config/locales/sk.yml +2 -10
- data/config/locales/sl.yml +3 -1
- data/config/locales/sq-AL.yml +133 -0
- data/config/locales/sr-CS.yml +13 -6
- data/config/locales/sv.yml +1 -19
- data/config/locales/th-TH.yml +1 -0
- data/config/locales/tr-TR.yml +7 -13
- data/config/locales/uk.yml +3 -8
- data/config/locales/zh-CN.yml +2 -10
- data/config/locales/zh-TW.yml +0 -19
- data/config/routes.rb +2 -0
- data/decidim-admin.gemspec +36 -0
- data/lib/decidim/admin/test/admin_participatory_space_access_examples.rb +49 -0
- data/lib/decidim/admin/test/commands/destroy_category_examples.rb +9 -0
- data/lib/decidim/admin/version.rb +1 -1
- metadata +26 -15
- data/app/controllers/decidim/admin/space_publications_controller.rb +0 -63
- data/config/environment.rb +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac7830a2645388ae03864d86fb38168f35a78d55f54bd0604e036cc2c6ae0fc3
|
4
|
+
data.tar.gz: c79d6f340b53876b9f3d52ef0396d819020b605e74ff9c6f3d4e5928f724a448
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0aeb935a256dcd62884e98e6cd195cbebec24b307998a58a12178455f7a8cbd8c8661ee938b38c85b99974d69b15b42c0862ed6c75426ae22712528b815bba9f
|
7
|
+
data.tar.gz: c79145b76878d87273d2bfaee29273a0af4e5d541d901258c746caa04cd5dc51faf5ef68f54c5e28a5c18db0a284668b48792c9c306964b2bc1142cead6be567
|
@@ -20,7 +20,7 @@ module Decidim
|
|
20
20
|
#
|
21
21
|
# Returns nothing.
|
22
22
|
def call
|
23
|
-
return broadcast(:invalid) if category.nil? || category.subcategories.any?
|
23
|
+
return broadcast(:invalid) if category.nil? || category.subcategories.any? || !category.unused?
|
24
24
|
|
25
25
|
destroy_category
|
26
26
|
broadcast(:ok)
|
@@ -15,6 +15,7 @@ module Decidim
|
|
15
15
|
def tos_accepted_by_admin
|
16
16
|
return unless request.format.html?
|
17
17
|
return unless current_user
|
18
|
+
return unless user_has_any_role?
|
18
19
|
return if current_user.admin_terms_accepted?
|
19
20
|
return if permitted_paths?
|
20
21
|
|
@@ -37,6 +38,41 @@ module Decidim
|
|
37
38
|
def admin_tos_path
|
38
39
|
decidim_admin.admin_terms_show_path
|
39
40
|
end
|
41
|
+
|
42
|
+
def user_has_any_role?
|
43
|
+
return true if current_user.admin
|
44
|
+
return true if current_user.roles.any?
|
45
|
+
return true if participatory_process_user_role?
|
46
|
+
return true if assembly_user_role?
|
47
|
+
return true if conference_user_role?
|
48
|
+
return true if voting_monitoring_commitee_member?
|
49
|
+
|
50
|
+
false
|
51
|
+
end
|
52
|
+
|
53
|
+
def participatory_process_user_role?
|
54
|
+
return false unless Decidim.module_installed?(:participatory_processes)
|
55
|
+
|
56
|
+
true if Decidim::ParticipatoryProcessUserRole.exists?(user: current_user)
|
57
|
+
end
|
58
|
+
|
59
|
+
def assembly_user_role?
|
60
|
+
return false unless Decidim.module_installed?(:assemblies)
|
61
|
+
|
62
|
+
true if Decidim::AssemblyUserRole.exists?(user: current_user)
|
63
|
+
end
|
64
|
+
|
65
|
+
def conference_user_role?
|
66
|
+
return false unless Decidim.module_installed?(:conferences)
|
67
|
+
|
68
|
+
true if Decidim::ConferenceUserRole.exists?(user: current_user)
|
69
|
+
end
|
70
|
+
|
71
|
+
def voting_monitoring_commitee_member?
|
72
|
+
return false unless Decidim.module_installed?(:elections)
|
73
|
+
|
74
|
+
true if Decidim::Votings::MonitoringCommitteeMember.exists?(user: current_user)
|
75
|
+
end
|
40
76
|
end
|
41
77
|
end
|
42
78
|
end
|
@@ -30,6 +30,7 @@ module Decidim
|
|
30
30
|
helper Decidim::LanguageChooserHelper
|
31
31
|
helper Decidim::ComponentPathHelper
|
32
32
|
helper Decidim::SanitizeHelper
|
33
|
+
helper Decidim::Templates::Admin::ApplicationHelper if Decidim.module_installed?(:templates) && defined?(Decidim::Templates::Admin::ApplicationHelper)
|
33
34
|
|
34
35
|
default_form_builder Decidim::Admin::FormBuilder
|
35
36
|
|
@@ -6,12 +6,16 @@ module Decidim
|
|
6
6
|
layout "decidim/admin/users"
|
7
7
|
|
8
8
|
def index
|
9
|
+
enforce_permission_to :index, :impersonatable_user
|
10
|
+
|
9
11
|
@conflicts = Decidim::Verifications::Conflict.joins(:current_user).where(
|
10
12
|
decidim_users: { decidim_organization_id: current_organization.id }
|
11
13
|
)
|
12
14
|
end
|
13
15
|
|
14
16
|
def edit
|
17
|
+
enforce_permission_to :index, :impersonatable_user
|
18
|
+
|
15
19
|
conflict = Decidim::Verifications::Conflict.find(params[:id])
|
16
20
|
|
17
21
|
@form = form(TransferUserForm).from_params(
|
@@ -22,6 +26,8 @@ module Decidim
|
|
22
26
|
end
|
23
27
|
|
24
28
|
def update
|
29
|
+
enforce_permission_to :index, :impersonatable_user
|
30
|
+
|
25
31
|
conflict = Decidim::Verifications::Conflict.find(params[:id])
|
26
32
|
|
27
33
|
@form = form(TransferUserForm).from_params(
|
@@ -2,5 +2,16 @@
|
|
2
2
|
|
3
3
|
module Decidim
|
4
4
|
class ComponentPublishedEvent < Decidim::Events::SimpleEvent
|
5
|
+
# Public: The Hash of options to pass to the I18.t method.
|
6
|
+
def i18n_options
|
7
|
+
default_i18n_options.merge(event_interpolations)
|
8
|
+
end
|
9
|
+
|
10
|
+
def resource_title
|
11
|
+
return unless resource
|
12
|
+
|
13
|
+
title = decidim_sanitize_translated(resource.name)
|
14
|
+
Decidim::ContentProcessor.render_without_format(title, links: false).html_safe
|
15
|
+
end
|
5
16
|
end
|
6
17
|
end
|
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
module Decidim
|
4
4
|
class ResourceHiddenEvent < Decidim::Events::SimpleEvent
|
5
|
+
include Decidim::ApplicationHelper
|
6
|
+
|
5
7
|
i18n_attributes :resource_path, :report_reasons, :resource_type, :resource_content
|
6
8
|
|
7
9
|
def resource_path
|
@@ -23,7 +25,9 @@ module Decidim
|
|
23
25
|
end
|
24
26
|
|
25
27
|
def resource_content
|
26
|
-
translated_attribute(@resource[@resource.reported_attributes.first])
|
28
|
+
text = translated_attribute(@resource[@resource.reported_attributes.first])
|
29
|
+
|
30
|
+
decidim_sanitize(html_truncate(text, length: 100), strip_tags: true)
|
27
31
|
end
|
28
32
|
|
29
33
|
def resource_text
|
@@ -21,7 +21,7 @@ module Decidim
|
|
21
21
|
attribute :default_locale, String
|
22
22
|
attribute :badges_enabled, Boolean
|
23
23
|
attribute :user_groups_enabled, Boolean
|
24
|
-
attribute :comments_max_length, Integer
|
24
|
+
attribute :comments_max_length, Integer, default: 0
|
25
25
|
attribute :rich_text_editor_in_public_views, Boolean
|
26
26
|
attribute :enable_machine_translations, Boolean
|
27
27
|
attribute :machine_translation_display_priority, String
|
@@ -43,7 +43,7 @@ module Decidim
|
|
43
43
|
validates :default_locale, :reference_prefix, presence: true
|
44
44
|
validates :default_locale, inclusion: { in: :available_locales }
|
45
45
|
validates :admin_terms_of_use_body, translatable_presence: true
|
46
|
-
validates :comments_max_length, numericality: {
|
46
|
+
validates :comments_max_length, presence: true, numericality: { greater_than_or_equal_to: 0 }
|
47
47
|
validates :machine_translation_display_priority,
|
48
48
|
inclusion: { in: Decidim::Organization::AVAILABLE_MACHINE_TRANSLATION_DISPLAY_PRIORITIES },
|
49
49
|
if: :machine_translation_enabled?
|
@@ -5,7 +5,7 @@ module Decidim
|
|
5
5
|
# This module includes helpers to show Admin Terms of Use
|
6
6
|
module AdminTermsHelper
|
7
7
|
def admin_terms_of_use_body
|
8
|
-
current_organization.admin_terms_of_use_body.
|
8
|
+
decidim_sanitize_admin(translated_attribute(current_organization.admin_terms_of_use_body)).html_safe
|
9
9
|
end
|
10
10
|
|
11
11
|
def announcement_body
|
@@ -74,7 +74,7 @@ module Decidim
|
|
74
74
|
else
|
75
75
|
Decidim.find_participatory_space_manifest(type["manifest_name"].to_sym)
|
76
76
|
.participatory_spaces.call(current_organization).where(id: type["ids"]).each do |space|
|
77
|
-
html += "<strong>#{
|
77
|
+
html += "<strong>#{decidim_escape_translated space.title}</strong>"
|
78
78
|
end
|
79
79
|
end
|
80
80
|
html += "<br/>"
|
File without changes
|
@@ -52,7 +52,13 @@
|
|
52
52
|
<% end %>
|
53
53
|
|
54
54
|
<% if allowed_to? :destroy, :category, category: subcategory %>
|
55
|
-
|
55
|
+
<% if subcategory.unused? %>
|
56
|
+
<%= icon_link_to "circle-x", category_path(current_participatory_space, subcategory), t("actions.destroy", scope: "decidim.admin"), class: "action-icon--remove", method: :delete, data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") } %>
|
57
|
+
<% else %>
|
58
|
+
<span class="action-icon" title="<%= t("categories.index.category_used", scope: "decidim.admin") %>" data-tooltip="true" data-disable-hover="false">
|
59
|
+
<%= icon "delete-bin-line", class: "action-icon action-icon--disabled", role: "img", "aria-hidden": true %>
|
60
|
+
</span>
|
61
|
+
<% end %>
|
56
62
|
<% end %>
|
57
63
|
</td>
|
58
64
|
</tr>
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<% if component.manifest.admin_engine %>
|
2
|
+
<%= icon_link_to "pencil", manage_component_path(component), t("actions.manage", scope: "decidim.admin"), class: "action-icon--manage" %>
|
3
|
+
<% else %>
|
4
|
+
<span class="action-space icon"></span>
|
5
|
+
<% end %>
|
6
|
+
|
7
|
+
<% if allowed_to?(:update, :component, component: component) %>
|
8
|
+
<% if component.published? %>
|
9
|
+
<%= icon_link_to "x", url_for(action: :unpublish, id: component, controller: "components"), t("actions.unpublish", scope: "decidim.admin"), class: "action-icon--unpublish", method: :put %>
|
10
|
+
<% else %>
|
11
|
+
<%= icon_link_to "check", url_for(action: :publish, id: component, controller: "components"), t("actions.publish", scope: "decidim.admin"), class: "action-icon--publish", method: :put %>
|
12
|
+
<% end %>
|
13
|
+
<% else %>
|
14
|
+
<span class="action-space icon"></span>
|
15
|
+
<% end %>
|
16
|
+
|
17
|
+
<% if allowed_to? :update, :component, component: component %>
|
18
|
+
<%= icon_link_to "cog", url_for(action: :edit, id: component, controller: "components"), t("actions.configure", scope: "decidim.admin"), class: "action-icon--configure" %>
|
19
|
+
<% else %>
|
20
|
+
<span class="action-space icon"></span>
|
21
|
+
<% end %>
|
22
|
+
|
23
|
+
<% if allowed_to? :update, :component, component: component %>
|
24
|
+
<% if component.manifest.actions.empty? %>
|
25
|
+
<%= icon "key", class: "action-icon action-icon--disabled" %>
|
26
|
+
<% else %>
|
27
|
+
<%= icon_link_to "key", url_for(action: :edit, component_id: component, controller: "component_permissions"), t("actions.permissions", scope: "decidim.admin"), class: "action-icon--permissions" %>
|
28
|
+
<% end %>
|
29
|
+
<% else %>
|
30
|
+
<span class="action-space icon"></span>
|
31
|
+
<% end %>
|
32
|
+
|
33
|
+
<% if allowed_to? :share, :component, component: component %>
|
34
|
+
<%= icon_link_to "share", url_for(action: :share, id: component, controller: "components"), t("actions.share", scope: "decidim.admin"), class: "action-icon--share", target: "_blank" %>
|
35
|
+
<% else %>
|
36
|
+
<span class="action-space icon"></span>
|
37
|
+
<% end %>
|
38
|
+
|
39
|
+
<% if allowed_to? :destroy, :component, component: component %>
|
40
|
+
<%= icon_link_to "circle-x", url_for(action: :destroy, id: component, controller: "components"), t("actions.destroy", scope: "decidim.admin"), class: "action-icon--remove", method: :delete %>
|
41
|
+
<% else %>
|
42
|
+
<span class="action-space icon"></span>
|
43
|
+
<% end %>
|
@@ -10,48 +10,10 @@
|
|
10
10
|
</td>
|
11
11
|
<%= td_resource_scope_for(component.scope) %>
|
12
12
|
<td class="table-list__actions">
|
13
|
-
<% if component.
|
14
|
-
<%=
|
13
|
+
<% if lookup_context.find_all("decidim/#{component.manifest_name}/admin/component/_actions").any? %>
|
14
|
+
<%= render partial: "decidim/#{component.manifest_name}/admin/component/actions", locals: { component: component } %>
|
15
15
|
<% else %>
|
16
|
-
|
17
|
-
<% end %>
|
18
|
-
|
19
|
-
<% if allowed_to?(:update, :component, component: component) %>
|
20
|
-
<% if component.published? %>
|
21
|
-
<%= icon_link_to "x", url_for(action: :unpublish, id: component, controller: "components"), t("actions.unpublish", scope: "decidim.admin"), class: "action-icon--unpublish", method: :put %>
|
22
|
-
<% else %>
|
23
|
-
<%= icon_link_to "check", url_for(action: :publish, id: component, controller: "components"), t("actions.publish", scope: "decidim.admin"), class: "action-icon--publish", method: :put %>
|
24
|
-
<% end %>
|
25
|
-
<% else %>
|
26
|
-
<span class="action-space icon"></span>
|
27
|
-
<% end %>
|
28
|
-
|
29
|
-
<% if allowed_to? :update, :component, component: component %>
|
30
|
-
<%= icon_link_to "cog", url_for(action: :edit, id: component, controller: "components"), t("actions.configure", scope: "decidim.admin"), class: "action-icon--configure" %>
|
31
|
-
<% else %>
|
32
|
-
<span class="action-space icon"></span>
|
33
|
-
<% end %>
|
34
|
-
|
35
|
-
<% if allowed_to? :update, :component, component: component %>
|
36
|
-
<% if component.manifest.actions.empty? %>
|
37
|
-
<%= icon "key", class: "action-icon action-icon--disabled" %>
|
38
|
-
<% else %>
|
39
|
-
<%= icon_link_to "key", url_for(action: :edit, component_id: component, controller: "component_permissions"), t("actions.permissions", scope: "decidim.admin"), class: "action-icon--permissions" %>
|
40
|
-
<% end %>
|
41
|
-
<% else %>
|
42
|
-
<span class="action-space icon"></span>
|
43
|
-
<% end %>
|
44
|
-
|
45
|
-
<% if allowed_to? :share, :component, component: component %>
|
46
|
-
<%= icon_link_to "share", url_for(action: :share, id: component, controller: "components"), t("actions.share", scope: "decidim.admin"), class: "action-icon--share", target: "_blank" %>
|
47
|
-
<% else %>
|
48
|
-
<span class="action-space icon"></span>
|
49
|
-
<% end %>
|
50
|
-
|
51
|
-
<% if allowed_to? :destroy, :component, component: component %>
|
52
|
-
<%= icon_link_to "circle-x", url_for(action: :destroy, id: component, controller: "components"), t("actions.destroy", scope: "decidim.admin"), class: "action-icon--remove", method: :delete %>
|
53
|
-
<% else %>
|
54
|
-
<span class="action-space icon"></span>
|
16
|
+
<%= render partial: "actions", locals: { component: component } %>
|
55
17
|
<% end %>
|
56
18
|
</td>
|
57
19
|
</tr>
|
@@ -6,9 +6,9 @@
|
|
6
6
|
<% if resource %>
|
7
7
|
-
|
8
8
|
<% if resource.is_a?(Decidim::Resourceable) %>
|
9
|
-
<%= link_to(
|
9
|
+
<%= link_to(decidim_escape_translated(resource.title).html_safe, resource_locator(resource).path) %>
|
10
10
|
<% else %>
|
11
|
-
<%=
|
11
|
+
<%= decidim_escape_translated(resource.title).html_safe %>
|
12
12
|
<% end %>
|
13
13
|
<% end %>
|
14
14
|
</h3>
|
@@ -1,5 +1,8 @@
|
|
1
1
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
2
2
|
<%= csrf_meta_tags %>
|
3
|
+
<%= legacy_favicon %>
|
4
|
+
<%= favicon %>
|
5
|
+
<%= apple_favicon %>
|
3
6
|
<%= stylesheet_pack_tag "decidim_admin", media: "all" %>
|
4
7
|
<%= javascript_pack_tag "decidim_admin", defer: false %>
|
5
8
|
<%= organization_colors %>
|
data/config/locales/ar.yml
CHANGED
@@ -89,7 +89,6 @@ ar:
|
|
89
89
|
success_color: نجاح
|
90
90
|
time_zone: المنطقة الزمنية
|
91
91
|
tos_version: شروط وأحكام الخدمة
|
92
|
-
twitter_handler: مُعرّف حساب تويتر
|
93
92
|
user_groups_enabled: تمكين المجموعات
|
94
93
|
warning_color: تحذير
|
95
94
|
welcome_notification_body: محتوى إشعار الترحيب
|
@@ -320,8 +319,6 @@ ar:
|
|
320
319
|
view_more_logs: عرض المزيد من السجلات
|
321
320
|
welcome: أهلا بك على اللوح الإداري.
|
322
321
|
domain_whitelist:
|
323
|
-
form:
|
324
|
-
domain_too_short: نطاق الدومين قصير جداً
|
325
322
|
update:
|
326
323
|
error: فشل تحديث القائمة النطاقات المسموحة
|
327
324
|
success: تم تحديث النطاقات المسموحة بنجاح
|
@@ -638,9 +635,6 @@ ar:
|
|
638
635
|
none: لا شَيْء
|
639
636
|
scopes_help: إرسال النشرة الإخبارية للمستخدمين الذين لديهم أي من المجالات المحددة تم تفعيله في إعدادات "اهتماماتي" لحسابهم.
|
640
637
|
select_scopes: أختر للمستخدمين الذين فعلوا أي مجال محدد في إعدادات أهتماماتي لحساباتهم.
|
641
|
-
send_to_all_users: إرسال إلى كافة المستخدمين
|
642
|
-
send_to_followers: إرسال إلى المتابِعين
|
643
|
-
send_to_participants: إرسال إلى المشاركين
|
644
638
|
title: حدد المستلمين للإرسال اليهم
|
645
639
|
warning: "<strong>تنبيه:</strong> سيتم إرسال هذه النشرة الإخبارية فقط للمستخدمين الذين فعلوا <em>أريد تلقي النشرات الإخبارية</em> في إعدادات الإشعارات الخاصة بهم."
|
646
640
|
send:
|
@@ -700,7 +694,7 @@ ar:
|
|
700
694
|
github: غِت هَب
|
701
695
|
instagram: إينستاجرام
|
702
696
|
social_handlers: التواصل الاجتماعي
|
703
|
-
twitter:
|
697
|
+
twitter: X
|
704
698
|
url: عنوان الرابط
|
705
699
|
youtube: يوتيوب
|
706
700
|
update:
|
@@ -713,7 +707,6 @@ ar:
|
|
713
707
|
colors:
|
714
708
|
colors_title: ألوان المنظمة
|
715
709
|
header_snippets_help: استخدم هذا الحقل لإضافة أشياء إلى رأس HTML. الاستخدام الأكثر شيوعًا هو دمج خدمات الجهات الخارجية التي تتطلب بعض JavaScript أو CSS إضافية. أيضًا ، يمكنك استخدامه لإضافة علامات وصفية إضافية إلى HTML. لاحظ أنه سيتم عرض هذا فقط في الصفحات العامة ، وليس في قسم المسؤول.
|
716
|
-
cta_button_path_help: 'يمكنك الكتابة فوق المكان الذي يرتبط به زر Call To Action في الصفحة الرئيسية. استخدم المسارات الجزئية ، وليس عناوين URL الكاملة هنا. يقبل الحروف والأرقام والشرطات والمائلة ، ويجب أن يبدأ بحرف. يظهر زر Call To Action في الصفحة الرئيسية بين نص الترحيب والوصف. مثال: %{url}'
|
717
710
|
cta_button_text_help: يمكنك الكتابة فوق نص زر Call To Action في الصفحة الرئيسية لكل لغة متاحة في مؤسستك. إذا لم يتم تعيينها ، سيتم استخدام القيمة الافتراضية. يظهر زر Call To Action في الصفحة الرئيسية بين نص الترحيب والوصف.
|
718
711
|
homepage_appearance_title: تحرير مظهر الصفحة الرئيسية
|
719
712
|
homepage_highlighted_content_banner_title: لافتة المحتوى الراقي
|
@@ -724,14 +717,8 @@ ar:
|
|
724
717
|
organization_external_domain_whitelist:
|
725
718
|
edit:
|
726
719
|
update: تحديث
|
727
|
-
|
728
|
-
|
729
|
-
remove: إزالة
|
730
|
-
up: أعلى
|
731
|
-
organization_homepage:
|
732
|
-
edit:
|
733
|
-
active_content_blocks: كتل المحتوى النشط
|
734
|
-
inactive_content_blocks: كتل المحتوى غير النشطة
|
720
|
+
form:
|
721
|
+
add: إضافة إلى القائمة البيضاء
|
735
722
|
organization_homepage_content_blocks:
|
736
723
|
edit:
|
737
724
|
update: تحديث
|
@@ -757,7 +744,7 @@ ar:
|
|
757
744
|
empty: ليس لديك أي مشاركين خاصين.
|
758
745
|
explanation: لديك %{count} مشاركين خاصين.
|
759
746
|
title: حذف جميع المشاركين الخاصين
|
760
|
-
title:
|
747
|
+
title: قم بتحميل ملف CSV الخاص بك
|
761
748
|
upload: حمّل
|
762
749
|
reminders:
|
763
750
|
new:
|
@@ -860,8 +847,10 @@ ar:
|
|
860
847
|
areas: المناطق
|
861
848
|
authorization_workflows: طرق التحقق
|
862
849
|
dashboard: لوحة القيادة
|
850
|
+
edit_organization_appearance: تعديل مظهر الصفحة الرئيسية
|
863
851
|
impersonatable_users: المشاركون في الإدارة
|
864
852
|
impersonations: إدارة المشاركين
|
853
|
+
pages: الصفحات
|
865
854
|
panel: مدير
|
866
855
|
participants: المشاركين
|
867
856
|
scope_types: أنواع النطاق
|
@@ -965,8 +954,8 @@ ar:
|
|
965
954
|
decidim:
|
966
955
|
admin:
|
967
956
|
newsletters:
|
968
|
-
title:
|
957
|
+
title: الرسائل الإخبارية
|
969
958
|
settings:
|
970
959
|
title: الإعدادات
|
971
960
|
users:
|
972
|
-
title:
|
961
|
+
title: المشاركون
|