private Method

TextHelper.auto_link_urls(text, href_options = {}) { |text| ... }

Turns all urls into clickable links. If a block is given, each url is yielded and the result is used as the link text.

Source Code

# File action_view/helpers/text_helper.rb, line 480
def auto_link_urls(text, href_options = {})
  extra_options = tag_options(href_options.stringify_keys) || ""
  text.gsub(AUTO_LINK_RE) do
    all, a, b, c, d = $&, $1, $2, $3, $4
    if a =~ /<a\s/i # don't replace URL's that are already linked
      all
    else
      text = b + c
      text = yield(text) if block_given?
      %(#{a}<a href="#{b=="www."?"http://www.":b}#{c}"#{extra_options}>#{text}</a>#{d})
    end
  end
end
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.