Make linkify preserve HTML safety

This commit is contained in:
Tom Hughes 2011-11-15 09:46:33 +00:00
parent 36a3dfe7cd
commit 1d6051d08b
2 changed files with 15 additions and 3 deletions

View file

@ -6,11 +6,23 @@ module ApplicationHelper
end
def htmlize(text)
return linkify(sanitize(simple_format(text)))
logger.info "text safety is #{text.html_safe?}"
r = simple_format(text)
logger.info "formatted text safety is #{r.html_safe?}"
r = sanitize(r)
logger.info "sanitised text safety is #{r.html_safe?}"
r = linkify(r)
logger.info "linkified text safety is #{r.html_safe?}"
return r
# return linkify(sanitize(simple_format(text)))
end
def linkify(text)
return Rinku.auto_link(text, :urls, tag_options(:rel => "nofollow"))
if text.html_safe?
Rinku.auto_link(text, :urls, tag_options(:rel => "nofollow")).html_safe
else
Rinku.auto_link(text, :urls, tag_options(:rel => "nofollow"))
end
end
def html_escape_unicode(text)

View file

@ -1,7 +1,7 @@
<b><%= link_to h(diary_entry.title), :action => 'view', :display_name => diary_entry.user.display_name, :id => diary_entry.id %></b><br />
<div xml:lang="<%= diary_entry.language_code %>" lang="<%= diary_entry.language_code %>">
<%= raw(htmlize(diary_entry.body)) %>
<%= htmlize(diary_entry.body) %>
</div>
<% if diary_entry.latitude and diary_entry.longitude %>