mirror of
https://github.com/internetee/registry.git
synced 2025-08-05 17:28:18 +02:00
Refactor invoice PDF generation, download and delivery
- Remove `Que::Mailer` (#895) - Extract controllers - Extract translations - Convert HAML to ERB - Add mailer preview - Improve UI - Remove unused routes - Add tests
This commit is contained in:
parent
7e0fd30125
commit
27ea790b28
30 changed files with 288 additions and 138 deletions
22
app/models/invoice/pdf_generator.rb
Normal file
22
app/models/invoice/pdf_generator.rb
Normal file
|
@ -0,0 +1,22 @@
|
|||
class Invoice
|
||||
class PdfGenerator
|
||||
attr_reader :invoice
|
||||
|
||||
def initialize(invoice)
|
||||
@invoice = invoice
|
||||
end
|
||||
|
||||
def as_pdf
|
||||
generator = PDFKit.new(invoice_html)
|
||||
generator.to_pdf
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def invoice_html
|
||||
view = ActionView::Base.new(ActionController::Base.view_paths, invoice: invoice)
|
||||
view.class_eval { include ApplicationHelper }
|
||||
view.render(file: 'invoice/pdf', layout: false)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue