1
0
Fork 0
discourse-custom-wizard-unl.../lib/template.rb

42 Zeilen
1,2 KiB
Ruby

class CustomWizard::Template
attr_reader :id,
:name,
:steps,
:background,
:save_submissions,
:multiple_submissions,
:prompt_completion,
:min_trust,
:after_signup,
:after_time,
:after_time_scheduled,
:required,
:theme_id
def initialize(data)
data = data.is_a?(String) ? ::JSON.parse(data) : data
return nil if data.blank?
@id = data['id']
@name = data['name']
@steps = data['steps']
@background = data['background']
@save_submissions = data['save_submissions'] || false
@multiple_submissions = data['multiple_submissions'] || false
@prompt_completion = data['prompt_completion'] || false
@restart_on_revist = data['restart_on_revist'] || false
@min_trust = data['min_trust'] || 0
@after_signup = data['after_signup']
@after_time = data['after_time']
@after_time_scheduled = data['after_time_scheduled']
@required = data['required'] || false
@theme_id = data['theme_id']
if data['theme']
theme = Theme.find_by(name: data['theme'])
@theme_id = theme.id if theme
end
end
end