diff --git a/plugins/fishbans.py b/plugins/fishbans.py new file mode 100644 index 0000000..96a087b --- /dev/null +++ b/plugins/fishbans.py @@ -0,0 +1,48 @@ +from util import hook, http +from urllib import quote_plus +import json + +api_url = "http://www.fishbans.com/api/stats/%s/" + + +@hook.command("bans") +@hook.command +def fishbans(inp): + "fishbans -- Gets information on s minecraft bans from fishbans" + user = inp + request = http.get_json(api_url % quote_plus(user)) + + if request["success"] == False: + return "Could not fetch ban data for %s." % user + + user_url = "http://fishbans.com/u/%s" % user + ban_count = request["stats"]["totalbans"] + + return "The user \x02%s\x02 has \x02%s\x02 bans. See detailed info " \ + "at %s" % (user, ban_count, user_url) + + +@hook.command +def bancount(inp): + "bancount -- Gets a count of s minecraft bans from fishbans" + user = inp + request = http.get_json(api_url % quote_plus(user)) + + if request["success"] == False: + return "Could not fetch ban data for %s." % user + + user_url = "http://fishbans.com/u/%s" % user + services = request["stats"]["service"] + + out = [] + for service, ban_count in services.items(): + if ban_count != 0: + out.append("%s: \x02%s\x02" % (service, ban_count)) + else: + pass + + if not out: + return "The user \x02%s\x02 has no bans." % user + else: + text = "Bans for \x02%s\x02: " % user + return text + ", ".join(out) \ No newline at end of file