Sha256: bee53a817c7c77ff548ec1bcb3194a26c8c5df60f28cb45e1e74fad555ee2622

Contents?: true

Size: 1.88 KB

Versions: 19

Compression:

Stored size: 1.88 KB

Contents

module Haml
  module Helpers
    @@action_view_defined = true

    # This module contains various useful helper methods
    # that either tie into ActionView or the rest of the ActionPack stack,
    # or are only useful in that context.
    # Thus, the methods defined here are only available
    # if ActionView is installed.
    module ActionViewExtensions
      # Returns a value for the "class" attribute
      # unique to this controller/action pair.
      # This can be used to target styles specifically at this action or controller.
      # For example, if the current action were `EntryController#show`,
      #
      #     %div{:class => page_class} My Div
      #
      # would become
      #
      #     <div class="entry show">My Div</div>
      #
      # Then, in a stylesheet (shown here as [Sass](http://sass-lang.com)),
      # you could refer to this specific action:
      #
      #     .entry.show
      #       font-weight: bold
      #
      # or to all actions in the entry controller:
      #
      #     .entry
      #       color: #00f
      #
      # @return [String] The class name for the current page
      def page_class
        controller.controller_name + " " + controller.action_name
      end
      alias_method :generate_content_class_names, :page_class

      # Treats all input to \{Haml::Helpers#haml\_concat} within the block
      # as being HTML safe for Rails' XSS protection.
      # This is useful for wrapping blocks of code that concatenate HTML en masse.
      #
      # This has no effect if Rails' XSS protection isn't enabled.
      #
      # @yield A block in which all input to `#haml_concat` is treated as raw.
      # @see Haml::Util#rails_xss_safe?
      def with_raw_haml_concat
        @_haml_concat_raw = true
        old = @_haml_concat_raw
        yield
      ensure
        @_haml_concat_raw = old
      end
    end

    include ActionViewExtensions
  end
end

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
mango-0.8.0 vendor/bundler/ruby/2.1.0/gems/haml-4.0.4/lib/haml/helpers/action_view_extensions.rb
mango-0.7.1 vendor/bundler/ruby/2.0.0/gems/haml-4.0.4/lib/haml/helpers/action_view_extensions.rb
mango-0.7.0 vendor/bundler/ruby/2.0.0/gems/haml-4.0.4/lib/haml/helpers/action_view_extensions.rb
haml-4.0.4 lib/haml/helpers/action_view_extensions.rb
haml-4.0.3 lib/haml/helpers/action_view_extensions.rb
haml-4.0.2 lib/haml/helpers/action_view_extensions.rb
haml-4.0.1 lib/haml/helpers/action_view_extensions.rb
haml-4.0.1.rc.1 lib/haml/helpers/action_view_extensions.rb
haml-4.0.0 lib/haml/helpers/action_view_extensions.rb
haml-4.0.0.rc.1 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.rc.4 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.rc.3 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.rc.2 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.rc.1 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.beta.3 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.beta.2 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.beta.1 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.alpha.14 lib/haml/helpers/action_view_extensions.rb
haml-3.2.0.alpha.13 lib/haml/helpers/action_view_extensions.rb