juju/plugins/tildeadmin.py

46 lines
1.8 KiB
Python

#!/usr/bin/python3
import pinhook.plugin
import util.tilde
@pinhook.plugin.command('&tao', help_text='[Admin] Set the admin only mode', ops=True)
def debug_plugin(msg):
if msg.nick not in msg.ops:
return
if msg.arg:
util.tilde.ADMIN_ONLY = (msg.arg.lower() == 'true' or msg.arg.lower() == 't')
return pinhook.plugin.message("ADMIN_ONLY set to '{}'".format(util.tilde.ADMIN_ONLY))
@pinhook.plugin.command('&dbg', help_text='[Admin] Set the debug mode', ops=True)
def debug_plugin(msg):
if msg.nick not in msg.ops:
return
if msg.arg:
util.tilde.DEBUG = (msg.arg.lower() == 'true' or msg.arg.lower() == 't')
return pinhook.plugin.message("DEBUG set to '{}'".format(util.tilde.DEBUG))
@pinhook.plugin.command('&tsk', help_text='[Admin] Set the timeskip mode', ops=True)
def timeskip_plugin(msg):
if msg.nick not in msg.ops:
return
if msg.arg:
util.tilde.TIMESKIP = (msg.arg.lower() == 'true' or msg.arg.lower() == 't')
return pinhook.plugin.message("TIMESKIP set to '{}'".format(util.tilde.TIMESKIP))
@pinhook.plugin.command('&tilde_requests', help_text='[Admin] See the current requests for the jugame', ops=True)
def tilde_requests_plugin(msg):
if msg.nick not in msg.ops and not util.tilde.DEBUG:
return
return pinhook.plugin.message("Outstanding requests: {}".format(str(util.tilde.challenges)) if util.tilde.challenges else "(none)")
@pinhook.plugin.command('&delete_request', help_text='[Admin] Delete your jugame request', ops=True)
def delete_tilde_request_plugin(msg):
if (msg.nick not in msg.ops and not util.tilde.DEBUG) and (not msg.nick in util.tilde.challenges):
return
if msg.arg:
del util.tilde.challenges[msg.arg]
else:
del util.tilde.challenges[msg.nick]
return pinhook.plugin.message("Deleted")