]> gitweb.pimeys.fr Git - bots/basile.git/blobdiff - basile.py
[self_improvement] Using .lower() on avant and apres when case_insensitive
[bots/basile.git] / basile.py
index 1e0c012902925047b29c89a3e686ced877555513..2fedf6ed76a4a0aa8dc9dfb3a644b892edd0dcc9 100755 (executable)
--- a/basile.py
+++ b/basile.py
@@ -74,8 +74,10 @@ def is_something(chain, regexp=None, matches=[], avant=u".*(?:^| )", apres=u"(?:
                  case_sensitive=False):
     """Vérifie si chain contient un des éléments de ``matches``.
        Si ``regexp`` est fournie, c'est simplement elle qui est testée"""
-    if case_sensitive:
+    if not case_sensitive:
         chain = chain.lower()
+        apres = apres.lower()
+        avant = avant.lower()
     if regexp == None:
         regexp = regex_join(matches, avant, apres)
         regexp = re.compile(regexp)
@@ -311,7 +313,7 @@ class Basile(ircbot.SingleServerIRCBot):
     def crash(self, chan="nowhere", who="nobody"):
         """Fait crasher le bot."""
         where = "en privé" if chan == "priv" else "sur le chan %s" % chan
-        raise CrashError("Crash demandé par %s %s" % (who, where))
+        raise CrashError((u"Crash demandé par %s %s" % (who, where)).encode("utf-8"))
     
     ACTIONS = {
         "reload" : execute_reload,
@@ -538,7 +540,7 @@ class Basile(ircbot.SingleServerIRCBot):
                 notunderstood = True
         elif cmd == u"say":
             if auteur in self.overops and len(message) > 2:
-                serv.privmsg(message[1], " ".join(message[2:]))
+                serv.privmsg(message[1].encode("utf-8"), (u" ".join(message[2:])).encode("utf-8"))
                 log(self.serveur, "priv", auteur, " ".join(message))
             elif len(message) <= 2:
                 serv.privmsg(auteur, "Syntaxe : SAY <channel> <message>")
@@ -680,10 +682,10 @@ class Basile(ircbot.SingleServerIRCBot):
                 else:
                     serv.privmsg(canal, "%s: Je ne connais pas votre pseudo note." % (auteur))
                     log(self.serveur, canal, auteur, message + "[unknown]")
-            elif (re.match("!?(pain au chocolat|chocolatine)", message.lower())
+            elif (re.match("(pain au chocolat|chocolatine)", message.lower())
                  and not canal in self.quiet_channels):
                 serv.action(canal, "sert un pain au chocolat à %s" % (auteur))
-            elif re.match("!?manzana",message.lower()) and not canal in self.quiet_channels:
+            elif re.match("manzana",message.lower()) and not canal in self.quiet_channels:
                 if auteur in config.manzana:
                     serv.action(canal, "sert une bouteille de manzana à %s" % (auteur))
                 elif auteur in config.manzana_bis:
@@ -846,7 +848,7 @@ class Basile(ircbot.SingleServerIRCBot):
         victime = ev.arguments()[0]
         raison = ev.arguments()[1]
         if victime == self.nick:
-            log(self.serveur, "%s kické de %s par %s (raison : %s)" % (victime, channel, auteur, raison))
+            log(self.serveur, u"%s kické de %s par %s (raison : %s)" % (victime, channel.decode("utf-8"), auteur, raison))
             time.sleep(2)
             serv.join(channel)
             l1, l2 = config.kick_answers, config.kick_actions