Skip to content

Commit efe50e2

Browse files
Create and register ephemeral workflow for census (API)
1 parent 005bf38 commit efe50e2

5 files changed

Lines changed: 55 additions & 3 deletions

File tree

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# frozen_string_literal: true
2+
3+
# An AuthorizationHandler that uses the DibaCensusApiService to create ephemeral authorizations
4+
class EphemeralDibaCensusApiAuthorizationHandler < DibaCensusApiAuthorizationHandler
5+
def to_partial_path
6+
"diba_census_api_authorization/form"
7+
end
8+
end

decidim-diba_census_api/config/locales/ca.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,18 @@ ca:
2525
dni: 'DNI'
2626
nie: 'NIE'
2727
passport: 'Passaport'
28+
ephemeral_diba_census_api_authorization_handler:
29+
explanation: Autoritza la teva sessió contra el Padró Municipal
30+
document_types:
31+
dni: DNI
32+
nie: NIE
33+
passport: Passaport
34+
fields:
35+
age: Edat mínima
36+
birthdate: Data de naixement
37+
max_age: Edat màxima
38+
name: Padró municipal per a accés temporal
39+
type: API
2840
diba_census_api:
2941
admin:
3042
menu: 'Cens via API'

decidim-diba_census_api/config/locales/en.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,18 @@ en:
2525
dni: DNI
2626
nie: NIE
2727
passport: Passport
28+
ephemeral_diba_census_api_authorization_handler:
29+
explanation: Authorize your session against the Municipality Census
30+
document_types:
31+
dni: DNI
32+
nie: NIE
33+
passport: Passport
34+
fields:
35+
age: Minimum age
36+
birthdate: Birth date
37+
max_age: Maximum age
38+
name: Municipality Census for temporary access
39+
type: API
2840
diba_census_api:
2941
admin:
3042
menu: Census API config

decidim-diba_census_api/config/locales/es.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,18 @@ es:
2525
dni: DNI
2626
nie: NIE
2727
passport: Pasaporte
28+
ephemeral_diba_census_api_authorization_handler:
29+
explanation: Autoriza tu sesión contra el Padrón Municipal
30+
document_types:
31+
dni: DNI
32+
nie: NIE
33+
passport: Pasaporte
34+
fields:
35+
age: Edad mínima
36+
birthdate: Fecha de nacimiento
37+
max_age: Edad máxima
38+
name: Padrón Municipal para acceso temporal
39+
type: API
2840
diba_census_api:
2941
admin:
3042
menu: Configurar API censo

decidim-diba_census_api/lib/decidim/diba_census_api/engine.rb

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,24 @@ class Engine < ::Rails::Engine
1111
isolate_namespace Decidim::DibaCensusApi
1212

1313
initializer "decidim_diba_census_api.add_authorization_handlers" do |_app|
14-
Decidim::Verifications.register_workflow(
15-
:diba_census_api_authorization_handler
16-
) do |auth|
14+
Decidim::Verifications.register_workflow(:diba_census_api_authorization_handler) do |auth|
1715
auth.form = "DibaCensusApiAuthorizationHandler"
1816
auth.action_authorizer = "Decidim::AgeActionAuthorization::Authorizer"
1917
auth.options do |options|
2018
options.attribute :age, type: :string, required: false
2119
options.attribute :max_age, type: :string, required: false
2220
end
2321
end
22+
23+
Decidim::Verifications.register_workflow(:ephemeral_diba_census_api_authorization_handler) do |auth|
24+
auth.ephemeral = true
25+
auth.form = "EphemeralDibaCensusApiAuthorizationHandler"
26+
auth.action_authorizer = "Decidim::AgeActionAuthorization::Authorizer"
27+
auth.options do |options|
28+
options.attribute :age, type: :string, required: false
29+
options.attribute :max_age, type: :string, required: false
30+
end
31+
end
2432
end
2533
end
2634
end

0 commit comments

Comments
 (0)