ocarina/src/plugins/help.py

50 lines
1.1 KiB
Python

# This is a simple test plugin, to make sure everything is working
__author__="bjschuma"
__date__ ="$Jan 20, 2010 8:01:55 PM$"
from bt.message import write, disable, enable
from bt import plugin
from session import manager
class Plugin(plugin.Plugin):
def __init__(self):
plugin.Plugin.__init__(self)
self.help = "Returns a short description of the plugin"
self.usage = "help [plugin name]"
def run(self, args=None):
if args == None:
disable()
list = manager.run("plugins", ["list", "enabled"])
join = ", "
enable()
write("Usage: " + self.usage)
write("Valid commands are: ")
write(join.join(list))
return
else:
plugin = args[0]
module = None
if (plugin in manager.enabled.keys()) == True:
module = manager.enabled[plugin]
elif (plugin in manager.disabled.keys()) == True:
module = manager.disabled[plugin]
else:
message = "Plugin "+plugin+" does not appear to exist."
try:
if not module == None:
message,usage = module.gethelp()
write(message)
if not usage=="":
write("Usage: "+usage)
return message
except:
write("Plugin "+plugin+" has no help message.")
return ""