4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# File 'app/forms/tramway/event/participant_extended_form_creator.rb', line 4
def self.create_form_class(uuid, event, **simple_properties)
class_name = "ParticipantExtendedForm#{uuid.gsub('-', '')}"
properties = event.participant_form_fields.inputs_list.reduce({}) do |hash, field|
hash.merge! field.title.to_sym => {
object: field,
validates: (field.options == '' ? {} : field.options)&.dig('validations')
}
end
if simple_properties.keys.any?
::Tramway::Core::ExtendableForm.new(class_name, simple_properties: simple_properties, **properties)
else
::Tramway::Core::ExtendableForm.new(class_name, **properties)
end
end
|