Module: CssHttpRequestExt

Defined in:
lib/css_http_request_ext.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(klass) ⇒ Object



2
3
4
# File 'lib/css_http_request_ext.rb', line 2

def self.included(klass)
  klass.prepend_before_filter :adjust_format_for_css_http_request
end

Instance Method Details

#adjust_format_for_css_http_requestObject



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

def adjust_format_for_css_http_request    
  request.format = :chr if css_http_request?
  request.format = :jsonc if json_css_http_request?
end

#css_http_request?Boolean

Returns:

  • (Boolean)


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

def css_http_request?
  return params[:format] == "chr"
end

#json_css_http_request?Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/css_http_request_ext.rb', line 15

def json_css_http_request?
  return params[:format] == "jsonc"
end

#render_with_chr(options = nil, extra_options = {}, &block) ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/css_http_request_ext.rb', line 19

def render_with_chr(options = nil, extra_options = {}, &block)
  if options.is_a?(Hash) && options.has_key?(:chr)
    output = render_to_string(options.merge!(options.delete(:chr)), &block)
    render :text => output, :mime_type => Mime::Type.lookup_by_extension(params[:format])
  else
    render_without_chr(options, extra_options, &block)
  end
end