add creator and categories to RSS feed, format pubData correctly

This commit is contained in:
Joerg Reichert 2016-04-10 09:09:48 +02:00
parent 796643c1d9
commit ea83cd6f00

View file

@ -1,5 +1,7 @@
require 'date'
xml.instruct! :xml, :version => "1.0"
xml.rss :version => "2.0" do
xml.rss :version => "2.0", "xmlns:dc" => "http://purl.org/dc/elements/1.1/" do
xml.channel do
xml.title "Search results"
xml.description "Papers matching search criteria"
@ -8,8 +10,29 @@ xml.rss :version => "2.0" do
@papers.each do |doc|
xml.item do
xml.title doc.name
xml.description truncate(doc.content, length: 768)
xml.pubDate doc.published_at.to_date.to_s(:rfc822)
if !doc.content.blank?
xml.description do
xml.cdata! truncate(doc.content, length: 768)
end
end
if !doc.published_at.blank?
xml.pubDate DateTime.parse(doc.published_at).utc.strftime("%a, %d %b %Y %H:%M:%S %z")
end
doc.originator.each do |originator|
xml.dc :creator do
xml.cdata! originator
end
end
if !doc.paper_type.blank?
xml.category do
xml.cdata! doc.paper_type
end
end
if !doc.resolution.blank?
xml.category do
xml.cdata! doc.resolution
end
end
xml.link doc.url
xml.guid doc.url
end