decidim-admin 0.26.2 → 0.27.0.rc2
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/cells/decidim/admin/attachments_privacy_warning/show.erb +3 -0
- data/app/cells/decidim/admin/attachments_privacy_warning_cell.rb +19 -0
- data/app/commands/decidim/admin/block_user.rb +1 -1
- data/app/commands/decidim/admin/close_session_managed_user.rb +1 -1
- data/app/commands/decidim/admin/create_area.rb +1 -1
- data/app/commands/decidim/admin/create_area_type.rb +6 -3
- data/app/commands/decidim/admin/create_attachment.rb +14 -6
- data/app/commands/decidim/admin/create_attachment_collection.rb +13 -4
- data/app/commands/decidim/admin/create_category.rb +6 -4
- data/app/commands/decidim/admin/create_component.rb +1 -1
- data/app/commands/decidim/admin/create_import.rb +4 -5
- data/app/commands/decidim/admin/create_import_example.rb +1 -1
- data/app/commands/decidim/admin/create_newsletter.rb +1 -1
- data/app/commands/decidim/admin/create_participatory_space_private_user.rb +1 -1
- data/app/commands/decidim/admin/create_scope.rb +1 -1
- data/app/commands/decidim/admin/create_scope_type.rb +6 -3
- data/app/commands/decidim/admin/create_static_page.rb +1 -1
- data/app/commands/decidim/admin/create_static_page_topic.rb +1 -1
- data/app/commands/decidim/admin/deliver_newsletter.rb +6 -6
- data/app/commands/decidim/admin/destroy_area.rb +1 -1
- data/app/commands/decidim/admin/destroy_category.rb +6 -3
- data/app/commands/decidim/admin/destroy_component.rb +1 -1
- data/app/commands/decidim/admin/destroy_newsletter.rb +1 -1
- data/app/commands/decidim/admin/destroy_participatory_space_private_user.rb +1 -1
- data/app/commands/decidim/admin/destroy_scope.rb +1 -1
- data/app/commands/decidim/admin/destroy_share_token.rb +1 -1
- data/app/commands/decidim/admin/destroy_static_page.rb +1 -1
- data/app/commands/decidim/admin/destroy_static_page_topic.rb +1 -1
- data/app/commands/decidim/admin/hide_resource.rb +2 -2
- data/app/commands/decidim/admin/impersonate_user.rb +1 -1
- data/app/commands/decidim/admin/invite_admin.rb +1 -1
- data/app/commands/decidim/admin/officialize_user.rb +1 -1
- data/app/commands/decidim/admin/process_participatory_space_private_user_import_csv.rb +7 -3
- data/app/commands/decidim/admin/process_user_group_verification_csv.rb +8 -4
- data/app/commands/decidim/admin/promote_managed_user.rb +1 -1
- data/app/commands/decidim/admin/publish_component.rb +1 -1
- data/app/commands/decidim/admin/reject_user_group.rb +1 -1
- data/app/commands/decidim/admin/remove_admin.rb +1 -1
- data/app/commands/decidim/admin/reorder_content_blocks.rb +1 -1
- data/app/commands/decidim/admin/transfer_user.rb +1 -1
- data/app/commands/decidim/admin/unblock_user.rb +1 -1
- data/app/commands/decidim/admin/unhide_resource.rb +1 -1
- data/app/commands/decidim/admin/unofficialize_user.rb +1 -1
- data/app/commands/decidim/admin/unpublish_component.rb +1 -1
- data/app/commands/decidim/admin/unreport_resource.rb +1 -1
- data/app/commands/decidim/admin/unreport_user.rb +1 -1
- data/app/commands/decidim/admin/update_area.rb +1 -1
- data/app/commands/decidim/admin/update_area_type.rb +8 -3
- data/app/commands/decidim/admin/update_attachment.rb +4 -3
- data/app/commands/decidim/admin/update_attachment_collection.rb +8 -3
- data/app/commands/decidim/admin/update_category.rb +9 -5
- data/app/commands/decidim/admin/update_component.rb +8 -5
- data/app/commands/decidim/admin/update_component_permissions.rb +9 -6
- data/app/commands/decidim/admin/update_content_block.rb +1 -1
- data/app/commands/decidim/admin/update_external_domain_whitelist.rb +6 -3
- data/app/commands/decidim/admin/update_help_sections.rb +17 -3
- data/app/commands/decidim/admin/update_newsletter.rb +1 -1
- data/app/commands/decidim/admin/update_organization.rb +1 -1
- data/app/commands/decidim/admin/update_organization_appearance.rb +1 -1
- data/app/commands/decidim/admin/update_organization_tos_version.rb +1 -1
- data/app/commands/decidim/admin/update_resource_permissions.rb +2 -2
- data/app/commands/decidim/admin/update_scope.rb +1 -1
- data/app/commands/decidim/admin/update_scope_type.rb +8 -3
- data/app/commands/decidim/admin/update_static_page.rb +1 -1
- data/app/commands/decidim/admin/update_static_page_topic.rb +1 -1
- data/app/commands/decidim/admin/update_user_groups.rb +1 -1
- data/app/commands/decidim/admin/verify_user_group.rb +1 -1
- data/app/controllers/concerns/decidim/admin/filterable.rb +1 -1
- data/app/controllers/concerns/decidim/admin/participatory_space_export.rb +3 -1
- data/app/controllers/decidim/admin/application_controller.rb +1 -0
- data/app/controllers/decidim/admin/area_types_controller.rb +6 -3
- data/app/controllers/decidim/admin/categories_controller.rb +3 -3
- data/app/controllers/decidim/admin/component_permissions_controller.rb +1 -1
- data/app/controllers/decidim/admin/components/base_controller.rb +1 -0
- data/app/controllers/decidim/admin/components_controller.rb +1 -1
- data/app/controllers/decidim/admin/concerns/has_attachment_collections.rb +6 -3
- data/app/controllers/decidim/admin/concerns/has_attachments.rb +6 -3
- data/app/controllers/decidim/admin/concerns/has_private_users_csv_import.rb +7 -0
- data/app/controllers/decidim/admin/dashboard_controller.rb +4 -3
- data/app/controllers/decidim/admin/exports_controller.rb +4 -1
- data/app/controllers/decidim/admin/help_sections_controller.rb +1 -1
- data/app/controllers/decidim/admin/metrics_controller.rb +2 -1
- data/app/controllers/decidim/admin/moderations_controller.rb +9 -7
- data/app/controllers/decidim/admin/organization_controller.rb +3 -3
- data/app/controllers/decidim/admin/organization_external_domain_whitelist_controller.rb +1 -1
- data/app/controllers/decidim/admin/reminders_controller.rb +61 -0
- data/app/controllers/decidim/admin/resource_permissions_controller.rb +3 -3
- data/app/controllers/decidim/admin/scope_types_controller.rb +6 -3
- data/app/controllers/decidim/admin/static_pages_controller.rb +1 -7
- data/app/forms/decidim/admin/category_form.rb +1 -2
- data/app/forms/decidim/admin/component_form.rb +16 -7
- data/app/forms/decidim/admin/import_example_form.rb +1 -5
- data/app/forms/decidim/admin/import_form.rb +7 -10
- data/app/forms/decidim/admin/managed_user_promotion_form.rb +1 -1
- data/app/forms/decidim/admin/participatory_space_private_user_csv_import_form.rb +7 -4
- data/app/forms/decidim/admin/permission_form.rb +9 -8
- data/app/forms/decidim/admin/permissions_form.rb +1 -10
- data/app/forms/decidim/admin/user_group_csv_verification_form.rb +2 -2
- data/app/helpers/decidim/admin/bulk_actions_helper.rb +0 -4
- data/app/helpers/decidim/admin/moderations/reports_helper.rb +11 -2
- data/app/helpers/decidim/admin/reminders_helper.rb +12 -0
- data/app/helpers/decidim/admin/settings_helper.rb +57 -11
- data/app/packs/entrypoints/decidim_admin.js +7 -2
- data/app/packs/src/decidim/admin/admin_autocomplete.js +86 -0
- data/app/packs/src/decidim/admin/application.js +0 -16
- data/app/packs/src/decidim/admin/choose_language.js +11 -9
- data/app/packs/src/decidim/admin/dynamic_fields.component.js +1 -0
- data/app/packs/stylesheets/decidim/admin/_decidim.scss +0 -1
- data/app/packs/stylesheets/decidim/admin/modules/_autocomplete.scss +5 -0
- data/app/packs/stylesheets/decidim/admin/modules/_forms.scss +6 -0
- data/app/packs/stylesheets/decidim/admin/modules/_modules.scss +2 -0
- data/app/packs/stylesheets/decidim/admin/modules/_upload_modal.scss +42 -0
- data/app/permissions/decidim/admin/permissions.rb +1 -0
- data/app/presenters/decidim/admin/dashboard_metric_charts_presenter.rb +3 -1
- data/app/queries/decidim/admin/active_users_counter.rb +1 -1
- data/app/queries/decidim/admin/newsletter_recipients.rb +2 -2
- data/app/queries/decidim/admin/user_filter.rb +1 -1
- data/app/queries/decidim/admin/user_groups_evaluation.rb +1 -1
- data/app/views/decidim/admin/attachments/index.html.erb +1 -0
- data/app/views/decidim/admin/categories/_form.html.erb +0 -4
- data/app/views/decidim/admin/categories/show.html.erb +1 -2
- data/app/views/decidim/admin/organization_appearance/form/_images.html.erb +5 -4
- data/app/views/decidim/admin/participatory_space_private_users/index.html.erb +1 -1
- data/app/views/decidim/admin/participatory_space_private_users_csv_imports/new.html.erb +20 -1
- data/app/views/decidim/admin/reminders/new.html.erb +21 -0
- data/app/views/decidim/admin/resource_permissions/edit.html.erb +1 -1
- data/app/views/decidim/admin/shared/_gallery.html.erb +6 -1
- data/app/views/decidim/admin/shared/_js-callout.html.erb +6 -0
- data/app/views/decidim/admin/users_statistics/_users_count.html.erb +2 -2
- data/app/views/layouts/decidim/admin/_application.html.erb +2 -0
- data/config/locales/ar.yml +15 -4
- data/config/locales/bg.yml +1 -0
- data/config/locales/ca.yml +22 -4
- data/config/locales/cs.yml +24 -4
- data/config/locales/de.yml +22 -4
- data/config/locales/el.yml +1 -5
- data/config/locales/en.yml +21 -4
- data/config/locales/eo.yml +1 -0
- data/config/locales/es-MX.yml +22 -4
- data/config/locales/es-PY.yml +22 -4
- data/config/locales/es.yml +22 -4
- data/config/locales/eu.yml +1 -5
- data/config/locales/fi-plain.yml +22 -4
- data/config/locales/fi.yml +22 -4
- data/config/locales/fr-CA.yml +22 -4
- data/config/locales/fr.yml +36 -18
- data/config/locales/ga-IE.yml +1 -0
- data/config/locales/gl.yml +16 -4
- data/config/locales/hu.yml +196 -3
- data/config/locales/id-ID.yml +1 -3
- data/config/locales/is-IS.yml +2 -4
- data/config/locales/it.yml +6 -5
- data/config/locales/ja.yml +21 -4
- data/config/locales/lb.yml +1 -5
- data/config/locales/lt.yml +994 -0
- data/config/locales/lv.yml +1 -3
- data/config/locales/nl.yml +83 -5
- data/config/locales/no.yml +27 -4
- data/config/locales/pl.yml +77 -5
- data/config/locales/pt-BR.yml +1 -5
- data/config/locales/pt.yml +1 -5
- data/config/locales/ro-RO.yml +7 -5
- data/config/locales/ru.yml +1 -3
- data/config/locales/sk.yml +1 -3
- data/config/locales/sl.yml +1 -0
- data/config/locales/sr-CS.yml +1 -2
- data/config/locales/sv.yml +22 -3
- data/config/locales/tr-TR.yml +1 -3
- data/config/locales/uk.yml +1 -2
- data/config/locales/val-ES.yml +1 -0
- data/config/locales/zh-CN.yml +1 -3
- data/lib/decidim/admin/engine.rb +0 -1
- data/lib/decidim/admin/import/importer.rb +9 -7
- data/lib/decidim/admin/import/readers/json.rb +1 -1
- data/lib/decidim/admin/test/commands/create_attachment_collection_examples.rb +15 -2
- data/lib/decidim/admin/test/commands/create_category_examples.rb +16 -6
- data/lib/decidim/admin/test/commands/destroy_category_examples.rb +29 -1
- data/lib/decidim/admin/test/commands/update_attachment_collection_examples.rb +15 -2
- data/lib/decidim/admin/test/commands/update_category_examples.rb +16 -6
- data/lib/decidim/admin/test/filters_participatory_space_user_roles_examples.rb +4 -4
- data/lib/decidim/admin/test/filters_participatory_space_users_examples.rb +4 -4
- data/lib/decidim/admin/test/forms/category_form_examples.rb +1 -21
- data/lib/decidim/admin/test/manage_attachments_examples.rb +9 -2
- data/lib/decidim/admin/test/manage_categories_examples.rb +0 -10
- data/lib/decidim/admin/test/manage_component_permissions_examples.rb +0 -2
- data/lib/decidim/admin/test/manage_moderations_examples.rb +26 -0
- data/lib/decidim/admin/version.rb +1 -1
- metadata +21 -15
- data/app/packs/src/decidim/admin/autocomplete.component.js +0 -146
- data/app/packs/src/decidim/admin/autocomplete.component.test.js +0 -19
- data/app/packs/stylesheets/decidim/admin/components/_autocomplete_select.component.scss +0 -19
@@ -3,7 +3,7 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when unofficializing a user.
|
6
|
-
class UnofficializeUser <
|
6
|
+
class UnofficializeUser < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# user - The user to be unofficialized.
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# This command gets called when a component is unpublished from the admin panel.
|
6
|
-
class UnpublishComponent <
|
6
|
+
class UnpublishComponent < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# component - The component to unpublish.
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when a user unreports a resource.
|
6
|
-
class UnreportResource <
|
6
|
+
class UnreportResource < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# reportable - A Decidim::Reportable
|
@@ -3,14 +3,15 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when updating an area type.
|
6
|
-
class UpdateAreaType <
|
6
|
+
class UpdateAreaType < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# area_type - The AreaType to update
|
10
10
|
# form - A form object with the params.
|
11
|
-
def initialize(area_type, form)
|
11
|
+
def initialize(area_type, form, user)
|
12
12
|
@area_type = area_type
|
13
13
|
@form = form
|
14
|
+
@user = user
|
14
15
|
end
|
15
16
|
|
16
17
|
# Executes the command. Broadcasts these events:
|
@@ -31,7 +32,11 @@ module Decidim
|
|
31
32
|
attr_reader :form
|
32
33
|
|
33
34
|
def update_area_type
|
34
|
-
|
35
|
+
Decidim.traceability.update!(
|
36
|
+
@area_type,
|
37
|
+
@user,
|
38
|
+
attributes
|
39
|
+
)
|
35
40
|
end
|
36
41
|
|
37
42
|
def attributes
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic to update an attachment from a
|
6
6
|
# participatory process.
|
7
|
-
class UpdateAttachment <
|
7
|
+
class UpdateAttachment < Decidim::Command
|
8
8
|
include ::Decidim::AttachmentAttributesMethods
|
9
9
|
|
10
10
|
attr_reader :attachment
|
@@ -13,9 +13,10 @@ module Decidim
|
|
13
13
|
#
|
14
14
|
# attachment - the Attachment to update
|
15
15
|
# form - A form object with the params.
|
16
|
-
def initialize(attachment, form)
|
16
|
+
def initialize(attachment, form, user)
|
17
17
|
@attachment = attachment
|
18
18
|
@form = form
|
19
|
+
@user = user
|
19
20
|
end
|
20
21
|
|
21
22
|
# Executes the command. Broadcasts these events:
|
@@ -36,7 +37,7 @@ module Decidim
|
|
36
37
|
attr_reader :form
|
37
38
|
|
38
39
|
def update_attachment
|
39
|
-
|
40
|
+
Decidim.traceability.update!(@attachment, @user, attributes)
|
40
41
|
end
|
41
42
|
|
42
43
|
def attributes
|
@@ -3,14 +3,15 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when updating an attachment collection.
|
6
|
-
class UpdateAttachmentCollection <
|
6
|
+
class UpdateAttachmentCollection < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# attachment_collection - The AttachmentCollection to update
|
10
10
|
# form - A form object with the params.
|
11
|
-
def initialize(attachment_collection, form)
|
11
|
+
def initialize(attachment_collection, form, user)
|
12
12
|
@attachment_collection = attachment_collection
|
13
13
|
@form = form
|
14
|
+
@user = user
|
14
15
|
end
|
15
16
|
|
16
17
|
# Executes the command. Broadcasts these events:
|
@@ -31,7 +32,11 @@ module Decidim
|
|
31
32
|
attr_reader :form
|
32
33
|
|
33
34
|
def update_attachment_collection
|
34
|
-
|
35
|
+
Decidim.traceability.update!(
|
36
|
+
@attachment_collection,
|
37
|
+
@user,
|
38
|
+
attributes
|
39
|
+
)
|
35
40
|
end
|
36
41
|
|
37
42
|
def attributes
|
@@ -4,16 +4,17 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when updating a category in the
|
6
6
|
# system.
|
7
|
-
class UpdateCategory <
|
7
|
+
class UpdateCategory < Decidim::Command
|
8
8
|
attr_reader :category
|
9
9
|
|
10
10
|
# Public: Initializes the command.
|
11
11
|
#
|
12
12
|
# category - the Category to update
|
13
13
|
# form - A form object with the params.
|
14
|
-
def initialize(category, form)
|
14
|
+
def initialize(category, form, user)
|
15
15
|
@category = category
|
16
16
|
@form = form
|
17
|
+
@user = user
|
17
18
|
end
|
18
19
|
|
19
20
|
# Executes the command. Broadcasts these events:
|
@@ -34,15 +35,18 @@ module Decidim
|
|
34
35
|
attr_reader :form
|
35
36
|
|
36
37
|
def update_category
|
37
|
-
|
38
|
+
Decidim.traceability.update!(
|
39
|
+
category,
|
40
|
+
@user,
|
41
|
+
attributes
|
42
|
+
)
|
38
43
|
end
|
39
44
|
|
40
45
|
def attributes
|
41
46
|
{
|
42
47
|
name: form.name,
|
43
48
|
weight: form.weight,
|
44
|
-
parent_id: form.parent_id
|
45
|
-
description: form.description
|
49
|
+
parent_id: form.parent_id
|
46
50
|
}
|
47
51
|
end
|
48
52
|
end
|
@@ -3,17 +3,18 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# This command gets called when a component is created from the admin panel.
|
6
|
-
class UpdateComponent <
|
6
|
+
class UpdateComponent < Decidim::Command
|
7
7
|
attr_reader :form, :component, :previous_settings
|
8
8
|
|
9
9
|
# Public: Initializes the command.
|
10
10
|
#
|
11
11
|
# form - The form from which the data in this component comes from.
|
12
12
|
# component - The component to update.
|
13
|
-
def initialize(form, component)
|
13
|
+
def initialize(form, component, user)
|
14
14
|
@manifest = component.manifest
|
15
15
|
@form = form
|
16
16
|
@component = component
|
17
|
+
@user = user
|
17
18
|
end
|
18
19
|
|
19
20
|
# Public: Creates the Component.
|
@@ -22,9 +23,11 @@ module Decidim
|
|
22
23
|
def call
|
23
24
|
return broadcast(:invalid) if form.invalid?
|
24
25
|
|
25
|
-
|
26
|
-
|
27
|
-
|
26
|
+
Decidim.traceability.perform_action!("update", @component, @user) do
|
27
|
+
transaction do
|
28
|
+
update_component
|
29
|
+
run_hooks
|
30
|
+
end
|
28
31
|
end
|
29
32
|
|
30
33
|
broadcast(:ok, settings_changed?, previous_settings, current_settings)
|
@@ -4,16 +4,17 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# This command gets called when permissions for a component are updated
|
6
6
|
# in the admin panel.
|
7
|
-
class UpdateComponentPermissions <
|
7
|
+
class UpdateComponentPermissions < Decidim::Command
|
8
8
|
# Public: Initializes the command.
|
9
9
|
#
|
10
10
|
# form - The form from which the data in this component comes from.
|
11
11
|
# component - The component to update.
|
12
12
|
# resource - The resource to update.
|
13
|
-
def initialize(form, component, resource)
|
13
|
+
def initialize(form, component, resource, user)
|
14
14
|
@form = form
|
15
15
|
@component = component
|
16
16
|
@resource = resource
|
17
|
+
@user = user
|
17
18
|
end
|
18
19
|
|
19
20
|
# Public: Sets the permissions for a component.
|
@@ -22,9 +23,11 @@ module Decidim
|
|
22
23
|
def call
|
23
24
|
return broadcast(:invalid) unless form.valid?
|
24
25
|
|
25
|
-
|
26
|
-
|
27
|
-
|
26
|
+
Decidim.traceability.perform_action!("update_permissions", @component, @user) do
|
27
|
+
transaction do
|
28
|
+
update_permissions
|
29
|
+
run_hooks
|
30
|
+
end
|
28
31
|
end
|
29
32
|
|
30
33
|
broadcast(:ok)
|
@@ -45,7 +48,7 @@ module Decidim
|
|
45
48
|
handlers_content = {}
|
46
49
|
|
47
50
|
selected_handlers(value).each do |handler_key|
|
48
|
-
opts = value.authorization_handlers_options[handler_key.
|
51
|
+
opts = value.authorization_handlers_options[handler_key.to_s]
|
49
52
|
handlers_content[handler_key] = opts ? { options: opts } : {}
|
50
53
|
end
|
51
54
|
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# This command gets called when a content block is updated from the admin
|
6
6
|
# panel.
|
7
|
-
class UpdateContentBlock <
|
7
|
+
class UpdateContentBlock < Decidim::Command
|
8
8
|
attr_reader :form, :content_block, :scope
|
9
9
|
|
10
10
|
# Public: Initializes the command.
|
@@ -2,18 +2,21 @@
|
|
2
2
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
|
-
class UpdateExternalDomainWhitelist <
|
5
|
+
class UpdateExternalDomainWhitelist < Decidim::Command
|
6
6
|
attr_reader :form, :organization
|
7
7
|
|
8
|
-
def initialize(form, organization)
|
8
|
+
def initialize(form, organization, user)
|
9
9
|
@form = form
|
10
10
|
@organization = organization
|
11
|
+
@user = user
|
11
12
|
end
|
12
13
|
|
13
14
|
def call
|
14
15
|
return broadcast(:invalid) if form.invalid?
|
15
16
|
|
16
|
-
|
17
|
+
Decidim.traceability.perform_action!("update_external_domain", @organization, @user) do
|
18
|
+
save_domains!
|
19
|
+
end
|
17
20
|
|
18
21
|
broadcast(:ok)
|
19
22
|
end
|
@@ -4,10 +4,11 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# This command gets called when a content block is updated from the admin
|
6
6
|
# panel.
|
7
|
-
class UpdateHelpSections <
|
8
|
-
def initialize(form, organization)
|
7
|
+
class UpdateHelpSections < Decidim::Command
|
8
|
+
def initialize(form, organization, user)
|
9
9
|
@form = form
|
10
10
|
@organization = organization
|
11
|
+
@user = user
|
11
12
|
end
|
12
13
|
|
13
14
|
def call
|
@@ -15,12 +16,25 @@ module Decidim
|
|
15
16
|
|
16
17
|
ActiveRecord::Base.transaction do
|
17
18
|
@form.sections.each do |section|
|
18
|
-
|
19
|
+
next unless content_has_changed?(section)
|
20
|
+
|
21
|
+
Decidim.traceability.perform_action!("update", ContextualHelpSection, @user, { "resource" => { "title" => section.id.humanize } }) do
|
22
|
+
ContextualHelpSection.set_content(@organization, section.id, section.content)
|
23
|
+
ContextualHelpSection.find_by(organization: @organization, section_id: section.id)
|
24
|
+
end
|
19
25
|
end
|
20
26
|
end
|
21
27
|
|
22
28
|
broadcast(:ok)
|
23
29
|
end
|
30
|
+
|
31
|
+
private
|
32
|
+
|
33
|
+
def content_has_changed?(section)
|
34
|
+
return if ContextualHelpSection.find_by(organization: @organization, section_id: section.id).nil? && section.content.compact_blank.blank?
|
35
|
+
|
36
|
+
section.content != ContextualHelpSection.find_content(@organization, section.id).except("machine_translations")
|
37
|
+
end
|
24
38
|
end
|
25
39
|
end
|
26
40
|
end
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic for updating the current
|
6
6
|
# organization.
|
7
|
-
class UpdateOrganization <
|
7
|
+
class UpdateOrganization < Decidim::Command
|
8
8
|
# Public: Initializes the command.
|
9
9
|
#
|
10
10
|
# organization - The Organization that will be updated.
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic for updating the current
|
6
6
|
# organization appearance.
|
7
|
-
class UpdateOrganizationAppearance <
|
7
|
+
class UpdateOrganizationAppearance < Decidim::Command
|
8
8
|
include ::Decidim::AttachmentAttributesMethods
|
9
9
|
|
10
10
|
# Public: Initializes the command.
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# A command with the business logic for updating the current
|
6
6
|
# organization tos_version attribute.
|
7
|
-
class UpdateOrganizationTosVersion <
|
7
|
+
class UpdateOrganizationTosVersion < Decidim::Command
|
8
8
|
# Public: Initializes the command.
|
9
9
|
#
|
10
10
|
# organization - The Organization that will be updated.
|
@@ -4,7 +4,7 @@ module Decidim
|
|
4
4
|
module Admin
|
5
5
|
# This command gets called when permissions for a resource not related with
|
6
6
|
# a component are updated in the admin panel.
|
7
|
-
class UpdateResourcePermissions <
|
7
|
+
class UpdateResourcePermissions < Decidim::Command
|
8
8
|
# Public: Initializes the command.
|
9
9
|
#
|
10
10
|
# form - The form from which the data in this resource comes from.
|
@@ -40,7 +40,7 @@ module Decidim
|
|
40
40
|
def update_permissions
|
41
41
|
permissions = configured_permissions.inject({}) do |result, (key, value)|
|
42
42
|
handlers_content = selected_handlers(value).inject({}) do |handlers_content_result, handler_key|
|
43
|
-
opts = value.authorization_handlers_options[handler_key.
|
43
|
+
opts = value.authorization_handlers_options[handler_key.to_s]
|
44
44
|
|
45
45
|
handlers_content_result.update(handler_key => opts ? { options: opts } : {})
|
46
46
|
end
|
@@ -3,14 +3,15 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when updating a scope type.
|
6
|
-
class UpdateScopeType <
|
6
|
+
class UpdateScopeType < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# scope_type - The ScopeType to update
|
10
10
|
# form - A form object with the params.
|
11
|
-
def initialize(scope_type, form)
|
11
|
+
def initialize(scope_type, form, user)
|
12
12
|
@scope_type = scope_type
|
13
13
|
@form = form
|
14
|
+
@user = user
|
14
15
|
end
|
15
16
|
|
16
17
|
# Executes the command. Broadcasts these events:
|
@@ -31,7 +32,11 @@ module Decidim
|
|
31
32
|
attr_reader :form
|
32
33
|
|
33
34
|
def update_scope_type
|
34
|
-
|
35
|
+
Decidim.traceability.update!(
|
36
|
+
@scope_type,
|
37
|
+
@user,
|
38
|
+
attributes
|
39
|
+
)
|
35
40
|
end
|
36
41
|
|
37
42
|
def attributes
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when updating a static page topic.
|
6
|
-
class UpdateStaticPageTopic <
|
6
|
+
class UpdateStaticPageTopic < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# page - The StaticPageTopic to update
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Admin
|
5
5
|
# A command with all the business logic when verifying a user_group.
|
6
|
-
class VerifyUserGroup <
|
6
|
+
class VerifyUserGroup < Decidim::Command
|
7
7
|
# Public: Initializes the command.
|
8
8
|
#
|
9
9
|
# user_group - The user_group to verify
|
@@ -11,7 +11,9 @@ module Decidim
|
|
11
11
|
def create
|
12
12
|
enforce_permission_to :create, :export_space, participatory_space: exportable_space
|
13
13
|
|
14
|
-
|
14
|
+
Decidim.traceability.perform_action!("export", exportable_space, current_user) do
|
15
|
+
ExportParticipatorySpaceJob.perform_later(current_user, exportable_space, manifest_name, default_format)
|
16
|
+
end
|
15
17
|
|
16
18
|
flash[:notice] = t("decidim.admin.exports.notice")
|
17
19
|
|
@@ -21,7 +21,7 @@ module Decidim
|
|
21
21
|
enforce_permission_to :create, :area_type
|
22
22
|
@form = form(AreaTypeForm).from_params(params)
|
23
23
|
|
24
|
-
CreateAreaType.call(@form) do
|
24
|
+
CreateAreaType.call(@form, current_user) do
|
25
25
|
on(:ok) do
|
26
26
|
flash[:notice] = I18n.t("area_types.create.success", scope: "decidim.admin")
|
27
27
|
redirect_to area_types_path
|
@@ -43,7 +43,7 @@ module Decidim
|
|
43
43
|
enforce_permission_to :update, :area_type, area_type: area_type
|
44
44
|
@form = form(AreaTypeForm).from_params(params)
|
45
45
|
|
46
|
-
UpdateAreaType.call(area_type, @form) do
|
46
|
+
UpdateAreaType.call(area_type, @form, current_user) do
|
47
47
|
on(:ok) do
|
48
48
|
flash[:notice] = I18n.t("area_types.update.success", scope: "decidim.admin")
|
49
49
|
redirect_to area_types_path
|
@@ -58,7 +58,10 @@ module Decidim
|
|
58
58
|
|
59
59
|
def destroy
|
60
60
|
enforce_permission_to :destroy, :area_type, area_type: area_type
|
61
|
-
|
61
|
+
|
62
|
+
Decidim.traceability.perform_action!("delete", area_type, current_user) do
|
63
|
+
area_type.destroy!
|
64
|
+
end
|
62
65
|
|
63
66
|
flash[:notice] = I18n.t("area_types.destroy.success", scope: "decidim.admin")
|
64
67
|
|
@@ -21,7 +21,7 @@ module Decidim
|
|
21
21
|
enforce_permission_to :create, :category
|
22
22
|
@form = form(CategoryForm).from_params(params, current_participatory_space: current_participatory_space)
|
23
23
|
|
24
|
-
CreateCategory.call(@form, current_participatory_space) do
|
24
|
+
CreateCategory.call(@form, current_participatory_space, current_user) do
|
25
25
|
on(:ok) do
|
26
26
|
flash[:notice] = I18n.t("categories.create.success", scope: "decidim.admin")
|
27
27
|
redirect_to categories_path(current_participatory_space)
|
@@ -45,7 +45,7 @@ module Decidim
|
|
45
45
|
enforce_permission_to :update, :category, category: @category
|
46
46
|
@form = form(CategoryForm).from_params(params, current_participatory_space: current_participatory_space)
|
47
47
|
|
48
|
-
UpdateCategory.call(@category, @form) do
|
48
|
+
UpdateCategory.call(@category, @form, current_user) do
|
49
49
|
on(:ok) do
|
50
50
|
flash[:notice] = I18n.t("categories.update.success", scope: "decidim.admin")
|
51
51
|
redirect_to categories_path(current_participatory_space)
|
@@ -67,7 +67,7 @@ module Decidim
|
|
67
67
|
@category = collection.find(params[:id])
|
68
68
|
enforce_permission_to :destroy, :category, category: @category
|
69
69
|
|
70
|
-
DestroyCategory.call(@category) do
|
70
|
+
DestroyCategory.call(@category, current_user) do
|
71
71
|
on(:ok) do
|
72
72
|
flash[:notice] = I18n.t("categories.destroy.success", scope: "decidim.admin")
|
73
73
|
end
|
@@ -20,7 +20,7 @@ module Decidim
|
|
20
20
|
enforce_permission_to :update, :component, component: component
|
21
21
|
@permissions_form = PermissionsForm.from_params(params)
|
22
22
|
|
23
|
-
UpdateComponentPermissions.call(@permissions_form, component, resource) do
|
23
|
+
UpdateComponentPermissions.call(@permissions_form, component, resource, current_user) do
|
24
24
|
on(:ok) do
|
25
25
|
flash[:notice] = t("component_permissions.update.success", scope: "decidim.admin")
|
26
26
|
redirect_to return_path
|
@@ -15,6 +15,7 @@ module Decidim
|
|
15
15
|
helper Decidim::ResourceHelper
|
16
16
|
helper Decidim::Admin::ExportsHelper
|
17
17
|
helper Decidim::Admin::ImportsHelper
|
18
|
+
helper Decidim::Admin::RemindersHelper
|
18
19
|
helper Decidim::Admin::BulkActionsHelper
|
19
20
|
helper Decidim::Admin::ResourcePermissionsHelper
|
20
21
|
|
@@ -58,7 +58,7 @@ module Decidim
|
|
58
58
|
@form = form(@component.form_class).from_params(component_params)
|
59
59
|
enforce_permission_to :update, :component, component: @component
|
60
60
|
|
61
|
-
UpdateComponent.call(@form, @component) do
|
61
|
+
UpdateComponent.call(@form, @component, current_user) do
|
62
62
|
on(:ok) do |settings_changed, previous_settings, current_settings|
|
63
63
|
handle_component_settings_change(previous_settings, current_settings) if settings_changed
|
64
64
|
|
@@ -31,7 +31,7 @@ module Decidim
|
|
31
31
|
enforce_permission_to :create, :attachment_collection
|
32
32
|
@form = form(AttachmentCollectionForm).from_params(params, collection_for: collection_for)
|
33
33
|
|
34
|
-
CreateAttachmentCollection.call(@form, collection_for) do
|
34
|
+
CreateAttachmentCollection.call(@form, collection_for, current_user) do
|
35
35
|
on(:ok) do
|
36
36
|
flash[:notice] = I18n.t("attachment_collections.create.success", scope: "decidim.admin")
|
37
37
|
redirect_to action: :index
|
@@ -56,7 +56,7 @@ module Decidim
|
|
56
56
|
enforce_permission_to :update, :attachment_collection, attachment_collection: @attachment_collection
|
57
57
|
@form = form(AttachmentCollectionForm).from_params(params, collection_for: collection_for)
|
58
58
|
|
59
|
-
UpdateAttachmentCollection.call(@attachment_collection, @form) do
|
59
|
+
UpdateAttachmentCollection.call(@attachment_collection, @form, current_user) do
|
60
60
|
on(:ok) do
|
61
61
|
flash[:notice] = I18n.t("attachment_collections.update.success", scope: "decidim.admin")
|
62
62
|
redirect_to action: :index
|
@@ -78,7 +78,10 @@ module Decidim
|
|
78
78
|
def destroy
|
79
79
|
@attachment_collection = collection.find(params[:id])
|
80
80
|
enforce_permission_to :destroy, :attachment_collection, attachment_collection: @attachment_collection
|
81
|
-
|
81
|
+
|
82
|
+
Decidim.traceability.perform_action!("delete", @attachment_collection, current_user) do
|
83
|
+
@attachment_collection.destroy!
|
84
|
+
end
|
82
85
|
|
83
86
|
flash[:notice] = I18n.t("attachment_collections.destroy.success", scope: "decidim.admin")
|
84
87
|
|