[3101] | 1 | def render_rss_table(url, max_count = 5) |
---|
| 2 | require 'rss' |
---|
| 3 | @content = "" |
---|
| 4 | rss = RSS::Parser.parse(url, false) |
---|
| 5 | |
---|
| 6 | if rss && rss.channel && rss.channel.title |
---|
| 7 | @content += " <h2><a href=\"#{rss.channel.link}\">#{rss.channel.title}</a>\n" |
---|
| 8 | @content += " <a href=\"/#{url}\">\n" |
---|
| 9 | @content += " <img src=\"/images/rss.png\"></a></h2>\n" |
---|
| 10 | @content += " <div class=\"top-news\">\n" |
---|
| 11 | @content += " <table summary=\"news\">\n" |
---|
| 12 | |
---|
| 13 | rss.items.each_with_index do |i, count| |
---|
| 14 | break if count == max_count && max_count != 0 |
---|
| 15 | @content += " <tr>\n" |
---|
| 16 | @content += " <th><a href=\"#{i.link}\">#{i.title}</a></th>\n" |
---|
| 17 | @content += " <td>#{i.date.strftime("%Y/%m/%d")}</td>\n" |
---|
| 18 | @content += " </tr>\n" |
---|
| 19 | end |
---|
| 20 | |
---|
| 21 | @content += " <tr><th><a href=\"#{rss.channel.link}\">もっと読む...</a></th></tr>\n" if max_count != 0 |
---|
| 22 | @content += " </table>\n" |
---|
| 23 | @content += " </div><!-- end top-news -->" |
---|
| 24 | end |
---|
| 25 | return @content |
---|
| 26 | end |
---|
| 27 | |
---|
| 28 | def render_rss_sidebarlist(url, max_count = 7) |
---|
| 29 | require 'rss' |
---|
| 30 | @content = "" |
---|
| 31 | rss = RSS::Parser.parse(url, false) |
---|
| 32 | |
---|
| 33 | if rss && rss.channel && rss.channel.title |
---|
| 34 | @content += " <h2><a href=\"#{rss.channel.link}\">#{rss.channel.title}</a>\n" |
---|
| 35 | @content += " <a href=\"/#{url}\">\n" |
---|
| 36 | @content += " <img src=\"/images/rss.png\"></a></h2>\n" |
---|
| 37 | @content += " <div class=\"errata\">\n" |
---|
| 38 | @content += " <ul>\n" |
---|
| 39 | |
---|
| 40 | rss.items.each_with_index do |i, count| |
---|
| 41 | break if count == max_count && max_count != 0 |
---|
| 42 | @content += " <li><a href=\"#{i.link}\">#{i.title}</a></li>\n" |
---|
| 43 | end |
---|
| 44 | |
---|
| 45 | @content += " <li><a href=\"#{rss.channel.link}\">もっと読む...</a></li>\n" if max_count != 0 |
---|
| 46 | @content += " </ul>\n" |
---|
| 47 | @content += " </div><!-- errata -->" |
---|
| 48 | end |
---|
| 49 | return @content |
---|
| 50 | end |
---|
| 51 | |
---|