class DummyAuthorizationHandler
An example authorization handler used so that users can be verified against third party systems.
You should probably rename this class and file to match your needs.
If you need a custom form to be rendered, you can create a file matching the class name named “_form”.
Example:
A handler named Decidim::CensusHandler would look for its partial in: decidim/census/form
When testing your authorization handler, add this line to be sure it has a valid public api:
it_behaves_like "an authorization handler"
See Decidim::AuthorizationHandler for more documentation.
Public Instance Methods
metadata()
click to toggle source
If you need to store any of the defined attributes in the authorization you can do it here.
You must return a Hash that will be serialized to the authorization when it's created, and available though authorization.metadata
Calls superclass method
# File lib/decidim/generators/app_templates/dummy_authorization_handler.rb, line 71 def metadata super.merge(document_number: document_number, postal_code: postal_code, scope_id: scope_id) end
scope()
click to toggle source
The user scope
# File lib/decidim/generators/app_templates/dummy_authorization_handler.rb, line 61 def scope user.organization.scopes.find_by(id: scope_id) if scope_id end
unique_id()
click to toggle source
If set, enforces the handler to validate the uniqueness of the field
# File lib/decidim/generators/app_templates/dummy_authorization_handler.rb, line 55 def unique_id document_number end
Private Instance Methods
valid_document_number()
click to toggle source
# File lib/decidim/generators/app_templates/dummy_authorization_handler.rb, line 77 def valid_document_number errors.add(:document_number, :invalid) unless document_number.to_s.end_with?("X") end
valid_scope_id()
click to toggle source
# File lib/decidim/generators/app_templates/dummy_authorization_handler.rb, line 81 def valid_scope_id errors.add(:scope_id, :invalid) if scope_id && !scope end