add phone type placeholder
This commit is contained in:
@@ -2,13 +2,15 @@
|
||||
|
||||
module Submitters
|
||||
module SubmitValues
|
||||
ValidationError = Class.new(StandardError)
|
||||
|
||||
module_function
|
||||
|
||||
def call(submitter, params, request)
|
||||
update_submitter!(submitter, params, request)
|
||||
|
||||
Submissions.update_template_fields!(submitter.submission) if submitter.submission.template_fields.blank?
|
||||
|
||||
update_submitter!(submitter, params, request)
|
||||
|
||||
submitter.submission.save!
|
||||
|
||||
return unless submitter.completed_at?
|
||||
@@ -27,7 +29,11 @@ module Submitters
|
||||
end
|
||||
|
||||
def update_submitter!(submitter, params, request)
|
||||
submitter.values.merge!(normalized_values(params))
|
||||
values = normalized_values(params)
|
||||
|
||||
validate_values!(values, submitter, params)
|
||||
|
||||
submitter.values.merge!(values)
|
||||
submitter.opened_at ||= Time.current
|
||||
|
||||
if params[:completed] == 'true'
|
||||
@@ -45,10 +51,24 @@ module Submitters
|
||||
params.fetch(:values, {}).to_unsafe_h.transform_values do |v|
|
||||
if params[:cast_boolean] == 'true'
|
||||
v == 'true'
|
||||
elsif params[:normalize_phone] == 'true'
|
||||
v.to_s.gsub(/[^0-9+]/, '')
|
||||
else
|
||||
v.is_a?(Array) ? v.compact_blank : v
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def validate_values!(values, submitter, params)
|
||||
values.each do |key, value|
|
||||
field = submitter.submission.template_fields.find { |e| e['uuid'] == key }
|
||||
|
||||
validate_value!(value, field, params)
|
||||
end
|
||||
end
|
||||
|
||||
def validate_value!(_value, _field, _params)
|
||||
true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user