Class: Decidim::Verifications::Sms::MobilePhoneForm
- Inherits:
-
AuthorizationHandler
- Object
- Form
- AuthorizationHandler
- Decidim::Verifications::Sms::MobilePhoneForm
- Defined in:
- app/forms/decidim/verifications/sms/mobile_phone_form.rb
Overview
A form object to be used when public users want to get verified using their phone.
Instance Method Summary collapse
- #handler_name ⇒ Object
-
#mobile_phone_number ⇒ Object
When there is a phone number, sanitize it allowing only numbers and +.
-
#unique_id ⇒ Object
A mobile phone can only be verified once but it should be private.
-
#verification_metadata ⇒ Object
The verification metadata to validate in the next step.
Methods inherited from AuthorizationHandler
#authorization_attributes, #duplicate, #form_attributes, handler_for, handler_name, #metadata, #to_partial_path, #transferrable?, #unique?, #verification_attachment
Instance Method Details
#handler_name ⇒ Object
14 15 16 |
# File 'app/forms/decidim/verifications/sms/mobile_phone_form.rb', line 14 def handler_name "sms" end |
#mobile_phone_number ⇒ Object
When there is a phone number, sanitize it allowing only numbers and +.
26 27 28 29 30 |
# File 'app/forms/decidim/verifications/sms/mobile_phone_form.rb', line 26 def mobile_phone_number return unless super super.gsub(/[^+0-9]/, "") end |
#unique_id ⇒ Object
A mobile phone can only be verified once but it should be private.
19 20 21 22 23 |
# File 'app/forms/decidim/verifications/sms/mobile_phone_form.rb', line 19 def unique_id Digest::MD5.hexdigest( "#{mobile_phone_number}-#{Rails.application.secrets.secret_key_base}" ) end |
#verification_metadata ⇒ Object
The verification metadata to validate in the next step.
33 34 35 36 37 38 |
# File 'app/forms/decidim/verifications/sms/mobile_phone_form.rb', line 33 def { verification_code:, code_sent_at: Time.current } end |