decidim-admin 0.11.2 → 0.12.0.pre
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/assets/javascripts/decidim/admin/application.js.es6 +5 -1
- data/app/assets/javascripts/decidim/admin/bundle.js +47 -0
- data/app/assets/javascripts/decidim/admin/bundle.js.map +1 -0
- data/app/assets/javascripts/decidim/admin/component_permissions.js.es6 +13 -0
- data/app/assets/javascripts/decidim/admin/managed_users.js.es6 +2 -1
- data/app/assets/javascripts/decidim/admin/subform_toggler.component.js.es6 +14 -7
- data/app/assets/stylesheets/decidim/admin/_decidim.scss +2 -0
- data/app/assets/stylesheets/decidim/admin/bundle.scss +1 -0
- data/app/assets/stylesheets/decidim/admin/components/_autocomplete_select.component.scss +13 -0
- data/app/assets/stylesheets/decidim/admin/modules/_secondary-nav.scss +3 -2
- data/app/assets/stylesheets/decidim/admin/modules/_table-list.scss +7 -0
- data/app/commands/decidim/admin/create_static_page.rb +7 -1
- data/app/commands/decidim/admin/update_component_permissions.rb +9 -3
- data/app/commands/decidim/admin/update_organization_tos_version.rb +47 -0
- data/app/commands/decidim/admin/update_static_page.rb +5 -0
- data/app/constraints/decidim/admin/organization_dashboard_constraint.rb +6 -3
- data/app/controllers/concerns/decidim/admin/participatory_space_admin_context.rb +2 -2
- data/app/controllers/decidim/admin/application_controller.rb +14 -5
- data/app/controllers/decidim/admin/area_types_controller.rb +6 -6
- data/app/controllers/decidim/admin/areas_controller.rb +6 -6
- data/app/controllers/decidim/admin/authorization_workflows_controller.rb +1 -1
- data/app/controllers/decidim/admin/categories_controller.rb +7 -7
- data/app/controllers/decidim/admin/component_permissions_controller.rb +20 -8
- data/app/controllers/decidim/admin/components/base_controller.rb +19 -3
- data/app/controllers/decidim/admin/components_controller.rb +8 -8
- data/app/controllers/decidim/admin/concerns/has_attachment_collections.rb +8 -8
- data/app/controllers/decidim/admin/concerns/has_attachments.rb +11 -9
- data/app/controllers/decidim/admin/concerns/has_private_users.rb +5 -5
- data/app/controllers/decidim/admin/dashboard_controller.rb +4 -2
- data/app/controllers/decidim/admin/exports_controller.rb +1 -1
- data/app/controllers/decidim/admin/impersonatable_users_controller.rb +7 -1
- data/app/controllers/decidim/admin/impersonations_controller.rb +2 -4
- data/app/controllers/decidim/admin/logs_controller.rb +4 -2
- data/app/controllers/decidim/admin/managed_users/impersonation_logs_controller.rb +0 -2
- data/app/controllers/decidim/admin/managed_users/promotions_controller.rb +2 -2
- data/app/controllers/decidim/admin/moderations_controller.rb +4 -4
- data/app/controllers/decidim/admin/newsletters_controller.rb +9 -9
- data/app/controllers/decidim/admin/oauth_applications_controller.rb +7 -7
- data/app/controllers/decidim/admin/officializations_controller.rb +4 -5
- data/app/controllers/decidim/admin/organization_appearance_controller.rb +2 -2
- data/app/controllers/decidim/admin/organization_controller.rb +21 -2
- data/app/controllers/decidim/admin/scope_types_controller.rb +6 -6
- data/app/controllers/decidim/admin/scopes_controller.rb +7 -7
- data/app/controllers/decidim/admin/static_pages_controller.rb +16 -7
- data/app/controllers/decidim/admin/user_groups_controller.rb +3 -3
- data/app/controllers/decidim/admin/users_controller.rb +5 -5
- data/app/forms/decidim/admin/managed_user_promotion_form.rb +1 -1
- data/app/forms/decidim/admin/permission_form.rb +12 -15
- data/app/forms/decidim/admin/static_page_form.rb +1 -0
- data/app/frontend/components/autocomplete.component.test.tsx +19 -0
- data/app/frontend/components/autocomplete.component.tsx +169 -0
- data/app/frontend/entry.ts +17 -0
- data/app/frontend/entry_test.ts +4 -0
- data/app/helpers/decidim/admin/application_helper.rb +0 -4
- data/app/permissions/decidim/admin/permissions.rb +161 -0
- data/app/permissions/decidim/admin/user_manager_permissions.rb +66 -0
- data/app/views/decidim/admin/area_types/index.html.erb +8 -4
- data/app/views/decidim/admin/areas/index.html.erb +6 -3
- data/app/views/decidim/admin/attachment_collections/index.html.erb +3 -3
- data/app/views/decidim/admin/attachment_collections/show.html.erb +2 -2
- data/app/views/decidim/admin/attachments/index.html.erb +3 -3
- data/app/views/decidim/admin/attachments/show.html.erb +2 -2
- data/app/views/decidim/admin/categories/index.html.erb +5 -5
- data/app/views/decidim/admin/categories/show.html.erb +2 -2
- data/app/views/decidim/admin/component_permissions/_options_form.html.erb +14 -0
- data/app/views/decidim/admin/component_permissions/edit.html.erb +37 -16
- data/app/views/decidim/admin/components/_component.html.erb +6 -4
- data/app/views/decidim/admin/components/_form.html.erb +6 -6
- data/app/views/decidim/admin/dashboard/show.html.erb +1 -1
- data/app/views/decidim/admin/impersonatable_users/index.html.erb +5 -3
- data/app/views/decidim/admin/moderations/index.html.erb +2 -2
- data/app/views/decidim/admin/newsletters/index.html.erb +5 -3
- data/app/views/decidim/admin/newsletters/show.html.erb +1 -1
- data/app/views/decidim/admin/oauth_applications/index.html.erb +5 -3
- data/app/views/decidim/admin/participatory_space_private_users/index.html.erb +3 -3
- data/app/views/decidim/admin/scope_types/index.html.erb +5 -3
- data/app/views/decidim/admin/scopes/index.html.erb +4 -4
- data/app/views/decidim/admin/static_pages/_form.html.erb +3 -1
- data/app/views/decidim/admin/static_pages/_form_notable_changes.html.erb +9 -0
- data/app/views/decidim/admin/static_pages/index.html.erb +11 -3
- data/app/views/decidim/admin/static_pages/show.html.erb +2 -2
- data/app/views/decidim/admin/user_groups/index.html.erb +2 -2
- data/app/views/decidim/admin/users/index.html.erb +5 -3
- data/app/views/layouts/decidim/admin/_application.html.erb +0 -1
- data/app/views/layouts/decidim/admin/_template_top.html.erb +1 -0
- data/app/views/layouts/decidim/admin/users.html.erb +4 -4
- data/config/locales/ca.yml +8 -0
- data/config/locales/en.yml +8 -0
- data/config/locales/es.yml +8 -0
- data/config/locales/eu.yml +8 -0
- data/config/locales/fi.yml +8 -0
- data/config/locales/fr.yml +8 -0
- data/config/locales/gl.yml +8 -0
- data/config/locales/it.yml +8 -0
- data/config/locales/nl.yml +8 -0
- data/config/locales/pl.yml +8 -0
- data/config/locales/pt-BR.yml +8 -0
- data/config/locales/pt.yml +8 -0
- data/config/locales/ru.yml +11 -3
- data/config/locales/sv.yml +8 -0
- data/config/locales/uk.yml +8 -0
- data/config/routes.rb +5 -1
- data/lib/decidim/admin.rb +1 -0
- data/lib/decidim/admin/engine.rb +17 -20
- data/lib/decidim/admin/form_builder.rb +64 -0
- data/lib/decidim/admin/test/manage_component_permissions_examples.rb +92 -15
- data/lib/decidim/admin/version.rb +1 -1
- metadata +25 -17
- data/app/models/decidim/admin/abilities/admin_ability.rb +0 -76
- data/app/models/decidim/admin/abilities/base_ability.rb +0 -21
- data/app/models/decidim/admin/abilities/participatory_process_admin_ability.rb +0 -58
- data/app/models/decidim/admin/abilities/participatory_process_collaborator_ability.rb +0 -19
- data/app/models/decidim/admin/abilities/participatory_process_moderator_ability.rb +0 -23
- data/app/models/decidim/admin/abilities/user_manager_ability.rb +0 -34
- data/app/models/decidim/admin/application_record.rb +0 -11
@@ -1,58 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Admin
|
5
|
-
module Abilities
|
6
|
-
# Defines the abilities for a participatory process admin in the admin
|
7
|
-
# section. Intended to be used with `cancancan`. This is not intended to
|
8
|
-
# extend the base `Decidim::Abilities::BaseAbility` class, it should only
|
9
|
-
# be used in the Admin engine.
|
10
|
-
#
|
11
|
-
# This ability will not apply to organization admins.
|
12
|
-
class ParticipatoryProcessAdminAbility < Decidim::Abilities::ParticipatoryProcessAdminAbility
|
13
|
-
def define_abilities
|
14
|
-
super
|
15
|
-
|
16
|
-
can :manage, ParticipatoryProcess do |process|
|
17
|
-
can_manage_process?(process)
|
18
|
-
end
|
19
|
-
|
20
|
-
cannot :create, ParticipatoryProcess
|
21
|
-
cannot :destroy, ParticipatoryProcess
|
22
|
-
end
|
23
|
-
|
24
|
-
def define_participatory_process_abilities
|
25
|
-
super
|
26
|
-
|
27
|
-
can :manage, Component do |component|
|
28
|
-
can_manage_process?(component.participatory_space)
|
29
|
-
end
|
30
|
-
|
31
|
-
can :manage, Category do |category|
|
32
|
-
can_manage_process?(category.participatory_space)
|
33
|
-
end
|
34
|
-
|
35
|
-
can :manage, AttachmentCollection do |attachment_collection|
|
36
|
-
can_manage_process?(attachment_collection.collection_for)
|
37
|
-
end
|
38
|
-
|
39
|
-
can :manage, Attachment do |attachment|
|
40
|
-
attachment.attached_to.is_a?(Decidim::ParticipatoryProcess) && can_manage_process?(attachment.attached_to)
|
41
|
-
end
|
42
|
-
|
43
|
-
can :manage, ParticipatoryProcessUserRole do |role|
|
44
|
-
can_manage_process?(role.participatory_process) && role.user != @user
|
45
|
-
end
|
46
|
-
|
47
|
-
can :manage, Moderation do |moderation|
|
48
|
-
can_manage_process?(moderation.participatory_space)
|
49
|
-
end
|
50
|
-
|
51
|
-
can :manage, ParticipatoryProcessStep do |step|
|
52
|
-
can_manage_process?(step.participatory_process)
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Admin
|
5
|
-
module Abilities
|
6
|
-
# Defines the abilities for a collaborator user in the admin
|
7
|
-
# section. Intended to be used with `cancancan`.
|
8
|
-
class ParticipatoryProcessCollaboratorAbility < Decidim::Abilities::ParticipatoryProcessCollaboratorAbility
|
9
|
-
def define_abilities
|
10
|
-
super
|
11
|
-
|
12
|
-
can [:read, :preview], ParticipatoryProcess do |process|
|
13
|
-
can_manage_process?(process)
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Admin
|
5
|
-
module Abilities
|
6
|
-
# Defines the abilities for a moderator user in the admin
|
7
|
-
# section. Intended to be used with `cancancan`.
|
8
|
-
class ParticipatoryProcessModeratorAbility < Decidim::Abilities::ParticipatoryProcessModeratorAbility
|
9
|
-
def define_abilities
|
10
|
-
super
|
11
|
-
|
12
|
-
can [:read], ParticipatoryProcess do |process|
|
13
|
-
can_manage_process?(process)
|
14
|
-
end
|
15
|
-
|
16
|
-
can :manage, Moderation do |moderation|
|
17
|
-
can_manage_process?(moderation.participatory_space)
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Admin
|
5
|
-
module Abilities
|
6
|
-
# Defines the abilities for a user with role 'user_manager' in the admin section.
|
7
|
-
# Intended to be used with `cancancan`.
|
8
|
-
class UserManagerAbility < Decidim::Abilities::UserManagerAbility
|
9
|
-
def define_abilities
|
10
|
-
super
|
11
|
-
|
12
|
-
can :read, :impersonatable_users
|
13
|
-
|
14
|
-
can :impersonate, Decidim::User do |user_to_impersonate|
|
15
|
-
available_authorization_handlers? &&
|
16
|
-
!user_to_impersonate.admin? &&
|
17
|
-
user_to_impersonate.roles.empty? &&
|
18
|
-
Decidim::ImpersonationLog.active.where(admin: user).empty?
|
19
|
-
end
|
20
|
-
|
21
|
-
can :promote, Decidim::User do |user_to_promote|
|
22
|
-
user_to_promote.managed? && Decidim::ImpersonationLog.active.where(admin: user).empty?
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
private
|
27
|
-
|
28
|
-
def available_authorization_handlers?
|
29
|
-
user.organization.available_authorization_handlers.any?
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|