]> jfr.im git - erebus.git/blobdiff - bot.py
err... yeah.
[erebus.git] / bot.py
diff --git a/bot.py b/bot.py
index 10be7f6a4908207091535cc1d05f4021c53eddd5..7140a1a61f09846767d547e3d88465b15a24cc06 100644 (file)
--- a/bot.py
+++ b/bot.py
@@ -16,11 +16,10 @@ class Bot(object):
                self.realname = realname
 
                curs = self.parent.db.cursor()
-               curs.execute("SELECT chname FROM chans WHERE bot = %s AND active = 1", (self.nick,))
-               chansres = curs.fetchall()
-               curs.close()
-
-               self.chans = [self.parent.newchannel(self, row['chname']) for row in chansres]
+               if curs.execute("SELECT chname FROM chans WHERE bot = %s AND active = 1", (self.nick,)):
+                       chansres = curs.fetchall()
+                       curs.close()
+                       self.chans = [self.parent.newchannel(self, row['chname']) for row in chansres]
 
                self.conn = BotConnection(self, bind, server, port)
        def connect(self):
@@ -61,8 +60,7 @@ class Bot(object):
                        qt = pieces[3]
                        nick = pieces[4]
                        auth = pieces[5]
-                       if auth != '0':
-                               self.parent.user(nick).authed(auth)
+                       self.parent.user(nick).authed(auth)
 
                elif pieces[1] == "JOIN":
                        nick = pieces[0].split('!')[0][1:]
@@ -100,7 +98,13 @@ class Bot(object):
                                                pieces.pop(0) # command actually starts with next word
                                                msg = ' '.join(pieces) # command actually starts with next word
                                elif not triggerused:
-                                       return # not to bot, don't process!
+                                       if self.parent.haschanhook(target.lower()):
+                                               for callback in self.parent.getchanhook(target.lower()):
+                                                       cbret = callback(self, user, chan, *pieces)
+                                                       if cbret is NotImplemented:
+                                                               self.msg(user, "Command not implemented.")
+                                       else:
+                                               return # not to bot, don't process!
                        except IndexError:
                                return # Fix if you feel like it /BiohZn