Class: RFPDF::TemplateHandler::CompileSupport
- Inherits:
-
Object
- Object
- RFPDF::TemplateHandler::CompileSupport
- Defined in:
- lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb
Instance Attribute Summary (collapse)
-
- (Object) options
readonly
extend ActiveSupport::Memoizable.
Instance Method Summary (collapse)
-
- (Boolean) ie_request?
TODO: kept around from railspdf– maybe not needed anymore? should check.
-
- (CompileSupport) initialize(controller)
constructor
A new instance of CompileSupport.
- - (Object) pull_options
-
- (Object) set_cache_control
TODO: kept around from railspdf– maybe not needed anymore? should check.
- - (Object) set_content_type
- - (Object) set_disposition
- - (Object) set_headers
-
- (Object) set_pragma
TODO: kept around from railspdf– maybe not needed anymore? should check.
-
- (Boolean) ssl_request?
added to make ie happy with ssl pdf's (per naisayer).
Constructor Details
- (CompileSupport) initialize(controller)
Returns a new instance of CompileSupport
9 10 11 12 13 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 9 def initialize(controller) @controller = controller @options = set_headers end |
Instance Attribute Details
- (Object) options (readonly)
extend ActiveSupport::Memoizable
7 8 9 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 7 def @options end |
Instance Method Details
- (Boolean) ie_request?
TODO: kept around from railspdf– maybe not needed anymore? should check.
27 28 29 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 27 def ie_request? @controller.request.env['HTTP_USER_AGENT'] =~ /msie/i end |
- (Object) pull_options
15 16 17 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 15 def @controller.send :compute_rfpdf_options || {} end |
- (Object) set_cache_control
TODO: kept around from railspdf– maybe not needed anymore? should check.
49 50 51 52 53 54 55 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 49 def set_cache_control if ssl_request? && ie_request? @controller.headers['Cache-Control'] = 'maxage=1' # added to make ie ssl pdfs work (per naisayer) else @controller.headers['Cache-Control'] ||= ie_request? ? 'no-cache, must-revalidate' : '' end end |
- (Object) set_content_type
57 58 59 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 57 def set_content_type @controller.response.content_type ||= Mime::PDF end |
- (Object) set_disposition
61 62 63 64 65 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 61 def set_disposition inline = [:inline] ? 'inline' : 'attachment' filename = [:filename] ? "filename=#{[:filename]}" : nil @controller.headers["Content-Disposition"] = [inline,filename].compact.join(';') end |
- (Object) set_headers
19 20 21 22 23 24 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 19 def set_headers set_pragma set_cache_control set_content_type set_disposition end |
- (Object) set_pragma
TODO: kept around from railspdf– maybe not needed anymore? should check.
40 41 42 43 44 45 46 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 40 def set_pragma if ssl_request? && ie_request? @controller.headers['Pragma'] = 'public' # added to make ie ssl pdfs work (per naisayer) else @controller.headers['Pragma'] ||= ie_request? ? 'no-cache' : '' end end |
- (Boolean) ssl_request?
added to make ie happy with ssl pdf's (per naisayer)
33 34 35 36 |
# File 'lib/plugins/rfpdf/lib/rfpdf/template_handler/compile_support.rb', line 33 def ssl_request? # @controller.request.env['SERVER_PROTOCOL'].downcase == "https" @controller.request.ssl? end |