31 Zeilen
862 B
Ruby
31 Zeilen
862 B
Ruby
# frozen_string_literal: true
|
|
class CustomWizard::AdminController < ::Admin::AdminController
|
|
before_action :ensure_admin
|
|
|
|
def index
|
|
render_json_dump(
|
|
#TODO replace with appropriate static?
|
|
api_section: ["advanced"].include?(CustomWizard::Subscription.type),
|
|
notices: ActiveModel::ArraySerializer.new(
|
|
CustomWizard::Notice.list,
|
|
each_serializer: CustomWizard::NoticeSerializer
|
|
)
|
|
)
|
|
end
|
|
|
|
private
|
|
|
|
def find_wizard
|
|
params.require(:wizard_id)
|
|
@wizard = CustomWizard::Wizard.create(params[:wizard_id].underscore)
|
|
raise Discourse::InvalidParameters.new(:wizard_id) unless @wizard
|
|
end
|
|
|
|
def custom_field_list
|
|
serialize_data(CustomWizard::CustomField.full_list, CustomWizard::CustomFieldSerializer)
|
|
end
|
|
|
|
def render_error(message)
|
|
render json: failed_json.merge(error: message)
|
|
end
|
|
end
|