Class: Decidim::ResourceLocatorPresenter
- Inherits:
-
Object
- Object
- Decidim::ResourceLocatorPresenter
- Defined in:
- app/presenters/decidim/resource_locator_presenter.rb
Overview
A presenter to get the url or path from a resource.
Instance Attribute Summary collapse
-
#resource ⇒ Object
readonly
Returns the value of attribute resource.
Instance Method Summary collapse
-
#admin_index(options = {}) ⇒ Object
Builds the admin index path to the associated collection of resources.
-
#edit(options = {}) ⇒ Object
Builds the admin edit path to the resource.
-
#index(options = {}) ⇒ Object
Builds the index path to the associated collection of resources.
-
#initialize(resource) ⇒ ResourceLocatorPresenter
constructor
A new instance of ResourceLocatorPresenter.
-
#path(options = {}) ⇒ Object
Builds the path to the resource.
-
#show(options = {}) ⇒ Object
Builds the admin show path to the resource.
-
#url(options = {}) ⇒ Object
Builds the url to the resource.
Constructor Details
#initialize(resource) ⇒ ResourceLocatorPresenter
Returns a new instance of ResourceLocatorPresenter.
6 7 8 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 6 def initialize(resource) @resource = resource end |
Instance Attribute Details
#resource ⇒ Object (readonly)
Returns the value of attribute resource.
10 11 12 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 10 def resource @resource end |
Instance Method Details
#admin_index(options = {}) ⇒ Object
Builds the admin index path to the associated collection of resources
options - An optional hash of options to pass to the Rails router
Returns a String.
46 47 48 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 46 def admin_index( = {}) admin_collection_route("path", ) end |
#edit(options = {}) ⇒ Object
Builds the admin edit path to the resource.
options - An optional hash of options to pass to the Rails router
Returns a String.
64 65 66 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 64 def edit( = {}) admin_route_proxy.send("edit_#{member_route_name}_path", resource, ) end |
#index(options = {}) ⇒ Object
Builds the index path to the associated collection of resources.
options - An optional hash of options to pass to the Rails router
Returns a String.
37 38 39 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 37 def index( = {}) collection_route("path", ) end |
#path(options = {}) ⇒ Object
Builds the path to the resource. Useful when linking to a resource from another engine.
options - An optional hash of options to pass to the Rails router
Returns a String.
18 19 20 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 18 def path( = {}) member_route("path", ) end |
#show(options = {}) ⇒ Object
Builds the admin show path to the resource.
options - An optional hash of options to pass to the Rails router
Returns a String.
55 56 57 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 55 def show( = {}) admin_route_proxy.send("#{member_route_name}_path", resource, ) end |
#url(options = {}) ⇒ Object
Builds the url to the resource. Useful when linking to a resource from another engine.
options - An optional hash of options to pass to the Rails router
Returns a String.
28 29 30 |
# File 'app/presenters/decidim/resource_locator_presenter.rb', line 28 def url( = {}) member_route("url", .merge(host: resource.organization.host)) end |