diff options
Diffstat (limited to 'app/helpers/stream_entries_helper.rb')
-rw-r--r-- | app/helpers/stream_entries_helper.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/app/helpers/stream_entries_helper.rb b/app/helpers/stream_entries_helper.rb index c588f5ce7..529ba98da 100644 --- a/app/helpers/stream_entries_helper.rb +++ b/app/helpers/stream_entries_helper.rb @@ -19,4 +19,17 @@ module StreamEntriesHelper def relative_time(date) date < 5.days.ago ? date.strftime("%d.%m.%Y") : "#{time_ago_in_words(date)} ago" end + + def linkify(status) + mention_hash = {} + status.mentions.each { |m| mention_hash[m.acct] = m } + + status.text.gsub(Account::MENTION_RE) do |m| + full_match = Account::MENTION_RE.match(m) + acct = full_match[1] + account = mention_hash[acct] + + "#{m.split('@').first}<a href=\"#{account.url}\" class=\"mention\">@<span>#{acct}</span></a>" + end.html_safe + end end |