summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPepich <benedikt.abel@yahoo.de>2015-10-18 16:06:09 +0200
committerPepich <benedikt.abel@yahoo.de>2015-10-18 16:06:09 +0200
commitfbbbad1853ac7bd377fa68b374bf40caa72e7432 (patch)
treedd2d3414d4888c001b4c53fc9be90f21ae7fcf03
parent70662bdd0b006642466adec9c92a0f08b1744f10 (diff)
added console support and fixed a small cosmetic bug
-rw-r--r--iptracker.py142
1 files changed, 71 insertions, 71 deletions
diff --git a/iptracker.py b/iptracker.py
index 824f829..a25dcce 100644
--- a/iptracker.py
+++ b/iptracker.py
@@ -11,85 +11,85 @@ iptrack_permission = "utils.iptrack"
@hook.event("player.PlayerJoinEvent", "low")
def on_player_join(event):
- try:
- player = event.getPlayer()
- ip = player.getAddress().getHostString()
- uuid = uid(player)
- conn = zxJDBC.connect(mysql_database, mysql_user, mysql_pass, "com.mysql.jdbc.Driver")
- curs = conn.cursor()
- curs.execute("SELECT ips FROM iptrack_uuidtoips WHERE uuid = ?", (uuid, ))
- results = curs.fetchall()
- if len(results) == 0:
- ips = []
+ player = event.getPlayer()
+ ip = player.getAddress().getHostString()
+ uuid = uid(player)
+ conn = zxJDBC.connect(mysql_database, mysql_user, mysql_pass, "com.mysql.jdbc.Driver")
+ curs = conn.cursor()
+ curs.execute("SELECT ips FROM iptrack_uuidtoips WHERE uuid = ?", (uuid, ))
+ results = curs.fetchall()
+ if len(results) == 0:
+ ips = []
+ else:
+ ips = json.loads(results[0][0])
+ curs.execute("SELECT uuids FROM iptrack_iptouuids WHERE ip = ?", (ip, ))
+ results = curs.fetchall()
+ if len(results) == 0:
+ uuids = []
+ else:
+ uuids = json.loads(results[0][0])
+ new_ip_entry = (len(ips) == 0)
+ new_uuid_entry = (len(uuids) == 0)
+ if ip not in ips:
+ ips.append(ip)
+ if new_ip_entry:
+ curs.execute("INSERT INTO iptrack_uuidtoips VALUES (?,?)", (uuid, json.dumps(ips), ))
else:
- ips = json.loads(results[0][0])
- curs.execute("SELECT uuids FROM iptrack_iptouuids WHERE ip = ?", (ip, ))
- results = curs.fetchall()
- if len(results) == 0:
- uuids = []
+ curs.execute("UPDATE iptrack_uuidtoips SET ips = ? WHERE uuid = ?", (uuid, json.dumps(ips), ))
+ if uuid not in uuids:
+ uuids.append(uuid)
+ if new_uuid_entry:
+ curs.execute("INSERT INTO iptrack_iptouuids VALUES (?,?)", (ip, json.dumps(uuids), ))
else:
- uuids = json.loads(results[0][0])
- new_ip_entry = (len(ips) == 0)
- new_uuid_entry = (len(uuids) == 0)
- if ip not in ips:
- ips.append(ip)
- if new_ip_entry:
- curs.execute("INSERT INTO iptrack_uuidtoips VALUES (?,?)", (uuid, json.dumps(ips), ))
- else:
- curs.execute("UPDATE iptrack_uuidtoips SET ips = ? WHERE uuid = ?", (uuid, json.dumps(ips), ))
- if uuid not in uuids:
- uuids.append(uuid)
- if new_uuid_entry:
- curs.execute("INSERT INTO iptrack_iptouuids VALUES (?,?)", (ip, json.dumps(uuids), ))
- else:
- curs.execute("UPDATE iptrack_iptouuids SET uuids = ? WHERE uuid = ?", (ip, json.dumps(uuids), ))
- conn.commit()
- except:
- error(trace())
+ curs.execute("UPDATE iptrack_iptouuids SET uuids = ? WHERE uuid = ?", (ip, json.dumps(uuids), ))
+ conn.commit()
curs.close()
conn.close()
@hook.command("getinfo")
def on_getinfo_command(sender, args):
- try:
- if(sender.hasPermission(iptrack_permission)):
- if not checkargs(sender, args, 1, 1):
- return false
- else:
- if isIP(args[0]):
- conn = zxJDBC.connect(mysql_database, mysql_user, mysql_pass, "com.mysql.jdbc.Driver")
- curs = conn.cursor()
- curs.execute("SELECT uuids FROM iptrack_iptouuids WHERE ip = ?", (args[0], ))
- results = curs.fetchall()
- curs.close()
- conn.close()
- if len(results) == 0:
- msg(sender, "IP " + args[0] + " is not registered in the database, maybe you got a number wrong?")
- else:
- uuids = json.loads(results[0][0])
- msg(sender, "IP " + args[0] + " was seen with " + str(len(uuids)) + " different Accounts:")
- for i in range(0, len(uuids)):
- p=Bukkit.getOfflinePlayer(UUID.fromString(uuids[i]))
+ if(sender.hasPermission(iptrack_permission)):
+ if not checkargs(sender, args, 1, 1):
+ return false
+ else:
+ if isIP(args[0]):
+ conn = zxJDBC.connect(mysql_database, mysql_user, mysql_pass, "com.mysql.jdbc.Driver")
+ curs = conn.cursor()
+ curs.execute("SELECT uuids FROM iptrack_iptouuids WHERE ip = ?", (args[0], ))
+ results = curs.fetchall()
+ curs.close()
+ conn.close()
+ if len(results) == 0:
+ msg(sender, "IP " + args[0] + " is not registered in the database, maybe you got a number wrong?")
+ else:
+ uuids = json.loads(results[0][0])
+ msg(sender, "IP " + args[0] + " was seen with " + str(len(uuids)) + " different Accounts:")
+ for i in range(0, len(uuids)):
+ p=Bukkit.getOfflinePlayer(UUID.fromString(uuids[i]))
+ if is_player(sender):
send_JSON_message(sender.getName(), '["",{"text":"' + p.getName() + ' - (uuid: ' + uuids[i] + '","color":"gold","clickEvent":{"action":"run_command","value":"/getinfo ' + p.getName() + '"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"To search for ' + p.getName() + ' in the database, simply click the name!","color":"gold"}]}}}]')
+ else:
+ msg(sender,p.getName() + " - (uuid: " + uuids[i] + ")")
+ else:
+ target = Bukkit.getOfflinePlayer(args[0])
+ uuid = target.getUniqueId()
+ conn = zxJDBC.connect(mysql_database, mysql_user, mysql_pass, "com.mysql.jdbc.Driver")
+ curs = conn.cursor()
+ curs.execute("SELECT ips FROM iptrack_uuidtoips WHERE uuid = ?", (uuid.toString(), ))
+ results = curs.fetchall()
+ curs.close()
+ conn.close()
+ if len(results) == 0:
+ msg(sender, "Player " + args[0] + " is not registered in the database, maybe you misspelled the name?")
else:
- target = Bukkit.getOfflinePlayer(args[0])
- uuid = target.getUniqueId()
- conn = zxJDBC.connect(mysql_database, mysql_user, mysql_pass, "com.mysql.jdbc.Driver")
- curs = conn.cursor()
- curs.execute("SELECT ips FROM iptrack_uuidtoips WHERE uuid = ?", (uuid.toString(), ))
- results = curs.fetchall()
- curs.close()
- conn.close()
- if len(results) == 0:
- msg(sender, "Player " + args[0] + " is not registered in the database, maybe you misspelled the name?")
- else:
- ips = json.loads(results[0][0])
- msg(sender, "Player " + sender.getName() + " was seen with " + str(len(ips)) + " different IPs:")
- for i in range(0, len(ips)):
+ ips = json.loads(results[0][0])
+ msg(sender, "Player " + args[0] + " was seen with " + str(len(ips)) + " different IPs:")
+ for i in range(0, len(ips)):
+ if is_player(sender):
send_JSON_message(sender.getName(), '["",{"text":"' + ips[i] + '","color":"gold","clickEvent":{"action":"run_command","value":"/getinfo ' + ips[i] + '"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"To search for the IP ' + ips[i] + ' in the database, simply click the IP!","color":"gold"}]}}}]')
- else:
- noperm(sender)
- return True
- except:
- error(trace())
+ else:
+ msg(sender,ips[i])
+ else:
+ noperm(sender)
+ return True