Module: Refinery::Helpers::HtmlTruncationHelper

Defined in:
lib/refinery/helpers/html_truncation_helper.rb

Instance Method Summary collapse

Instance Method Details

#truncate(text, options = {}) ⇒ Object

Like the Rails truncate helper but doesn’t break HTML tags, entities, and words. <script> tags pass through and are not counted in the total. the omission specified does count toward the total length count. use :link => link_to(‘more’, post_path), or something to that effect



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/refinery/helpers/html_truncation_helper.rb', line 11

def truncate(text, options = {})
  return unless text.present?
  return super unless options.delete(:preserve_html_tags) == true # ensure preserve_html_tags doesn't pass through

  max_length = options[:length] || 30
  omission = options[:omission] || "..."

  return truncate_html(text,
                       :length => max_length,
                       :word_boundary => true,
                       :omission => omission)
end