The auto_link function from Rails
This is an extraction of the auto_link method from rails. The auto_link
method was removed from Rails in version Rails 3.1. This gem is meant to
bridge the gap for people migrating.
By default auto_link returns sanitized html_safe strings. This behaviour can
be overridden by setting the :sanitize option to false (thus making it
insecure if you don't have the content under control).
Add this line to your application's Gemfile:
gem 'rails_autolink'And then execute:
$ bundle installrequire 'rails_autolink'
auto_link("Go to http://www.rubyonrails.org and say hello to [email protected]")
# => "Go to http://www.rubyonrails.org and
# say hello to david@loudthinking.com"auto_link("Visit http://www.loudthinking.com/ or e-mail [email protected]", :link => :urls)
# => "Visit http://www.loudthinking.com/
# or e-mail david@loudthinking.com"auto_link("Visit http://www.loudthinking.com/ or e-mail [email protected]", :link => :email_addresses)
# => "Visit http://www.loudthinking.com/ or e-mail david@loudthinking.com"## By default, HTML tags are sanitized to protect from malicious code
auto_link("Go to http://www.rubyonrails.org
")
# => "Go to http://www.rubyonrails.org "
## Use the :sanitize => false option to prevent sanitization
auto_link("Go to http://www.rubyonrails.org
", :sanitize => false)
# => "Go to http://www.rubyonrails.org
"post_body = "Welcome to my new blog at http://www.myblog.com/. Please e-mail me at [email protected]."
auto_link(post_body, :html => { :target => '_blank' }) do |text|
truncate(text, :length => 15)
end
# => "Welcome to my new blog at http://www.m....rails > 3.1No open issues yet, or sync has not completed.