blacklisted_masks = [("Flo!*@*", [])]
#: Regexp pour le lieu et le quoter
-quote_optionnal_fields = ur"\|\s*(?P<place>[^|]+?)?\s*\|\s*(?P<quoter>[^|]+?)?\s*"
+quote_optionnal_fields = ur"(?:(?:\|\s*(?P<place>[^|]+?)\s*)?\|\s*(?P<quoter>[^|]+?)?\s*)?"
#: Regexp utilisée pour parser des quotes
-quote_regexp = ur"""\s*(?:"|«|')\s*(?P<content>.+?)\s*(?:"|»|')\s*~\s*(?P<author>[^|]+?)\s*(?:%s)?(?:$|\n)""" % (quote_optionnal_fields,)
+quote_regexp = ur"""\s*(?:"|«|')\s*(?P<content>.+?)\s*(?:"|»|')\s*~\s*(?P<author>[^|]+?)\s*%s(?:$|\n)""" % (quote_optionnal_fields,)
#: Regexp utlisée pour parser une quote avec timestamp
quote_regexp_with_timestamp = ur"(?P<timestamp>.{19}) " + quote_regexp
self.quotedb = quotes.QuoteDB()
self.reload_quotes()
+
+ # Pour agir à la réception des whois 307 = registered nick
+ self.ircobj.add_global_handler("307", self.on_registered_nick)
### Utilitaires
time.sleep(2)
serv.join(channel)
+ def on_registered_nick(self, serv, ev):
+ """À la réception d'un résultat de whois."""
+ pseudo, regis = ev.arguments()
+ if regis == 'is a registered nick':
+ print "%s est enregistré \o/" % pseudo
+
### .fork trick
def start_as_daemon(self, outfile):
sys.stderr = Logger(outfile)