diff options
author | piernov <piernov@piernov.servegame.org> | 2011-06-02 15:08:03 +0200 |
---|---|---|
committer | piernov <piernov@piernov.servegame.org> | 2011-06-02 15:08:03 +0200 |
commit | 762f732c33432c9a6f488dd5618e19b26fe47609 (patch) | |
tree | 878104dccdc4389a1f523472f2f4e08a24e99777 /modules/bdg.rb | |
parent | ec823fb412e4574e4d2dcd4c0f58dff01ee549e6 (diff) | |
download | rbjbbot-master.tar.gz rbjbbot-master.tar.bz2 rbjbbot-master.tar.xz rbjbbot-master.zip |
Diffstat (limited to 'modules/bdg.rb')
-rw-r--r-- | modules/bdg.rb | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/modules/bdg.rb b/modules/bdg.rb new file mode 100644 index 0000000..5acd832 --- /dev/null +++ b/modules/bdg.rb @@ -0,0 +1,35 @@ +def module_bdg(msg_body, sender_nick, config) + + require 'dbi' + require 'htmlentities' + require 'iconv' + + @mysql_config = { "host" => "localhost", + "db" => "bdg", + "user" => "bdg_ro", + "passwd" => "vinblanc_ro" + } + + def bdg(bdg_number) + begin + db = DBI.connect("DBI:Mysql:" + @mysql_config["db"] + ":" + @mysql_config["host"], @mysql_config["user"], @mysql_config["passwd"]) + st = db.execute('select id,titre,blague,auteur,date_post from blague where id=' + bdg_number) + row = st.fetch + answer = "\##{row[0]} - #{row[1]} \n #{row[2]} \n par #{row[3]} le #{row[4]} " + answer = HTMLEntities.new.decode(answer) + answer = Iconv.new('utf-8', 'iso-8859-1').iconv(answer) + return answer + rescue + answer = "BDG introuvable" + return answer + end + end + + if msg_body =~ /^!bdg(\s|)\d+$/ + answer = bdg(msg_body.gsub(/!bdg(\s|)/, '')) + return answer + elsif msg_body =~ /^!bdg+/ + answer = "Veuillez entrer un numéro de BDG." + return answer + end +end |