5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# File 'app/services/draft_forge/create_export.rb', line 5
def self.call(content_html: nil, content_json: nil, filename: nil)
unless Export.table_exists?
Rails.logger.error("[DraftForge] Missing `draft_forge_exports` table. Run `rails generate draft_forge:install` and `rails db:migrate`.")
return
end
html = if content_json
EditorJsRenderer.call(content_json)
else
content_html.to_s
end
name = filename.presence || 'document.pdf'
export = Export.create!(status: :queued, requested_filename: name)
ExportPdfJob.perform_later(export.id, html)
export
end
|