Class List Method List File List

# Module: Haml::Filters::Javascript

Includes:
  Base
Defined in:
  lib/haml/filters.rb

## Overview

Surrounds the filtered text with `<script>` and CDATA tags. Useful for including inline Javascript.

## Instance Method Summary (collapse)

- - render_with_options(text, options)

### Methods included from Base

#compile, included, #internal_compile, #render

## Instance Method Details

### - render_with_options(text, options)

See Also:

- Base#render_with_options

    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226

    # File 'lib/haml/filters.rb', line 211

    def render_with_options(text, options)
      indent = options[:cdata] ? '    ' : '  ' # 4 or 2 spaces
      if options[:format] == :html5
        type = ''
      else
        type = " type=#{options[:attr_wrapper]}text/javascript#{options[:attr_wrapper]}"
      end

      str = "<script#{type}>\n"
      str << "  //<![CDATA[\n" if options[:cdata]
      str << "#{indent}#{text.rstrip.gsub("\n", "\n#{indent}")}\n"
      str << "  //]]>\n" if options[:cdata]
      str << "</script>"

      str
    end