Class: Decidim::Components::BaseController
Overview
Controller from which all component engines inherit from. It is in charge of setting the appropriate layout, including necessary helpers, and overall fooling the engine into thinking it is isolated.
Instance Method Summary
collapse
register_permissions
#store_share_token
#check_user_block_status, #check_user_not_blocked
#snippets
#disable_http_caching
#skip_store_location?, #store_current_location
#attachment?, #default_locale?
enhance_controller, extended, included
Instance Method Details
#current_component ⇒ Object
45
46
47
|
# File 'app/controllers/decidim/components/base_controller.rb', line 45
def current_component
request.env["decidim.current_component"]
end
|
#current_manifest ⇒ Object
49
50
51
|
# File 'app/controllers/decidim/components/base_controller.rb', line 49
def current_manifest
@current_manifest ||= current_component.manifest
end
|
#current_participatory_space ⇒ Object
41
42
43
|
# File 'app/controllers/decidim/components/base_controller.rb', line 41
def current_participatory_space
request.env["decidim.current_participatory_space"]
end
|
#permission_class_chain ⇒ Object
57
58
59
60
61
62
63
64
|
# File 'app/controllers/decidim/components/base_controller.rb', line 57
def permission_class_chain
[
current_component.manifest.permissions_class,
current_participatory_space.manifest.permissions_class,
Decidim::Admin::Permissions,
Decidim::Permissions
]
end
|
#permission_scope ⇒ Object
53
54
55
|
# File 'app/controllers/decidim/components/base_controller.rb', line 53
def permission_scope
:public
end
|
#redirect_unless_feature_private ⇒ Object
66
67
68
|
# File 'app/controllers/decidim/components/base_controller.rb', line 66
def redirect_unless_feature_private
raise ActionController::RoutingError, "Not Found" unless current_user_can_visit_space?
end
|
#set_breadcrumb_items ⇒ Object
70
71
72
73
74
|
# File 'app/controllers/decidim/components/base_controller.rb', line 70
def set_breadcrumb_items
context_breadcrumb_items << add_current_component
context_breadcrumb_items << add_parent_breadcrumb_item
context_breadcrumb_items << add_breadcrumb_item
end
|