diff options
Diffstat (limited to 'modules/words.py')
| -rw-r--r-- | modules/words.py | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/modules/words.py b/modules/words.py index c76fb3dc..716b7437 100644 --- a/modules/words.py +++ b/modules/words.py @@ -129,6 +129,12 @@ class Module(ModuleManager.BaseModule): else: event["stderr"].write("That word is not being tracked") + def _get_nickname(self, server, target, nickname): + nickname = server.get_user(nickname).nickname + if target.get_setting("wordiest-prevent-highlight", True): + nickname = utils.prevent_highlight(nickname) + return nickname + @utils.hook("received.command.wordiest") def wordiest(self, event): """ @@ -137,8 +143,13 @@ class Module(ModuleManager.BaseModule): """ channel_query = None word_prefix = "" - if event["args_split"]: - channel_query = event["args_split"][0].lower() + if event["args"]: + if not event["args_split"][0] == "*": + channel_query = event["args_split"][0].lower() + elif event["is_channel"]: + channel_query = event["target"].name + + if channel_query: word_prefix = " (%s)" % channel_query words = event["server"].find_all_user_channel_settings("words") @@ -150,7 +161,7 @@ class Module(ModuleManager.BaseModule): user_words[nickname] += word_count top_10 = utils.top_10(user_words, - convert_key=lambda nickname: - event["server"].get_user(nickname).nickname) + convert_key=lambda nickname: self._get_nickname( + event["server"], event["target"], nickname)) event["stdout"].write("wordiest%s: %s" % ( word_prefix, ", ".join(top_10))) |
