status.mentions.each { |m| mention_hash[m.acct] = m }
coder = HTMLEntities.new
- auto_link(coder.encode(status.text), link: :urls, html: { target: '_blank', rel: 'nofollow' }).gsub(Account::MENTION_RE) do |m|
+ auto_link(coder.encode(status.text), link: :urls, html: { rel: 'nofollow noopener' }).gsub(Account::MENTION_RE) do |m|
account = mention_hash[Account::MENTION_RE.match(m)[1]]
"#{m.split('@').first}<a href=\"#{url_for_target(account)}\" class=\"mention\">@<span>#{account.acct}</span></a>"
end.html_safe
has_attached_file :header, styles: { medium: '700x335#' }
validates_attachment_content_type :header, content_type: /\Aimage\/.*\Z/
+ # Local user profile validations
+ validates :display_name, length: { maximum: 30 }, if: 'local?'
+ validates :note, length: { maximum: 124 }, if: 'local?'
+
# Timelines
has_many :stream_entries, inverse_of: :account
has_many :statuses, inverse_of: :account