0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-14 22:02:53 +01:00
discourse-custom-wizard/app/serializers/custom_wizard/submission_serializer.rb
2024-10-16 13:52:03 +02:00

29 Zeilen
675 B
Ruby

# frozen_string_literal: true
class CustomWizard::SubmissionSerializer < ApplicationSerializer
attributes :id, :fields, :submitted_at, :user
def include_user?
object.wizard.user.present?
end
def user
::BasicUserSerializer.new(object.wizard.user, root: false).as_json
end
def fields
@fields ||=
begin
result = {}
object.wizard.template["steps"].each do |step|
step["fields"].each do |field|
if value = object.fields[field["id"]]
result[field["id"]] = { value: value, type: field["type"], label: field["label"] }
end
end
end
result
end
end
end