source: projects/web/trunk/bin/render_rss.rb @ 8372

Revision 8372, 2.0 KB checked in by daisuke, 10 years ago (diff)

small creanup

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