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

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

update to new web design

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 +=   "<div class=\"midashi-1\">#{rss.channel.title}"
14      @content +=   "<a href=\"/#{url}\">"
15      @content +=   "<img align=\"right\" src=\"/img/rss.jpg\"></a></div>\n"
16      @content +=   "      <div class=\"info-table\">\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.gsub("http://vinelinux.org","")}\">もっと読む...</a></th></tr>\n" if max_count != 0
28      @content +=   "        </table>\n"
29      @content +=   "      </div><!-- info-table -->"
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.