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

RevLine 
[8372]1# -*- coding: utf-8 -*-
2module RenderRss
3
[3101]4  require 'rss'
5 
[8372]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
[8397]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"
[8372]18
19      rss.items.each_with_index do |i, count|
20        break if count == max_count && max_count != 0
[8397]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"
[8372]25      end
26
[8397]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 -->"
[3101]30    end
[8372]31    return @content
[3101]32  end
33
[8372]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 -->"
[3101]53    end
[8372]54    return @content
[3101]55  end
56end
57
[8372]58
Note: See TracBrowser for help on using the repository browser.