From 7931fab14599b739c18c8f1ebcc24b75688dbc09 Mon Sep 17 00:00:00 2001 From: "Sean B. Palmer" Date: Thu, 21 Feb 2008 12:06:33 +0000 Subject: Phenny2, now being tested on Freenode as the main phenny. --- modules/reload.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100755 modules/reload.py (limited to 'modules/reload.py') diff --git a/modules/reload.py b/modules/reload.py new file mode 100755 index 0000000..257eaf7 --- /dev/null +++ b/modules/reload.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python +""" +reload.py - Phenny Module Reloader Module +Copyright 2008, Sean B. Palmer, inamidst.com +Licensed under the Eiffel Forum License 2. + +http://inamidst.com/phenny/ +""" + +import irc + +def f_reload(phenny, input): + """Reloads a module, for use by admins only.""" + if not input.admin: return + + name = match.group(2) + module = getattr(__import__('modules.' + name), name) + reload(module) + + if hasattr(module, '__file__'): + import os.path, time + mtime = os.path.getmtime(module.__file__) + modified = time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(mtime)) + else: modified = 'unknown' + + self.register(vars(module)) + self.bind_commands() + + phenny.reply('%r (version: %s)' % (module, modified)) +f_reload.name = 'reload' +f_reload.rule = ('$nick', ['reload'], r'(\S+)') + +if __name__ == '__main__': + print __doc__.strip() -- cgit v1.2.3-1-g7c22