from yaml import dump import main from modules import alias class AliasCommand: def __init__(self, *args): self.alias(*args) def alias(self, addr, authed, data, obj, spl, success, failure, info, incUsage, length): if authed: if length == 1: info(dump(main.alias)) return elif length == 3: if spl[1] == "add": if not spl[2].isdigit(): failure("Must be a number, not %s" % spl[2]) return num = int(spl[2]) for i in range(num): if len(main.alias.keys()) == 0: nextNum = 1 else: nextNum = max(main.alias.keys()) + 1 main.alias[nextNum] = alias.generate_alias() success("Generated new alias: %i" % nextNum) main.saveConf("alias") return elif spl[1] == "del": if not spl[2].isdigit(): failure("Must be a number, not %s" % spl[2]) return num = int(spl[2]) if num not in main.alias.keys(): failure("No such alias: %i" % num) return failed = False for i in main.network.keys(): if num in main.network[i].aliases.keys(): failure("Alias in use by %s" % i) failed = True if failed: return del main.alias[num] success("Removed alias: %i" % num) main.saveConf("alias") return else: incUsage("alias") return else: incUsage(None)