Sanitize.fragment(html, config)
end
+ def format_spoiler(status)
+ html = encode(status.spoiler_text)
+ html = encode_custom_emojis(html, status.emojis)
+ html.html_safe # rubocop:disable Rails/OutputSafety
+ end
+
private
def encode(html)
end
def emojis
- CustomEmoji.from_text(text, account.domain)
+ CustomEmoji.from_text([spoiler_text, text].join(' '), account.domain)
end
after_create :store_uri, if: :local?
.status__content.p-name.emojify<
- if status.spoiler_text?
%p{ style: 'margin-bottom: 0' }<
- %span.p-summary> #{status.spoiler_text}
+ %span.p-summary> #{Formatter.instance.format_spoiler(status)}
%a.status__content__spoiler-link{ href: '#' }= t('statuses.show_more')
.e-content{ lang: status.language, style: "display: #{status.spoiler_text? ? 'none' : 'block'}; direction: #{rtl_status?(status) ? 'rtl' : 'ltr'}" }= Formatter.instance.format(status, custom_emojify: true)
.status__content.p-name.emojify<
- if status.spoiler_text?
%p{ style: 'margin-bottom: 0' }<
- %span.p-summary> #{status.spoiler_text}
+ %span.p-summary> #{Formatter.instance.format_spoiler(status)}
%a.status__content__spoiler-link{ href: '#' }= t('statuses.show_more')
.e-content{ lang: status.language, style: "display: #{status.spoiler_text? ? 'none' : 'block'}; direction: #{rtl_status?(status) ? 'rtl' : 'ltr'}" }= Formatter.instance.format(status, custom_emojify: true)