Class: PDFFilter

Inherits:
Object
  • Object
show all
Defined in:
lib/pdffilter.rb

Class Method Summary collapse

Class Method Details

.debug=(b) ⇒ Object



7
8
9
# File 'lib/pdffilter.rb', line 7

def debug=(b)
  @debug = b
end

.debug?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/pdffilter.rb', line 11

def debug?
  @debug
end

.filter(controller) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/pdffilter.rb', line 15

def filter(controller)
  format = controller.request.parameters[:format]
  return unless format && format.to_sym == :pdf

  controller.logger.debug("Rendering XHTML to PDF:\n" + controller.response.body) if debug?

  pdf = FlyingSaucer4R.create_pdf(
    controller.response.body,
    File.join(Rails.public_path, 'placeholder.html'),
    controller.logger)

  controller.response.content_type = 'application/pdf'
  add_ie6_pdf_over_ssl_headers(controller.response.headers)
  controller.response.body = pdf
end