Module: RussianInvoices::HelperMethods

Extended by:
ActiveSupport::Concern
Included in:
ApplicationController
Defined in:
app/controllers/concerns/russian_invoices/helper_methods.rb

Instance Method Summary collapse

Instance Method Details

#download_pdf_document(doc) ⇒ Object



33
34
35
# File 'app/controllers/concerns/russian_invoices/helper_methods.rb', line 33

def download_pdf_document(doc)
  render_pdf_document(doc, true)
end

#generate_document(doc, save_to_file = true) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
# File 'app/controllers/concerns/russian_invoices/helper_methods.rb', line 9

def generate_document(doc, save_to_file=true)
  @doc = doc
  pdf = get_pdf(obj_type(doc), doc.landscape?)
  if save_to_file
    tmp_file = Tempfile.new(pdf[:document_type])
    tmp_file << pdf[:body]
    tmp_file.close
    tmp_file
  else
    pdf[:body]
  end
end

#generate_document_str(doc) ⇒ Object



22
23
24
# File 'app/controllers/concerns/russian_invoices/helper_methods.rb', line 22

def generate_document_str(doc)
  generate_document(doc, false)
end

#render_pdf_document(doc, download = false) ⇒ Object



26
27
28
29
30
31
# File 'app/controllers/concerns/russian_invoices/helper_methods.rb', line 26

def render_pdf_document(doc, download=false)
  pdf_str = generate_document(doc, false)
  filename = obj_type(doc) + '.pdf'
  disposition = download ? 'attachment' : 'inline'
  send_data(pdf_str, filename: filename, disposition: disposition, type: 'application/pdf')
end