Class: Decidim::Verifications::IdDocuments::AuthorizationsController
Overview
Handles verification by identity document upload
Instance Method Summary
collapse
#renew
register_permissions
#store_share_token
#check_user_block_status, #check_user_not_blocked
#snippets
#disable_http_caching
#skip_store_location?, #store_current_location
#default_locale?
enhance_controller, extended, included
Instance Method Details
#choose ⇒ Object
16
17
18
19
20
21
22
|
# File 'decidim-verifications/app/controllers/decidim/verifications/id_documents/authorizations_controller.rb', line 16
def choose
url_params = { redirect_url: }.compact
return redirect_to(action: :new, **url_params.merge(using: verification_type)) if available_methods.count == 1
render :choose
end
|
#create ⇒ Object
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
# File 'decidim-verifications/app/controllers/decidim/verifications/id_documents/authorizations_controller.rb', line 32
def create
enforce_permission_to :create, :authorization, authorization: @authorization
@form = UploadForm.from_params(params.merge(user: current_user)).with_context(current_organization:)
PerformAuthorizationStep.call(@authorization, @form) do
on(:ok) do
flash[:notice] = t("authorizations.create.success", scope: "decidim.verifications.id_documents")
redirect_to decidim_verifications.authorizations_path
end
on(:invalid) do
flash.now[:alert] = t("authorizations.create.error", scope: "decidim.verifications.id_documents")
render action: :new
end
end
end
|
#edit ⇒ Object
50
51
52
53
54
|
# File 'decidim-verifications/app/controllers/decidim/verifications/id_documents/authorizations_controller.rb', line 50
def edit
enforce_permission_to :update, :authorization, authorization: @authorization
@form = UploadForm.from_model(@authorization)
end
|
#new ⇒ Object
24
25
26
27
28
29
30
|
# File 'decidim-verifications/app/controllers/decidim/verifications/id_documents/authorizations_controller.rb', line 24
def new
raise ActionController::RoutingError, "Method not available" unless available_methods.include?(verification_type)
enforce_permission_to :create, :authorization, authorization: @authorization
@form = UploadForm.from_params(id_document_upload: { verification_type: })
end
|
#update ⇒ Object
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
# File 'decidim-verifications/app/controllers/decidim/verifications/id_documents/authorizations_controller.rb', line 56
def update
enforce_permission_to :update, :authorization, authorization: @authorization
@form = UploadForm.from_params(
params.merge(
user: current_user,
verification_type:,
verification_attachment: params[:id_document_upload][:verification_attachment] || @authorization.verification_attachment.blob
)
).with_context(current_organization:)
PerformAuthorizationStep.call(@authorization, @form) do
on(:ok) do
flash[:notice] = t("authorizations.update.success", scope: "decidim.verifications.id_documents")
redirect_to decidim_verifications.authorizations_path
end
on(:invalid) do
flash.now[:alert] = t("authorizations.update.error", scope: "decidim.verifications.id_documents")
render action: :edit
end
end
end
|