diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2016-03-19 00:16:04 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2016-03-19 00:16:04 +0100 |
commit | 071f64d317408b556c4f85e2f2abd80fe815de8b (patch) | |
tree | 7cf5fe781a674c637c0a999b37551b27613aebdb /app/helpers/atom_builder_helper.rb | |
parent | 580b91c38740620488816755a5ccb2ec16ff8b1c (diff) |
Fix #13, Atom feeds now contain formatted post content
Diffstat (limited to 'app/helpers/atom_builder_helper.rb')
-rw-r--r-- | app/helpers/atom_builder_helper.rb | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/app/helpers/atom_builder_helper.rb b/app/helpers/atom_builder_helper.rb index 95d7c96ec..0cfc438ac 100644 --- a/app/helpers/atom_builder_helper.rb +++ b/app/helpers/atom_builder_helper.rb @@ -135,6 +135,22 @@ module AtomBuilderHelper xml.logo url end + def conditionally_formatted(activity) + if activity.is_a?(Status) + if activity.reblog? && activity.reblog.local? + linkify(activity.reblog) + elsif activity.local? + linkify(activity) + else + activity.content + end + elsif activity.nil? + '' + else + activity.content + end + end + def include_author(xml, account) object_type xml, :person uri xml, url_for_target(account) @@ -150,7 +166,7 @@ module AtomBuilderHelper published_at xml, stream_entry.created_at updated_at xml, stream_entry.updated_at title xml, stream_entry.title - content xml, stream_entry.content + content xml, conditionally_formatted(stream_entry.activity) verb xml, stream_entry.verb link_self xml, account_stream_entry_url(stream_entry.account, stream_entry, format: 'atom') object_type xml, stream_entry.object_type @@ -176,7 +192,7 @@ module AtomBuilderHelper # Statuses have content if [:note, :comment].include? stream_entry.target.object_type - content xml, stream_entry.target.content + content xml, conditionally_formatted(stream_entry.target) end end end |