adds letter code verification
This commit is contained in:
@@ -1,16 +1,12 @@
|
||||
class Verification::Letter
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_accessor :user, :address
|
||||
attr_accessor :user, :address, :verification_code
|
||||
|
||||
validates :user, presence: true
|
||||
validates :address, presence: true
|
||||
validate :correct_address
|
||||
|
||||
def initialize(attrs={})
|
||||
@user = attrs[:user]
|
||||
end
|
||||
|
||||
def save
|
||||
valid? &&
|
||||
letter_requested! &&
|
||||
@@ -22,7 +18,11 @@ class Verification::Letter
|
||||
end
|
||||
|
||||
def letter_requested!
|
||||
user.update(letter_requested_at: Time.now)
|
||||
user.update(letter_requested_at: Time.now, letter_verification_code: four_digit_code)
|
||||
end
|
||||
|
||||
def verify?
|
||||
user.letter_verification_code == verification_code
|
||||
end
|
||||
|
||||
def update_user_address
|
||||
@@ -50,4 +50,8 @@ class Verification::Letter
|
||||
district: address[:nombre_distrito] }
|
||||
end
|
||||
|
||||
def four_digit_code
|
||||
rand.to_s[2..5]
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user