From 999cde94a6a2d67cf36160365378951d3b55b868 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 25 Jan 2017 00:49:08 +0100 Subject: Instead of using spoiler boolean and spoiler_text, simply check for non-blank spoiler_text Federate spoiler_text using warning attribute on instead of a Clean up schema file from accidental development migrations --- app/helpers/atom_builder_helper.rb | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'app/helpers/atom_builder_helper.rb') diff --git a/app/helpers/atom_builder_helper.rb b/app/helpers/atom_builder_helper.rb index 7547e77e4..f17b4cc72 100644 --- a/app/helpers/atom_builder_helper.rb +++ b/app/helpers/atom_builder_helper.rb @@ -41,8 +41,10 @@ module AtomBuilderHelper xml['activity'].send('verb', TagManager::VERBS[verb]) end - def content(xml, content) - xml.content({ type: 'html' }, content) unless content.blank? + def content(xml, content, warning = nil) + extra = { type: 'html' } + extra[:warning] = warning unless warning.blank? + xml.content(extra, content) unless content.blank? end def title(xml, title) @@ -153,12 +155,20 @@ module AtomBuilderHelper portable_contact xml, account end + def rich_content(xml, activity) + if activity.is_a?(Status) + content xml, conditionally_formatted(activity), activity.spoiler_text + else + content xml, conditionally_formatted(activity) + end + end + def include_entry(xml, stream_entry) unique_id xml, stream_entry.created_at, stream_entry.activity_id, stream_entry.activity_type published_at xml, stream_entry.created_at updated_at xml, stream_entry.updated_at title xml, stream_entry.title - content xml, conditionally_formatted(stream_entry.activity) + rich_content xml, stream_entry.activity verb xml, stream_entry.verb link_self xml, account_stream_entry_url(stream_entry.account, stream_entry, format: 'atom') link_alternate xml, account_stream_entry_url(stream_entry.account, stream_entry) @@ -207,7 +217,6 @@ module AtomBuilderHelper end category(xml, 'nsfw') if stream_entry.target.sensitive? - category(xml, 'spoiler') if stream_entry.target.spoiler? end end end @@ -229,7 +238,6 @@ module AtomBuilderHelper end category(xml, 'nsfw') if stream_entry.activity.sensitive? - category(xml, 'spoiler') if stream_entry.activity.spoiler? end private -- cgit