require 'feedparser' require 'feedparser/filesizes' module FeedParser class Feed def to_html(localtime = true) s = '' s += '' s += "\n" s += "\n" s += "\n" s += "#{@title.escape_html}\n" s += "\n" s += "\n" s += "\n" s += <<-EOF
EOF r = "" r += "\n" if @link if @title r += "#{@title.escape_html}\n" elsif @link r += "#{@link.escape_html}\n" else r += "Unnamed feed\n" end r += "\n" if @link headline = "\n" s += (headline % ["Feed title:", r]) s += (headline % ["Type:", @type]) s += (headline % ["Encoding:", @encoding]) s += (headline % ["Creator:", @creator.escape_html]) if @creator s += "
%s%s
\n" if @description and @description !~ /\A\s* EOF s += to_html(localtime) s += "\n\n" s end def to_html(localtime = true) s = <<-EOF
EOF r = "" r += "\n" if @feed.link if @feed.title r += "#{@feed.title.escape_html}\n" elsif @feed.link r += "#{@feed.link.escape_html}\n" else r += "Unnamed feed\n" end r += "\n" if @feed.link headline = "\n" s += (headline % ["Feed:", r]) r = "" r += "" if @link if @title r += "#{@title.escape_html}\n" elsif @link r += "#{@link.escape_html}\n" end r += "\n" if @link s += (headline % ["Item:", r]) s += "
%s%s
\n" s += "\n" if @content and @content !~ /\A\s* 0 s += <<-EOF
EOF s += '' s += "\n" @enclosures.each do |e| s += "\n" end s += "
Files:
   #{e[0].split('/')[-1]} (#{e[1].to_i.to_human_readable}, #{e[2]})
\n" end s += "\n
\n" s += '' + "\n" l = '' + "\n" if @date if localtime s += l % [ 'Date:', @date.to_s ] else s += l % [ 'Date:', @date.getutc.to_s ] end end s += l % [ 'Author:', @creator.escape_html ] if @creator s += l % [ 'Subject:', @subject.escape_html ] if @subject s += l % [ 'Category:', @category.escape_html ] if @category s += "
%s  %s
\n" s end end end