Separate out everything into files and implement a modules system to segment commands
This commit is contained in:
49
commands/stats.py
Normal file
49
commands/stats.py
Normal file
@@ -0,0 +1,49 @@
|
||||
from core.main import *
|
||||
|
||||
class Stats:
|
||||
def __init__(self, register):
|
||||
register("stats", self.stats)
|
||||
|
||||
def stats(self, addr, authed, data, obj, spl, success, failure, info, incUsage, length):
|
||||
if authed:
|
||||
if length == 1:
|
||||
stats = []
|
||||
numChannels = 0
|
||||
numWhoEntries = 0
|
||||
for i in IRCPool.keys():
|
||||
numChannels += len(IRCPool[i].channels)
|
||||
for i in wholist.keys():
|
||||
numWhoEntries += len(wholist[i].keys())
|
||||
stats.append("Servers: %s" % len(IRCPool.keys()))
|
||||
stats.append("Channels: %s" % numChannels)
|
||||
stats.append("User records: %s" % numWhoEntries)
|
||||
info("\n".join(stats))
|
||||
return
|
||||
|
||||
elif length == 2:
|
||||
stats = []
|
||||
numChannels = 0
|
||||
numWhoEntries = 0
|
||||
|
||||
failures = 0
|
||||
if spl[1] in IRCPool.keys():
|
||||
numChannels += len(IRCPool[spl[1]].channels)
|
||||
else:
|
||||
failure("Name does not exist: %s" % spl[1])
|
||||
failures += 1
|
||||
if spl[1] in wholist.keys():
|
||||
numWhoEntries += len(wholist[spl[1]].keys())
|
||||
else:
|
||||
failure("Who entry does not exist: %s" % spl[1])
|
||||
failures += 1
|
||||
if failures == 2:
|
||||
failure("No information found, aborting")
|
||||
return
|
||||
stats.append("Channels: %s" % numChannels)
|
||||
stats.append("User records: %s" % numWhoEntries)
|
||||
info("\n".join(stats))
|
||||
return
|
||||
else:
|
||||
incUsage("stats")
|
||||
else:
|
||||
incUsage(None)
|
||||
Reference in New Issue
Block a user