public
Description: A 'planet' like feed aggregator using feedparser and erubis
Clone URL: git://github.com/technicalpickles/feedbarn.git
Added our own 'feed'. It wraps the one built by feednormalizer, and lets 
you override some of its properties from our config.
Fri Feb 22 09:02:04 -0800 2008
commit  6f4ccc47d5d60856015fc915723670eb79c82699
tree    43581d8a0b843fcac67ab86d0d0cba071343f90c
parent  ac1bf1117fdf7dd4f3499aade9e2c4a342abf345
...
9
10
11
12
 
13
14
15
...
9
10
11
 
12
13
14
15
0
@@ -9,7 +9,7 @@ feeds = farmer.gather
0
 barn = FeedBarn::Barn.new('My barn', feeds)
0
 view = FeedBarn::View.new(barn)
0
 
0
-Dir.mkdir('output')
0
+Dir.mkdir('output') unless File.exists?('output')
0
 open('output/index.html', 'w') do |file|
0
   file.write view.render
0
   file.close
...
3
4
5
6
 
7
8
9
...
3
4
5
 
6
7
8
9
0
@@ -3,7 +3,7 @@ name: My aggregation
0
 
0
 feeds:
0
     -
0
- name: Technical Pickles
0
+ title: Technical Pickles
0
         url: http://localhost:3000/posts.atom
0
     # -
0
     # name: Technorati
...
1
2
 
3
4
...
1
2
3
4
5
0
@@ -1,3 +1,4 @@
0
 require 'feedbarn/barn'
0
 require 'feedbarn/farmer'
0
+require 'feedbarn/feed'
0
 require 'feedbarn/view'
0
\ No newline at end of file
...
22
23
24
25
26
 
 
 
 
27
28
29
...
22
23
24
 
 
25
26
27
28
29
30
31
0
@@ -22,8 +22,10 @@ module FeedBarn
0
     def gather
0
       self.feeds = []
0
 
0
- feed_urls.each do |url|
0
- self.feeds << FeedNormalizer::FeedNormalizer.parse(open(url))
0
+ self.config['feeds'].each do |feed_config|
0
+ url = feed_config['url']
0
+ downloaded_feed = FeedNormalizer::FeedNormalizer.parse(open(url))
0
+ feeds << Feed.new(downloaded_feed, feed_config)
0
       end
0
        
0
       self.feeds
...
21
22
23
24
 
 
 
 
 
 
25
26
27
...
21
22
23
 
24
25
26
27
28
29
30
31
32
0
@@ -21,7 +21,12 @@
0
       </div>
0
       
0
       <div id="navigation">
0
-
0
+ <h3>Feeds</h3>
0
+ <ul>
0
+ <% barn.feeds.each do |feed| %>
0
+ <li><a href="<%= feed.url %>"><%= feed.title %></a></li>
0
+ <% end %>
0
+ </ul>
0
       </div>
0
       <div id="footer">
0
         

Comments

    No one has commented yet.