logfile_template = "parrot.%s.log"
#: Les OVEROPs, tous les droits sur le bot
-overops=["[20-100]","[20-100]_c"]
+overops=["[20-100]","[20-100]_c", "PEB"]
#: Les OPs, moins de droits que les OVEROPs
-ops=[]
+ops=["Chopopope"]
#: À qui s'adresser (par IRC) quand le bot rencontre une erreur
report_bugs_to=["[20-100]"]
quit_messages = [u"« » ~ "]
leave_messages = quit_messages
-quit_fail_messages = [u" « » ~ "]
+quit_fail_messages = [u" « Not today » ~ potato"]
leave_fail_messages = quit_fail_messages
#: Aide sur les commandes
Me déconnecte du serveur IRC."""],
"crash" : [None, None, u"""CRASH
- Me fait crasher"""]
+ Me fait crasher"""],
+
+"dump" : [u"""DUMP
+Sauvegarde les quotes dans un fichier texte. (nécessite d'être OP en query, pas en public)""", None, None],
+
+"restore" : [None, None, u"""RESTORE
+Remplace la QuoteDB par les quotes dans le fichier texte de dump.
+(Les quotes depuis le dernier dump sont perdues)"""],
}
+#: Message d'aide des !commandes
+helpmsg_before = u"""Commandes accessibles sur un channel :
+!quote : afficher une quote au hasard
+!author <chose> : afficher les auteurs contenant <chose>
+!author-reg <chose> : afficher les auteurs qui matchent la regexp ^<chose>$
+!from/!from-reg <chose> : fait la même recher puis sélectionne au hasard une quote d'un des auteurs trouvés
+!search/!search-reg <chose> : afficher une quote contenant <chose>/matchant ^<chose>$
+Toutes les !commandes peuvent être précédée de context- pour afficher le contexte des quotes trouvées. (!context-quote, …)
+Parrot: display -> affiche l'url où est disponible le dernier dump des quotes.
+Parrot: dump (cf HELP en query)
+"""
+
#: Message d'aide par défaut
-helpmsg_default = u"Liste des commandes disponibles :\nHELP"
+helpmsg_default = helpmsg_before + u"Liste des commandes disponibles en privé :\nHELP DUMP"
#: Message d'aide par défaut à ajouter pour les OPs
helpmsg_ops = u" JOIN LEAVE QUIET NOQUIET RELOAD"
#: Message d'aide par défaut à ajouter pour les OVEROPs
-helpmsg_overops = u" SAY DO STAY NOSTAY OPS OVEROPS KICK DIE CRASH"
+helpmsg_overops = u" SAY DO STAY NOSTAY OPS OVEROPS KICK DIE CRASH RESTORE"
#: Liste de paires de masques ``[black, exceptlist]`` : on blacklistera ce qui match ``black``
#: et aucun élément de ``exceptlist``
blacklisted_masks = [("Flo!*@*", [])]
+#: Regexp pour le lieu et le quoter
+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*("|»|') ?~ ?(?P<author>.+?)\s*$"""
+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
#: Template pour afficher une quote
quote_template = u"« %(content)s » ~ %(author)s"
+quote_template_withcontext = u"« %(content)s » ~ %(author)s | %(place)s"
#: Fichier pour stocker les quotes
quote_file = u"quotes.json"
+
+#: Fichier pour exporter les quotes
+quote_dump_file = u"quotes.txt"
+
+#: URL où sont disponibles les quotes
+quote_display_url = u"http://cerebro.crans.org/parrot-quotes.txt (campus-only)"
+
+#: Suffixes qui font qu'une commande va utiliser des regexp
+regex_suffixes = ["-r", "reg", "-reg", "regex", "-regex", "regexp", "-regexp"]
+
+#: Nombre maximum d'auteurs qu'on peut demander à afficher
+search_max_authors = 20