All Downloads are FREE. Search and download functionalities are using the official Maven repository.

haml-3.0.25.lib.haml.helpers.action_view_extensions.rb Maven / Gradle / Ivy

The newest version!
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
      #
      #     
My Div
# # Then, in a stylesheet (shown here as {Sass}), # 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, old = true, @_haml_concat_raw yield ensure @_haml_concat_raw = old end end include ActionViewExtensions end end




© 2015 - 2025 Weber Informatics LLC | Privacy Policy