summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiuseppe Bilotta <giuseppe.bilotta@gmail.com>2009-02-08 15:05:59 +0100
committerGiuseppe Bilotta <giuseppe.bilotta@gmail.com>2009-02-08 15:05:59 +0100
commit43ef0f794c062325be03a30ca609d4fcbeb5ae41 (patch)
tree16c7cdfc1e95efa22ec577dc9562659bd7a71ef6
parent2e33012eb5eb8cf121059d06f07f6950141deccc (diff)
grouphug: htmlinfo filter
-rw-r--r--data/rbot/plugins/grouphug.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/data/rbot/plugins/grouphug.rb b/data/rbot/plugins/grouphug.rb
index fa35803c..1b08de2c 100644
--- a/data/rbot/plugins/grouphug.rb
+++ b/data/rbot/plugins/grouphug.rb
@@ -16,6 +16,7 @@ class GrouphugPlugin < Plugin
def initialize
super
@confessions = Array.new
+ @bot.register_filter(:grouphug, :htmlinfo) { |s| grouphug_filter(s) }
end
def help( plugin, topic="" )
@@ -85,6 +86,23 @@ class GrouphugPlugin < Plugin
m.reply "failed to connect to grouphug.us"
end
end
+
+ def grouphug_filter(s)
+ # check if we like the location of the page
+ loc = Utils.check_location(s, %r{http://(?:.*\.)?grouphug\.us})
+ return unless loc
+ # check if there are any conefssions
+ confessions = get_confessions(s[:text])
+ return if confessions.empty?
+ title = s[:text].ircify_html_title
+ # return the first confession
+ return {
+ :title => title,
+ :content => confessions.first,
+ :grouphug_confessions => confessions
+ }
+ end
+
end