From 49b8c4785a13948ac9e240de78234deac0d2ad18 Mon Sep 17 00:00:00 2001 From: dave Date: Sun, 12 Oct 2014 00:02:20 -0700 Subject: [PATCH] Allow ModuleHook hooks to be defined as string for a single hook for list for a multiple hooks->1 method relationship --- pyircbot/core/pyircbot.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pyircbot/core/pyircbot.py b/pyircbot/core/pyircbot.py index 12291be..f36464c 100644 --- a/pyircbot/core/pyircbot.py +++ b/pyircbot/core/pyircbot.py @@ -385,7 +385,11 @@ class PyIRCBot(asynchat.async_chat): :type module: object""" " activate a module's hooks " for hook in module.hooks: - self.addHook(hook.hook, hook.method) + if type(hook.hook) == list: + for hookcmd in hook.hook: + self.addHook(hookcmd, hook.method) + else: + self.addHook(hook.hook, hook.method) def unloadModuleHooks(self, module): """**Internal.** Disable (disconnect) hooks of a module @@ -394,7 +398,11 @@ class PyIRCBot(asynchat.async_chat): :type module: object""" " remove a modules hooks " for hook in module.hooks: - self.removeHook(hook.hook, hook.method) + if type(hook.hook) == list: + for hookcmd in hook.hook: + self.removeHook(hookcmd, hook.method) + else: + self.removeHook(hook.hook, hook.method) def addHook(self, command, method): """**Internal.** Enable (connect) a single hook of a module