]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - data/rbot/plugins/rss.rb
rss plugin: user ircify_html
[user/henk/code/ruby/rbot.git] / data / rbot / plugins / rss.rb
index a067cbba1aad5a258a2281637b622eb111d682b7..5cd1ada3714a272766545acae007e40fbd751567 100644 (file)
@@ -246,6 +246,8 @@ class RSSFeedsPlugin < Plugin
     end\r
   end\r
 \r
+  attr_reader :feeds\r
+\r
   def initialize\r
     super\r
     if @registry.has_key?(:feeds)\r
@@ -641,16 +643,18 @@ class RSSFeedsPlugin < Plugin
     end\r
     status = Hash.new\r
     status[:failures] = 0\r
+    status[:first_run] = true\r
     @watch[feed.handle] = @bot.timer.add(0, status) {\r
       debug "watcher for #{feed} started"\r
       failures = status[:failures]\r
+      first_run = status.delete(:first_run)\r
       begin\r
         debug "fetching #{feed}"\r
         oldxml = feed.xml ? feed.xml.dup : nil\r
         unless fetchRss(feed)\r
           failures += 1\r
         else\r
-          if oldxml and oldxml == feed.xml\r
+          if first_run or (oldxml and oldxml == feed.xml)\r
             debug "xml for #{feed} didn't change"\r
             failures -= 1 if failures > 0\r
           else\r
@@ -727,9 +731,9 @@ class RSSFeedsPlugin < Plugin
       end\r
     end\r
 \r
-    title = "#{Bold}#{item.title.chomp.riphtml}#{Bold}" if item.title\r
+    title = "#{Bold}#{item.title.ircify_html}#{Bold}" if item.title\r
 \r
-    desc = item.description.gsub(/\s+/,' ').strip.riphtml if item.description\r
+    desc = item.description.ircify_html if item.description\r
 \r
     link = item.link.chomp if item.link\r
 \r