Remove Case dependance, auto-update name on join into database (care

forums users!)
This commit is contained in:
Xephi 2014-08-27 07:03:11 +02:00
parent 0d8ce9e3d8
commit 6cfd3f0a0b
37 changed files with 243 additions and 202 deletions

View File

@ -478,12 +478,12 @@ public class AuthMe extends JavaPlugin {
try { try {
if (Bukkit.getServer().getOnlinePlayers() != null) { if (Bukkit.getServer().getOnlinePlayers() != null) {
for (Player player : Bukkit.getServer().getOnlinePlayers()) { for (Player player : Bukkit.getServer().getOnlinePlayers()) {
if (database.isLogged(player.getName().toLowerCase())) { if (database.isLogged(player.getName())) {
String name = player.getName().toLowerCase(); String name = player.getName();
PlayerAuth pAuth = database.getAuth(name); PlayerAuth pAuth = database.getAuth(name);
if (pAuth == null) if (pAuth == null)
break; break;
PlayerAuth auth = new PlayerAuth(name, pAuth.getHash(), pAuth.getIp(), new Date().getTime(), pAuth.getEmail(), player.getName()); PlayerAuth auth = new PlayerAuth(name, pAuth.getHash(), pAuth.getIp(), new Date().getTime(), pAuth.getEmail());
database.updateSession(auth); database.updateSession(auth);
PlayerCache.getInstance().addPlayer(auth); PlayerCache.getInstance().addPlayer(auth);
} }
@ -508,9 +508,9 @@ public class AuthMe extends JavaPlugin {
} catch (Exception e) { } catch (Exception e) {
} }
try { try {
String name = player.getName().toLowerCase(); String name = player.getName();
if (PlayerCache.getInstance().isAuthenticated(name) && !player.isDead() && Settings.isSaveQuitLocationEnabled) { if (PlayerCache.getInstance().isAuthenticated(name) && !player.isDead() && Settings.isSaveQuitLocationEnabled) {
final PlayerAuth auth = new PlayerAuth(player.getName().toLowerCase(), player.getLocation().getX(), player.getLocation().getY(), player.getLocation().getZ(), player.getWorld().getName()); final PlayerAuth auth = new PlayerAuth(player.getName(), player.getLocation().getX(), player.getLocation().getY(), player.getLocation().getZ(), player.getWorld().getName());
database.updateQuitLoc(auth); database.updateQuitLoc(auth);
} }
if (LimboCache.getInstance().hasLimboPlayer(name)) { if (LimboCache.getInstance().hasLimboPlayer(name)) {
@ -652,7 +652,7 @@ public class AuthMe extends JavaPlugin {
} }
private Location getAuthMeSpawn(Player player) { private Location getAuthMeSpawn(Player player) {
if ((!database.isAuthAvailable(player.getName().toLowerCase()) || !player.hasPlayedBefore()) && (Spawn.getInstance().getFirstSpawn() != null)) if ((!database.isAuthAvailable(player.getName()) || !player.hasPlayedBefore()) && (Spawn.getInstance().getFirstSpawn() != null))
return Spawn.getInstance().getFirstSpawn(); return Spawn.getInstance().getFirstSpawn();
if (Spawn.getInstance().getSpawn() != null) if (Spawn.getInstance().getSpawn() != null)
return Spawn.getInstance().getSpawn(); return Spawn.getInstance().getSpawn();
@ -724,7 +724,7 @@ public class AuthMe extends JavaPlugin {
public void run() { public void run() {
for (Player player : Bukkit.getOnlinePlayers()) { for (Player player : Bukkit.getOnlinePlayers()) {
if (player.isOnline()) { if (player.isOnline()) {
String name = player.getName().toLowerCase(); String name = player.getName();
if (database.isAuthAvailable(name)) if (database.isAuthAvailable(name))
if (PlayerCache.getInstance().isAuthenticated(name)) { if (PlayerCache.getInstance().isAuthenticated(name)) {
String email = database.getAuth(name).getEmail(); String email = database.getAuth(name).getEmail();
@ -755,7 +755,7 @@ public class AuthMe extends JavaPlugin {
} }
public String getIP(Player player) { public String getIP(Player player) {
String name = player.getName().toLowerCase(); String name = player.getName();
String ip = player.getAddress().getAddress().getHostAddress(); String ip = player.getAddress().getAddress().getHostAddress();
if (Settings.bungee) { if (Settings.bungee) {
if (realIp.containsKey(name)) if (realIp.containsKey(name))
@ -770,7 +770,7 @@ public class AuthMe extends JavaPlugin {
public boolean isLoggedIp(String name, String ip) { public boolean isLoggedIp(String name, String ip) {
int count = 0; int count = 0;
for (Player player : this.getServer().getOnlinePlayers()) { for (Player player : this.getServer().getOnlinePlayers()) {
if (ip.equalsIgnoreCase(getIP(player)) && database.isLogged(player.getName().toLowerCase()) && !player.getName().equalsIgnoreCase(name)) if (ip.equalsIgnoreCase(getIP(player)) && database.isLogged(player.getName()) && !player.getName().equalsIgnoreCase(name))
count++; count++;
} }
if (count >= Settings.getMaxLoginPerIp) if (count >= Settings.getMaxLoginPerIp)

View File

@ -69,7 +69,7 @@ public class Utils {
case LOGGEDIN: { case LOGGEDIN: {
if (!useGroupSystem()) if (!useGroupSystem())
break; break;
LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(name.toLowerCase()); LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(name);
if (limbo == null) if (limbo == null)
break; break;
String realGroup = limbo.getGroup(); String realGroup = limbo.getGroup();

View File

@ -49,7 +49,7 @@ public class API {
* @return true if player is authenticate * @return true if player is authenticate
*/ */
public static boolean isAuthenticated(Player player) { public static boolean isAuthenticated(Player player) {
return PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase()); return PlayerCache.getInstance().isAuthenticated(player.getName());
} }
/** /**
@ -86,7 +86,7 @@ public class API {
public static Location getLastLocation(Player player) { public static Location getLastLocation(Player player) {
try { try {
PlayerAuth auth = PlayerCache.getInstance().getAuth(player.getName().toLowerCase()); PlayerAuth auth = PlayerCache.getInstance().getAuth(player.getName());
if (auth != null) { if (auth != null) {
Location loc = new Location(Bukkit.getWorld(auth.getWorld()), auth.getQuitLocX(), auth.getQuitLocY(), auth.getQuitLocZ()); Location loc = new Location(Bukkit.getWorld(auth.getWorld()), auth.getQuitLocX(), auth.getQuitLocY(), auth.getQuitLocZ());
@ -115,7 +115,7 @@ public class API {
* @return true if player is registered * @return true if player is registered
*/ */
public static boolean isRegistered(String playerName) { public static boolean isRegistered(String playerName) {
String player = playerName.toLowerCase(); String player = playerName;
return database.isAuthAvailable(player); return database.isAuthAvailable(player);
} }
@ -128,7 +128,7 @@ public class API {
String passwordToCheck) { String passwordToCheck) {
if (!isRegistered(playerName)) if (!isRegistered(playerName))
return false; return false;
String player = playerName.toLowerCase(); String player = playerName;
PlayerAuth auth = database.getAuth(player); PlayerAuth auth = database.getAuth(player);
try { try {
return PasswordSecurity.comparePasswordWithHash(passwordToCheck, auth.getHash(), playerName); return PasswordSecurity.comparePasswordWithHash(passwordToCheck, auth.getHash(), playerName);
@ -146,12 +146,12 @@ public class API {
*/ */
public static boolean registerPlayer(String playerName, String password) { public static boolean registerPlayer(String playerName, String password) {
try { try {
String name = playerName.toLowerCase(); String name = playerName;
String hash = PasswordSecurity.getHash(Settings.getPasswordHash, password, name); String hash = PasswordSecurity.getHash(Settings.getPasswordHash, password, name);
if (isRegistered(name)) { if (isRegistered(name)) {
return false; return false;
} }
PlayerAuth auth = new PlayerAuth(name, hash, "198.18.0.1", 0, "your@email.com", getPlayerRealName(name)); PlayerAuth auth = new PlayerAuth(name, hash, "198.18.0.1", 0, "your@email.com");
if (!database.saveAuth(auth)) { if (!database.saveAuth(auth)) {
return false; return false;
} }
@ -161,22 +161,6 @@ public class API {
} }
} }
/**
* Get Player realName from lowerCase nickname
*
* @param String
* playerName return String player real name
*/
public static String getPlayerRealName(String nickname) {
try {
String realName = instance.dataManager.getOfflinePlayer(nickname).getName();
if (realName != null && !realName.isEmpty())
return realName;
} catch (NullPointerException npe) {
}
return nickname;
}
/** /**
* Force a player to login * Force a player to login
* *

View File

@ -17,16 +17,14 @@ public class PlayerAuth {
private String vBhash = null; private String vBhash = null;
private int groupId = -1; private int groupId = -1;
private String email = "your@email.com"; private String email = "your@email.com";
private String realName = "";
public PlayerAuth(String nickname, String hash, String ip, long lastLogin, public PlayerAuth(String nickname, String hash, String ip, long lastLogin,
String email, String realName) { String email) {
this.nickname = nickname; this.nickname = nickname;
this.hash = hash; this.hash = hash;
this.ip = ip; this.ip = ip;
this.lastLogin = lastLogin; this.lastLogin = lastLogin;
this.email = email; this.email = email;
this.realName = realName;
} }
@ -42,8 +40,7 @@ public class PlayerAuth {
} }
public PlayerAuth(String nickname, String hash, String ip, long lastLogin, public PlayerAuth(String nickname, String hash, String ip, long lastLogin,
double x, double y, double z, String world, String email, double x, double y, double z, String world, String email) {
String realName) {
this.nickname = nickname; this.nickname = nickname;
this.hash = hash; this.hash = hash;
this.ip = ip; this.ip = ip;
@ -53,13 +50,12 @@ public class PlayerAuth {
this.z = z; this.z = z;
this.world = world; this.world = world;
this.email = email; this.email = email;
this.realName = realName;
} }
public PlayerAuth(String nickname, String hash, String salt, int groupId, public PlayerAuth(String nickname, String hash, String salt, int groupId,
String ip, long lastLogin, double x, double y, double z, String ip, long lastLogin, double x, double y, double z,
String world, String email, String realName) { String world, String email) {
this.nickname = nickname; this.nickname = nickname;
this.hash = hash; this.hash = hash;
this.ip = ip; this.ip = ip;
@ -71,36 +67,33 @@ public class PlayerAuth {
this.salt = salt; this.salt = salt;
this.groupId = groupId; this.groupId = groupId;
this.email = email; this.email = email;
this.realName = realName;
} }
public PlayerAuth(String nickname, String hash, String salt, int groupId, public PlayerAuth(String nickname, String hash, String salt, int groupId,
String ip, long lastLogin, String realName) { String ip, long lastLogin) {
this.nickname = nickname; this.nickname = nickname;
this.hash = hash; this.hash = hash;
this.ip = ip; this.ip = ip;
this.lastLogin = lastLogin; this.lastLogin = lastLogin;
this.salt = salt; this.salt = salt;
this.groupId = groupId; this.groupId = groupId;
this.realName = realName;
} }
public PlayerAuth(String nickname, String hash, String salt, String ip, public PlayerAuth(String nickname, String hash, String salt, String ip,
long lastLogin, String realName) { long lastLogin) {
this.nickname = nickname; this.nickname = nickname;
this.hash = hash; this.hash = hash;
this.ip = ip; this.ip = ip;
this.lastLogin = lastLogin; this.lastLogin = lastLogin;
this.salt = salt; this.salt = salt;
this.realName = realName;
} }
public PlayerAuth(String nickname, String hash, String salt, String ip, public PlayerAuth(String nickname, String hash, String salt, String ip,
long lastLogin, double x, double y, double z, String world, long lastLogin, double x, double y, double z, String world,
String email, String realName) { String email) {
this.nickname = nickname; this.nickname = nickname;
this.hash = hash; this.hash = hash;
this.ip = ip; this.ip = ip;
@ -111,7 +104,7 @@ public class PlayerAuth {
this.world = world; this.world = world;
this.salt = salt; this.salt = salt;
this.email = email; this.email = email;
this.realName = realName;
} }
public PlayerAuth(String nickname, String ip, long lastLogin) { public PlayerAuth(String nickname, String ip, long lastLogin) {
@ -241,12 +234,13 @@ public class PlayerAuth {
@Override @Override
public String toString() { public String toString() {
String s = "Player : " + nickname + " ! IP : " + ip + " ! LastLogin : " + lastLogin + " ! LastPosition : " + x + "," + y + "," + z + "," + world + " ! Email : " + email + " ! Hash : " + hash + " ! Salt : " + salt + " ! RealName : " + realName; String s = "Player : " + nickname + " ! IP : " + ip + " ! LastLogin : " + lastLogin + " ! LastPosition : " + x + "," + y + "," + z + "," + world + " ! Email : " + email + " ! Hash : " + hash + " ! Salt : " + salt;
return s; return s;
} }
public String getRealname() { public void setName(String nickname) {
return realName; this.nickname = nickname;
} }
} }

View File

@ -12,24 +12,24 @@ public class PlayerCache {
} }
public void addPlayer(PlayerAuth auth) { public void addPlayer(PlayerAuth auth) {
cache.put(auth.getNickname().toLowerCase(), auth); cache.put(auth.getNickname(), auth);
} }
public void updatePlayer(PlayerAuth auth) { public void updatePlayer(PlayerAuth auth) {
cache.remove(auth.getNickname().toLowerCase()); cache.remove(auth.getNickname());
cache.put(auth.getNickname().toLowerCase(), auth); cache.put(auth.getNickname(), auth);
} }
public void removePlayer(String user) { public void removePlayer(String user) {
cache.remove(user.toLowerCase()); cache.remove(user);
} }
public boolean isAuthenticated(String user) { public boolean isAuthenticated(String user) {
return cache.containsKey(user.toLowerCase()); return cache.containsKey(user);
} }
public PlayerAuth getAuth(String user) { public PlayerAuth getAuth(String user) {
return cache.get(user.toLowerCase()); return cache.get(user);
} }
public static PlayerCache getInstance() { public static PlayerCache getInstance() {

View File

@ -29,7 +29,7 @@ public class LimboCache {
} }
public void addLimboPlayer(Player player) { public void addLimboPlayer(Player player) {
String name = player.getName().toLowerCase(); String name = player.getName();
Location loc = player.getLocation(); Location loc = player.getLocation();
GameMode gameMode = player.getGameMode(); GameMode gameMode = player.getGameMode();
ItemStack[] arm; ItemStack[] arm;
@ -91,11 +91,11 @@ public class LimboCache {
if (player.isDead()) { if (player.isDead()) {
loc = plugin.getSpawnLocation(player); loc = plugin.getSpawnLocation(player);
} }
cache.put(player.getName().toLowerCase(), new LimboPlayer(name, loc, inv, arm, gameMode, operator, playerGroup, flying)); cache.put(player.getName(), new LimboPlayer(name, loc, inv, arm, gameMode, operator, playerGroup, flying));
} }
public void addLimboPlayer(Player player, String group) { public void addLimboPlayer(Player player, String group) {
cache.put(player.getName().toLowerCase(), new LimboPlayer(player.getName().toLowerCase(), group)); cache.put(player.getName(), new LimboPlayer(player.getName(), group));
} }
public void deleteLimboPlayer(String name) { public void deleteLimboPlayer(String name) {
@ -118,8 +118,8 @@ public class LimboCache {
} }
public void updateLimboPlayer(Player player) { public void updateLimboPlayer(Player player) {
if (this.hasLimboPlayer(player.getName().toLowerCase())) { if (this.hasLimboPlayer(player.getName())) {
this.deleteLimboPlayer(player.getName().toLowerCase()); this.deleteLimboPlayer(player.getName());
} }
this.addLimboPlayer(player); this.addLimboPlayer(player);
} }

View File

@ -162,14 +162,14 @@ public class AdminCommand implements CommandExecutor {
return true; return true;
} }
try { try {
if (database.getAuth(args[1].toLowerCase()) != null) { if (database.getAuth(args[1]) != null) {
PlayerAuth player = database.getAuth(args[1].toLowerCase()); PlayerAuth player = database.getAuth(args[1]);
long lastLogin = player.getLastLogin(); long lastLogin = player.getLastLogin();
Date d = new Date(lastLogin); Date d = new Date(lastLogin);
final long diff = System.currentTimeMillis() - lastLogin; final long diff = System.currentTimeMillis() - lastLogin;
final String msg = (int) (diff / 86400000) + " days " + (int) (diff / 3600000 % 24) + " hours " + (int) (diff / 60000 % 60) + " mins " + (int) (diff / 1000 % 60) + " secs."; final String msg = (int) (diff / 86400000) + " days " + (int) (diff / 3600000 % 24) + " hours " + (int) (diff / 60000 % 60) + " mins " + (int) (diff / 1000 % 60) + " secs.";
String lastIP = player.getIp(); String lastIP = player.getIp();
sender.sendMessage("[AuthMe] " + args[1].toLowerCase() + " lastlogin : " + d.toString()); sender.sendMessage("[AuthMe] " + args[1] + " lastlogin : " + d.toString());
sender.sendMessage("[AuthMe] The player : " + player.getNickname() + " is unlogged since " + msg); sender.sendMessage("[AuthMe] The player : " + player.getNickname() + " is unlogged since " + msg);
sender.sendMessage("[AuthMe] LastPlayer IP : " + lastIP); sender.sendMessage("[AuthMe] LastPlayer IP : " + lastIP);
} else { } else {
@ -196,7 +196,7 @@ public class AdminCommand implements CommandExecutor {
PlayerAuth pAuth = null; PlayerAuth pAuth = null;
String message = "[AuthMe] "; String message = "[AuthMe] ";
try { try {
pAuth = database.getAuth(arguments[1].toLowerCase()); pAuth = database.getAuth(arguments[1]);
} catch (NullPointerException npe) { } catch (NullPointerException npe) {
fSender.sendMessage("[AuthMe] This player is unknown"); fSender.sendMessage("[AuthMe] This player is unknown");
return; return;
@ -274,13 +274,13 @@ public class AdminCommand implements CommandExecutor {
return true; return true;
} }
try { try {
String name = args[1].toLowerCase(); String name = args[1];
if (database.isAuthAvailable(name)) { if (database.isAuthAvailable(name)) {
m._(sender, "user_regged"); m._(sender, "user_regged");
return true; return true;
} }
String hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[2], name); String hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[2], name);
PlayerAuth auth = new PlayerAuth(name, hash, "198.18.0.1", 0L, "your@email.com", API.getPlayerRealName(name)); PlayerAuth auth = new PlayerAuth(name, hash, "198.18.0.1", 0L, "your@email.com");
if (PasswordSecurity.userSalt.containsKey(name) && PasswordSecurity.userSalt.get(name) != null) if (PasswordSecurity.userSalt.containsKey(name) && PasswordSecurity.userSalt.get(name) != null)
auth.setSalt(PasswordSecurity.userSalt.get(name)); auth.setSalt(PasswordSecurity.userSalt.get(name));
else auth.setSalt(""); else auth.setSalt("");
@ -300,7 +300,7 @@ public class AdminCommand implements CommandExecutor {
sender.sendMessage("Usage: /authme getemail playername"); sender.sendMessage("Usage: /authme getemail playername");
return true; return true;
} }
String playername = args[1].toLowerCase(); String playername = args[1];
PlayerAuth getAuth = database.getAuth(playername); PlayerAuth getAuth = database.getAuth(playername);
if (getAuth == null) { if (getAuth == null) {
m._(sender, "unknown_user"); m._(sender, "unknown_user");
@ -313,7 +313,7 @@ public class AdminCommand implements CommandExecutor {
sender.sendMessage("Usage: /authme chgemail playername email"); sender.sendMessage("Usage: /authme chgemail playername email");
return true; return true;
} }
String playername = args[1].toLowerCase(); String playername = args[1];
PlayerAuth getAuth = database.getAuth(playername); PlayerAuth getAuth = database.getAuth(playername);
if (getAuth == null) { if (getAuth == null) {
m._(sender, "unknown_user"); m._(sender, "unknown_user");
@ -356,7 +356,7 @@ public class AdminCommand implements CommandExecutor {
} else if (args[0].equalsIgnoreCase("purgebannedplayers")) { } else if (args[0].equalsIgnoreCase("purgebannedplayers")) {
List<String> bannedPlayers = new ArrayList<String>(); List<String> bannedPlayers = new ArrayList<String>();
for (OfflinePlayer off : plugin.getServer().getBannedPlayers()) { for (OfflinePlayer off : plugin.getServer().getBannedPlayers()) {
bannedPlayers.add(off.getName().toLowerCase()); bannedPlayers.add(off.getName());
} }
database.purgeBanned(bannedPlayers); database.purgeBanned(bannedPlayers);
if (Settings.purgeEssentialsFile && plugin.ess != null) if (Settings.purgeEssentialsFile && plugin.ess != null)
@ -400,7 +400,7 @@ public class AdminCommand implements CommandExecutor {
return true; return true;
} }
try { try {
String name = args[1].toLowerCase(); String name = args[1];
String hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[2], name); String hash = PasswordSecurity.getHash(Settings.getPasswordHash, args[2], name);
PlayerAuth auth = null; PlayerAuth auth = null;
if (PlayerCache.getInstance().isAuthenticated(name)) { if (PlayerCache.getInstance().isAuthenticated(name)) {
@ -433,7 +433,7 @@ public class AdminCommand implements CommandExecutor {
sender.sendMessage("Usage: /authme unregister playername"); sender.sendMessage("Usage: /authme unregister playername");
return true; return true;
} }
String name = args[1].toLowerCase(); String name = args[1];
if (!database.isAuthAvailable(name)) { if (!database.isAuthAvailable(name)) {
m._(sender, "user_unknown"); m._(sender, "user_unknown");
return true; return true;
@ -482,7 +482,7 @@ public class AdminCommand implements CommandExecutor {
return true; return true;
} }
try { try {
String name = args[1].toLowerCase(); String name = args[1];
PlayerAuth auth = database.getAuth(name); PlayerAuth auth = database.getAuth(name);
if (auth == null) { if (auth == null) {
sender.sendMessage("The player " + name + " is not registered "); sender.sendMessage("The player " + name + " is not registered ");

View File

@ -30,7 +30,7 @@ public class CaptchaCommand implements CommandExecutor {
} }
Player player = (Player) sender; Player player = (Player) sender;
String name = player.getName().toLowerCase(); String name = player.getName();
if (args.length == 0) { if (args.length == 0) {
m._(player, "usage_captcha"); m._(player, "usage_captcha");

View File

@ -42,7 +42,7 @@ public class ChangePasswordCommand implements CommandExecutor {
} }
Player player = (Player) sender; Player player = (Player) sender;
String name = player.getName().toLowerCase(); String name = player.getName();
if (!PlayerCache.getInstance().isAuthenticated(name)) { if (!PlayerCache.getInstance().isAuthenticated(name)) {
m._(player, "not_logged_in"); m._(player, "not_logged_in");
return true; return true;

View File

@ -46,7 +46,7 @@ public class EmailCommand implements CommandExecutor {
} }
Player player = (Player) sender; Player player = (Player) sender;
String name = player.getName().toLowerCase(); String name = player.getName();
if (args.length == 0) { if (args.length == 0) {
m._(player, "usage_email_add"); m._(player, "usage_email_add");

View File

@ -54,7 +54,7 @@ public class LogoutCommand implements CommandExecutor {
} }
Player player = (Player) sender; Player player = (Player) sender;
String name = player.getName().toLowerCase(); String name = player.getName();
if (!PlayerCache.getInstance().isAuthenticated(name)) { if (!PlayerCache.getInstance().isAuthenticated(name)) {
m._(player, "not_logged_in"); m._(player, "not_logged_in");

View File

@ -33,7 +33,7 @@ public class PasspartuCommand implements CommandExecutor {
return true; return true;
} }
if (PlayerCache.getInstance().isAuthenticated(sender.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(sender.getName())) {
return true; return true;
} }

View File

@ -55,7 +55,7 @@ public class UnregisterCommand implements CommandExecutor {
} }
Player player = (Player) sender; Player player = (Player) sender;
String name = player.getName().toLowerCase(); String name = player.getName();
if (!PlayerCache.getInstance().isAuthenticated(name)) { if (!PlayerCache.getInstance().isAuthenticated(name)) {
m._(player, "not_logged_in"); m._(player, "not_logged_in");
@ -84,7 +84,7 @@ public class UnregisterCommand implements CommandExecutor {
player.getInventory().setContents(new ItemStack[36]); player.getInventory().setContents(new ItemStack[36]);
player.getInventory().setArmorContents(new ItemStack[4]); player.getInventory().setArmorContents(new ItemStack[4]);
player.saveData(); player.saveData();
PlayerCache.getInstance().removePlayer(player.getName().toLowerCase()); PlayerCache.getInstance().removePlayer(player.getName());
if (!Settings.getRegisteredGroup.isEmpty()) if (!Settings.getRegisteredGroup.isEmpty())
Utils.getInstance().setGroup(player, groupType.UNREGISTERED); Utils.getInstance().setGroup(player, groupType.UNREGISTERED);
LimboCache.getInstance().addLimboPlayer(player); LimboCache.getInstance().addLimboPlayer(player);
@ -106,7 +106,7 @@ public class UnregisterCommand implements CommandExecutor {
if (!Settings.unRegisteredGroup.isEmpty()) { if (!Settings.unRegisteredGroup.isEmpty()) {
Utils.getInstance().setGroup(player, Utils.groupType.UNREGISTERED); Utils.getInstance().setGroup(player, Utils.groupType.UNREGISTERED);
} }
PlayerCache.getInstance().removePlayer(player.getName().toLowerCase()); PlayerCache.getInstance().removePlayer(player.getName());
// check if Player cache File Exist and delete it, preventing // check if Player cache File Exist and delete it, preventing
// duplication of items // duplication of items
if (playerCache.doesCacheExist(player)) { if (playerCache.doesCacheExist(player)) {

View File

@ -57,7 +57,7 @@ public class CrazyLoginConverter implements Converter {
continue; continue;
if (args[0].equalsIgnoreCase("name")) if (args[0].equalsIgnoreCase("name"))
continue; continue;
String player = args[0].toLowerCase(); String player = args[0];
String psw = args[1]; String psw = args[1];
try { try {
if (player != null && psw != null) { if (player != null && psw != null) {

View File

@ -31,7 +31,7 @@ public class RoyalAuthConverter implements Converter {
if (!file.exists()) if (!file.exists())
continue; continue;
RoyalAuthYamlReader ra = new RoyalAuthYamlReader(file); RoyalAuthYamlReader ra = new RoyalAuthYamlReader(file);
PlayerAuth auth = new PlayerAuth(name, ra.getHash(), "127.0.0.1", ra.getLastLogin(), "your@email.com", o.getName()); PlayerAuth auth = new PlayerAuth(o.getName(), ra.getHash(), "127.0.0.1", ra.getLastLogin(), "your@email.com");
data.saveAuth(auth); data.saveAuth(auth);
} catch (Exception e) { } catch (Exception e) {
ConsoleLogger.showError("Error while trying to import " + o.getName() + " RoyalAuth datas"); ConsoleLogger.showError("Error while trying to import " + o.getName() + " RoyalAuth datas");

View File

@ -51,7 +51,7 @@ public class newxAuthToFlat {
String pl = getIdPlayer(id); String pl = getIdPlayer(id);
String psw = getPassword(id); String psw = getPassword(id);
if (psw != null && !psw.isEmpty() && pl != null) { if (psw != null && !psw.isEmpty() && pl != null) {
PlayerAuth auth = new PlayerAuth(pl, psw, "198.18.0.1", 0, "your@email.com", API.getPlayerRealName(pl)); PlayerAuth auth = new PlayerAuth(pl, psw, "198.18.0.1", 0, "your@email.com");
database.saveAuth(auth); database.saveAuth(auth);
} }
} }
@ -74,7 +74,7 @@ public class newxAuthToFlat {
rs = ps.executeQuery(); rs = ps.executeQuery();
if (!rs.next()) if (!rs.next())
return null; return null;
realPass = rs.getString("playername").toLowerCase(); realPass = rs.getString("playername");
} catch (SQLException e) { } catch (SQLException e) {
xAuthLog.severe("Failed to retrieve name for account: " + id, e); xAuthLog.severe("Failed to retrieve name for account: " + id, e);
return null; return null;

View File

@ -55,7 +55,7 @@ public class oldxAuthToFlat {
String pl = getIdPlayer(id); String pl = getIdPlayer(id);
String psw = getPassword(id); String psw = getPassword(id);
if (psw != null && !psw.isEmpty() && pl != null) { if (psw != null && !psw.isEmpty() && pl != null) {
PlayerAuth auth = new PlayerAuth(pl, psw, "198.18.0.1", 0, "your@email.com", API.getPlayerRealName(pl)); PlayerAuth auth = new PlayerAuth(pl, psw, "198.18.0.1", 0, "your@email.com");
database.saveAuth(auth); database.saveAuth(auth);
} }
} }
@ -78,7 +78,7 @@ public class oldxAuthToFlat {
rs = ps.executeQuery(); rs = ps.executeQuery();
if (!rs.next()) if (!rs.next())
return null; return null;
realPass = rs.getString("playername").toLowerCase(); realPass = rs.getString("playername");
} catch (SQLException e) { } catch (SQLException e) {
xAuthLog.severe("Failed to retrieve name for account: " + id, e); xAuthLog.severe("Failed to retrieve name for account: " + id, e);
return null; return null;

View File

@ -48,9 +48,9 @@ public class vAuthFileReader {
} }
if (pname == null) if (pname == null)
continue; continue;
auth = new PlayerAuth(pname.toLowerCase(), password, "127.0.0.1", System.currentTimeMillis(), "your@email.com", pname); auth = new PlayerAuth(pname, password, "127.0.0.1", System.currentTimeMillis(), "your@email.com");
} else { } else {
auth = new PlayerAuth(name, password, "127.0.0.1", System.currentTimeMillis(), "your@email.com", API.getPlayerRealName(name)); auth = new PlayerAuth(name, password, "127.0.0.1", System.currentTimeMillis(), "your@email.com");
} }
if (auth != null) if (auth != null)
database.saveAuth(auth); database.saveAuth(auth);

View File

@ -22,19 +22,19 @@ public class CacheDataSource implements DataSource {
@Override @Override
public synchronized boolean isAuthAvailable(String user) { public synchronized boolean isAuthAvailable(String user) {
if (cache.containsKey(user.toLowerCase())) if (cache.containsKey(user))
return true; return true;
return source.isAuthAvailable(user.toLowerCase()); return source.isAuthAvailable(user);
} }
@Override @Override
public synchronized PlayerAuth getAuth(String user) { public synchronized PlayerAuth getAuth(String user) {
if (cache.containsKey(user.toLowerCase())) { if (cache.containsKey(user)) {
return cache.get(user.toLowerCase()); return cache.get(user);
} else { } else {
PlayerAuth auth = source.getAuth(user.toLowerCase()); PlayerAuth auth = source.getAuth(user);
if (auth != null) if (auth != null)
cache.put(user.toLowerCase(), auth); cache.put(user, auth);
return auth; return auth;
} }
} }
@ -51,7 +51,7 @@ public class CacheDataSource implements DataSource {
@Override @Override
public synchronized boolean updatePassword(PlayerAuth auth) { public synchronized boolean updatePassword(PlayerAuth auth) {
if (source.updatePassword(auth)) { if (source.updatePassword(auth)) {
if (cache.containsKey(auth.getNickname().toLowerCase())) if (cache.containsKey(auth.getNickname()))
cache.get(auth.getNickname()).setHash(auth.getHash()); cache.get(auth.getNickname()).setHash(auth.getHash());
return true; return true;
} }
@ -61,7 +61,7 @@ public class CacheDataSource implements DataSource {
@Override @Override
public boolean updateSession(PlayerAuth auth) { public boolean updateSession(PlayerAuth auth) {
if (source.updateSession(auth)) { if (source.updateSession(auth)) {
if (cache.containsKey(auth.getNickname().toLowerCase())) { if (cache.containsKey(auth.getNickname())) {
cache.get(auth.getNickname()).setIp(auth.getIp()); cache.get(auth.getNickname()).setIp(auth.getIp());
cache.get(auth.getNickname()).setLastLogin(auth.getLastLogin()); cache.get(auth.getNickname()).setLastLogin(auth.getLastLogin());
} }
@ -73,7 +73,7 @@ public class CacheDataSource implements DataSource {
@Override @Override
public boolean updateQuitLoc(PlayerAuth auth) { public boolean updateQuitLoc(PlayerAuth auth) {
if (source.updateQuitLoc(auth)) { if (source.updateQuitLoc(auth)) {
if (cache.containsKey(auth.getNickname().toLowerCase())) { if (cache.containsKey(auth.getNickname())) {
cache.get(auth.getNickname()).setQuitLocX(auth.getQuitLocX()); cache.get(auth.getNickname()).setQuitLocX(auth.getQuitLocX());
cache.get(auth.getNickname()).setQuitLocY(auth.getQuitLocY()); cache.get(auth.getNickname()).setQuitLocY(auth.getQuitLocY());
cache.get(auth.getNickname()).setQuitLocZ(auth.getQuitLocZ()); cache.get(auth.getNickname()).setQuitLocZ(auth.getQuitLocZ());
@ -117,8 +117,8 @@ public class CacheDataSource implements DataSource {
@Override @Override
public synchronized boolean removeAuth(String user) { public synchronized boolean removeAuth(String user) {
if (source.removeAuth(user.toLowerCase())) { if (source.removeAuth(user)) {
cache.remove(user.toLowerCase()); cache.remove(user);
return true; return true;
} }
return false; return false;
@ -134,7 +134,7 @@ public class CacheDataSource implements DataSource {
cache.clear(); cache.clear();
source.reload(); source.reload();
for (Player player : plugin.getServer().getOnlinePlayers()) { for (Player player : plugin.getServer().getOnlinePlayers()) {
String user = player.getName().toLowerCase(); String user = player.getName();
if (PlayerCache.getInstance().isAuthenticated(user)) { if (PlayerCache.getInstance().isAuthenticated(user)) {
try { try {
PlayerAuth auth = source.getAuth(user); PlayerAuth auth = source.getAuth(user);
@ -149,7 +149,7 @@ public class CacheDataSource implements DataSource {
@Override @Override
public synchronized boolean updateEmail(PlayerAuth auth) { public synchronized boolean updateEmail(PlayerAuth auth) {
if (source.updateEmail(auth)) { if (source.updateEmail(auth)) {
if (cache.containsKey(auth.getNickname().toLowerCase())) if (cache.containsKey(auth.getNickname()))
cache.get(auth.getNickname()).setEmail(auth.getEmail()); cache.get(auth.getNickname()).setEmail(auth.getEmail());
return true; return true;
} }
@ -159,7 +159,7 @@ public class CacheDataSource implements DataSource {
@Override @Override
public synchronized boolean updateSalt(PlayerAuth auth) { public synchronized boolean updateSalt(PlayerAuth auth) {
if (source.updateSalt(auth)) { if (source.updateSalt(auth)) {
if (cache.containsKey(auth.getNickname().toLowerCase())) if (cache.containsKey(auth.getNickname()))
cache.get(auth.getNickname()).setSalt(auth.getSalt()); cache.get(auth.getNickname()).setSalt(auth.getSalt());
return true; return true;
} }
@ -220,4 +220,13 @@ public class CacheDataSource implements DataSource {
public int getAccountsRegistered() { public int getAccountsRegistered() {
return source.getAccountsRegistered(); return source.getAccountsRegistered();
} }
@Override
public void updateName(String oldone, String newone) {
if (cache.containsKey(oldone)) {
cache.put(newone, cache.get(oldone));
cache.remove(oldone);
}
source.updateName(oldone, newone);
}
} }

View File

@ -61,4 +61,6 @@ public interface DataSource {
int getAccountsRegistered(); int getAccountsRegistered();
void updateName(String oldone, String newone);
} }

View File

@ -115,23 +115,23 @@ public class FlatFileThread extends Thread implements DataSource {
if (args[0].equals(auth.getNickname())) { if (args[0].equals(auth.getNickname())) {
switch (args.length) { switch (args.length) {
case 4: { case 4: {
newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), 0, 0, 0, "world", "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), 0, 0, 0, "world", "your@email.com");
break; break;
} }
case 7: { case 7: {
newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), "world", "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), "world", "your@email.com");
break; break;
} }
case 8: { case 8: {
newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], "your@email.com");
break; break;
} }
case 9: { case 9: {
newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], args[8], API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], args[8]);
break; break;
} }
default: { default: {
newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], 0, 0, 0, 0, "world", "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], auth.getHash(), args[2], 0, 0, 0, 0, "world", "your@email.com");
break; break;
} }
} }
@ -172,23 +172,23 @@ public class FlatFileThread extends Thread implements DataSource {
if (args[0].equals(auth.getNickname())) { if (args[0].equals(auth.getNickname())) {
switch (args.length) { switch (args.length) {
case 4: { case 4: {
newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), 0, 0, 0, "world", "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), 0, 0, 0, "world", "your@email.com");
break; break;
} }
case 7: { case 7: {
newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), "world", "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), "world", "your@email.com");
break; break;
} }
case 8: { case 8: {
newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], "your@email.com");
break; break;
} }
case 9: { case 9: {
newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], args[8], API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], args[8]);
break; break;
} }
default: { default: {
newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), 0, 0, 0, "world", "your@email.com", API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], auth.getIp(), auth.getLastLogin(), 0, 0, 0, "world", "your@email.com");
break; break;
} }
} }
@ -227,7 +227,7 @@ public class FlatFileThread extends Thread implements DataSource {
while ((line = br.readLine()) != null) { while ((line = br.readLine()) != null) {
String[] args = line.split(":"); String[] args = line.split(":");
if (args[0].equals(auth.getNickname())) { if (args[0].equals(auth.getNickname())) {
newAuth = new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), auth.getQuitLocX(), auth.getQuitLocY(), auth.getQuitLocZ(), auth.getWorld(), auth.getEmail(), API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), auth.getQuitLocX(), auth.getQuitLocY(), auth.getQuitLocZ(), auth.getWorld(), auth.getEmail());
break; break;
} }
} }
@ -427,17 +427,17 @@ public class FlatFileThread extends Thread implements DataSource {
if (args[0].equals(user)) { if (args[0].equals(user)) {
switch (args.length) { switch (args.length) {
case 2: case 2:
return new PlayerAuth(args[0], args[1], "198.18.0.1", 0, "your@email.com", API.getPlayerRealName(args[0])); return new PlayerAuth(args[0], args[1], "198.18.0.1", 0, "your@email.com");
case 3: case 3:
return new PlayerAuth(args[0], args[1], args[2], 0, "your@email.com", API.getPlayerRealName(args[0])); return new PlayerAuth(args[0], args[1], args[2], 0, "your@email.com");
case 4: case 4:
return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), "your@email.com", API.getPlayerRealName(args[0])); return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), "your@email.com");
case 7: case 7:
return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), "unavailableworld", "your@email.com", API.getPlayerRealName(args[0])); return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), "unavailableworld", "your@email.com");
case 8: case 8:
return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], "your@email.com", API.getPlayerRealName(args[0])); return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], "your@email.com");
case 9: case 9:
return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], args[8], API.getPlayerRealName(args[0])); return new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], args[8]);
} }
} }
} }
@ -479,7 +479,7 @@ public class FlatFileThread extends Thread implements DataSource {
while ((line = br.readLine()) != null) { while ((line = br.readLine()) != null) {
String[] args = line.split(":"); String[] args = line.split(":");
if (args[0].equals(auth.getNickname())) { if (args[0].equals(auth.getNickname())) {
newAuth = new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], auth.getEmail(), API.getPlayerRealName(args[0])); newAuth = new PlayerAuth(args[0], args[1], args[2], Long.parseLong(args[3]), Double.parseDouble(args[4]), Double.parseDouble(args[5]), Double.parseDouble(args[6]), args[7], auth.getEmail());
break; break;
} }
} }
@ -649,7 +649,7 @@ public class FlatFileThread extends Thread implements DataSource {
@Override @Override
public boolean isLogged(String user) { public boolean isLogged(String user) {
return PlayersLogs.getInstance().players.contains(user.toLowerCase()); return PlayersLogs.getInstance().players.contains(user);
} }
@Override @Override
@ -692,4 +692,12 @@ public class FlatFileThread extends Thread implements DataSource {
} }
return result; return result;
} }
@Override
public void updateName(String oldone, String newone) {
PlayerAuth auth = this.getAuth(oldone);
auth.setName(newone);
this.saveAuth(auth);
this.removeAuth(oldone);
}
} }

View File

@ -205,14 +205,14 @@ public class MySQLThread extends Thread implements DataSource {
if (rs.next()) { if (rs.next()) {
id = rs.getInt(columnID); id = rs.getInt(columnID);
if (rs.getString(columnIp).isEmpty() && rs.getString(columnIp) != null) { if (rs.getString(columnIp).isEmpty() && rs.getString(columnIp) != null) {
pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), "198.18.0.1", rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), "198.18.0.1", rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
} else { } else {
if (!columnSalt.isEmpty()) { if (!columnSalt.isEmpty()) {
if (!columnGroup.isEmpty()) if (!columnGroup.isEmpty())
pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getInt(columnGroup), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getInt(columnGroup), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
else pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); else pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
} else { } else {
pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); pAuth = new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
} }
} }
if (Settings.getPasswordHash == HashAlgorithm.XENFORO) { if (Settings.getPasswordHash == HashAlgorithm.XENFORO) {
@ -268,7 +268,7 @@ public class MySQLThread extends Thread implements DataSource {
if (!columnOthers.isEmpty()) { if (!columnOthers.isEmpty()) {
for (String column : columnOthers) { for (String column : columnOthers) {
pst = con.prepareStatement("UPDATE " + tableName + " SET " + column + "=? WHERE " + columnName + "=?;"); pst = con.prepareStatement("UPDATE " + tableName + " SET " + column + "=? WHERE " + columnName + "=?;");
pst.setString(1, auth.getRealname()); pst.setString(1, auth.getNickname());
pst.setString(2, auth.getNickname()); pst.setString(2, auth.getNickname());
pst.executeUpdate(); pst.executeUpdate();
} }
@ -1018,4 +1018,27 @@ public class MySQLThread extends Thread implements DataSource {
return result; return result;
} }
@Override
public void updateName(String oldone, String newone) {
Connection con = null;
PreparedStatement pst = null;
try {
con = makeSureConnectionIsReady();
pst = con.prepareStatement("UPDATE " + tableName + " SET " + columnName + "=? WHERE " + columnName + "=?;");
pst.setString(1, newone);
pst.setString(2, oldone);
pst.executeUpdate();
} catch (SQLException ex) {
ConsoleLogger.showError(ex.getMessage());
return;
} catch (TimeoutException ex) {
ConsoleLogger.showError(ex.getMessage());
return;
} finally {
close(pst);
close(con);
}
return;
}
} }

View File

@ -155,12 +155,12 @@ public class SQLiteThread extends Thread implements DataSource {
rs = pst.executeQuery(); rs = pst.executeQuery();
if (rs.next()) { if (rs.next()) {
if (rs.getString(columnIp).isEmpty()) { if (rs.getString(columnIp).isEmpty()) {
return new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), "198.18.0.1", rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); return new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), "198.18.0.1", rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
} else { } else {
if (!columnSalt.isEmpty()) { if (!columnSalt.isEmpty()) {
return new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getInt(columnGroup), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); return new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnSalt), rs.getInt(columnGroup), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
} else { } else {
return new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail), API.getPlayerRealName(rs.getString(columnName))); return new PlayerAuth(rs.getString(columnName), rs.getString(columnPassword), rs.getString(columnIp), rs.getLong(columnLastLogin), rs.getDouble(lastlocX), rs.getDouble(lastlocY), rs.getDouble(lastlocZ), rs.getString(lastlocWorld), rs.getString(columnEmail));
} }
} }
} else { } else {
@ -509,7 +509,7 @@ public class SQLiteThread extends Thread implements DataSource {
@Override @Override
public boolean isLogged(String user) { public boolean isLogged(String user) {
return PlayersLogs.getInstance().players.contains(user.toLowerCase()); return PlayersLogs.getInstance().players.contains(user);
} }
@Override @Override
@ -549,4 +549,24 @@ public class SQLiteThread extends Thread implements DataSource {
} }
return result; return result;
} }
@Override
public void updateName(String oldone, String newone) {
PreparedStatement pst = null;
try {
pst = con.prepareStatement("UPDATE " + tableName + " SET " + columnName + "=? WHERE " + columnName + "=?;");
pst.setString(1, newone);
pst.setString(2, oldone);
pst.executeUpdate();
} catch (SQLException ex) {
ConsoleLogger.showError(ex.getMessage());
return;
} catch (TimeoutException ex) {
ConsoleLogger.showError(ex.getMessage());
return;
} finally {
close(pst);
}
return;
}
} }

View File

@ -29,7 +29,7 @@ public class AuthMeBlockListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
@ -54,13 +54,13 @@ public class AuthMeBlockListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
} }
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }

View File

@ -31,7 +31,7 @@ public class AuthMeChestShopListener implements Listener {
} }
Player player = event.getClient(); Player player = event.getClient();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;

View File

@ -47,7 +47,7 @@ public class AuthMeEntityListener implements Listener {
return; return;
Player player = (Player) entity; Player player = (Player) entity;
String name = player.getName().toLowerCase(); String name = player.getName();
if (CombatTagComunicator.isNPC(player)) if (CombatTagComunicator.isNPC(player))
return; return;
@ -81,7 +81,7 @@ public class AuthMeEntityListener implements Listener {
return; return;
Player player = (Player) entity; Player player = (Player) entity;
String name = player.getName().toLowerCase(); String name = player.getName();
if (PlayerCache.getInstance().isAuthenticated(name)) { if (PlayerCache.getInstance().isAuthenticated(name)) {
return; return;
@ -111,7 +111,7 @@ public class AuthMeEntityListener implements Listener {
return; return;
Player player = (Player) entity; Player player = (Player) entity;
String name = player.getName().toLowerCase(); String name = player.getName();
if (PlayerCache.getInstance().isAuthenticated(name)) { if (PlayerCache.getInstance().isAuthenticated(name)) {
return; return;
@ -142,7 +142,7 @@ public class AuthMeEntityListener implements Listener {
return; return;
Player player = (Player) entity; Player player = (Player) entity;
String name = player.getName().toLowerCase(); String name = player.getName();
if (PlayerCache.getInstance().isAuthenticated(name)) { if (PlayerCache.getInstance().isAuthenticated(name)) {
return; return;
@ -168,7 +168,7 @@ public class AuthMeEntityListener implements Listener {
} }
Player player = (Player) event.getEntity(); Player player = (Player) event.getEntity();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
return; return;
@ -177,7 +177,7 @@ public class AuthMeEntityListener implements Listener {
if (instance.citizens.isNPC(player, instance)) if (instance.citizens.isNPC(player, instance))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -200,7 +200,7 @@ public class AuthMeEntityListener implements Listener {
} }
Player player = (Player) event.getEntity(); Player player = (Player) event.getEntity();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
return; return;
@ -209,7 +209,7 @@ public class AuthMeEntityListener implements Listener {
if (instance.citizens.isNPC(player, instance)) if (instance.citizens.isNPC(player, instance))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }

View File

@ -86,7 +86,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -121,7 +121,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -158,7 +158,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -195,7 +195,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -232,7 +232,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -269,7 +269,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -306,7 +306,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) if (Utils.getInstance().isUnrestricted(player))
return; return;
@ -342,7 +342,7 @@ public class AuthMePlayerListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
return; return;
@ -382,7 +382,12 @@ public class AuthMePlayerListener implements Listener {
public void onPlayerLogin(PlayerLoginEvent event) { public void onPlayerLogin(PlayerLoginEvent event) {
final Player player = event.getPlayer(); final Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String lowname = player.getName().toLowerCase();
final String name = player.getName();
if (!lowname.equals(name))
if (data.isAuthAvailable(lowname))
data.updateName(lowname, name);
if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
return; return;
@ -419,7 +424,7 @@ public class AuthMePlayerListener implements Listener {
if (!Settings.isSessionsEnabled) { if (!Settings.isSessionsEnabled) {
} else if (PlayerCache.getInstance().isAuthenticated(name)) { } else if (PlayerCache.getInstance().isAuthenticated(name)) {
if (!Settings.sessionExpireOnIpChange) if (!Settings.sessionExpireOnIpChange)
if (LimboCache.getInstance().hasLimboPlayer(player.getName().toLowerCase())) { if (LimboCache.getInstance().hasLimboPlayer(player.getName())) {
LimboCache.getInstance().deleteLimboPlayer(name); LimboCache.getInstance().deleteLimboPlayer(name);
} }
} }
@ -427,11 +432,11 @@ public class AuthMePlayerListener implements Listener {
// Check if forceSingleSession is set to true, so kick player that has // Check if forceSingleSession is set to true, so kick player that has
// joined with same nick of online player // joined with same nick of online player
if (player.isOnline() && Settings.isForceSingleSessionEnabled) { if (player.isOnline() && Settings.isForceSingleSessionEnabled) {
LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName().toLowerCase()); LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName());
event.disallow(PlayerLoginEvent.Result.KICK_OTHER, m._("same_nick")[0]); event.disallow(PlayerLoginEvent.Result.KICK_OTHER, m._("same_nick")[0]);
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
utils.addNormal(player, limbo.getGroup()); utils.addNormal(player, limbo.getGroup());
LimboCache.getInstance().deleteLimboPlayer(player.getName().toLowerCase()); LimboCache.getInstance().deleteLimboPlayer(player.getName());
} }
return; return;
} }
@ -530,12 +535,12 @@ public class AuthMePlayerListener implements Listener {
}, Settings.antiBotDuration * 1200); }, Settings.antiBotDuration * 1200);
return; return;
} }
antibot.put(event.getPlayer().getName().toLowerCase(), event); antibot.put(event.getPlayer().getName(), event);
Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
@Override @Override
public void run() { public void run() {
antibot.remove(event.getPlayer().getName().toLowerCase()); antibot.remove(event.getPlayer().getName());
} }
}, 300); }, 300);
} }
@ -546,7 +551,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
final String name = player.getName().toLowerCase(); final String name = player.getName();
Location spawnLoc = plugin.getSpawnLocation(player); Location spawnLoc = plugin.getSpawnLocation(player);
gm = player.getGameMode(); gm = player.getGameMode();
gameMode.put(name, gm); gameMode.put(name, gm);
@ -675,7 +680,7 @@ public class AuthMePlayerListener implements Listener {
} }
if (Settings.protectInventoryBeforeLogInEnabled) { if (Settings.protectInventoryBeforeLogInEnabled) {
try { try {
LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName().toLowerCase()); LimboPlayer limbo = LimboCache.getInstance().getLimboPlayer(player.getName());
ProtectInventoryEvent ev = new ProtectInventoryEvent(player, limbo.getInventory(), limbo.getArmour()); ProtectInventoryEvent ev = new ProtectInventoryEvent(player, limbo.getInventory(), limbo.getArmour());
plugin.getServer().getPluginManager().callEvent(ev); plugin.getServer().getPluginManager().callEvent(ev);
if (ev.isCancelled()) { if (ev.isCancelled()) {
@ -755,7 +760,7 @@ public class AuthMePlayerListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
Location loc = player.getLocation(); Location loc = player.getLocation();
if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
@ -833,7 +838,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
} }
String name = player.getName().toLowerCase(); String name = player.getName();
String ip = plugin.getIP(player); String ip = plugin.getIP(player);
if ((PlayerCache.getInstance().isAuthenticated(name)) && (!player.isDead())) { if ((PlayerCache.getInstance().isAuthenticated(name)) && (!player.isDead())) {
@ -906,7 +911,7 @@ public class AuthMePlayerListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
@ -915,7 +920,7 @@ public class AuthMePlayerListener implements Listener {
if (plugin.getCitizensCommunicator().isNPC(player, plugin)) if (plugin.getCitizensCommunicator().isNPC(player, plugin))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -934,7 +939,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
@ -943,7 +948,7 @@ public class AuthMePlayerListener implements Listener {
if (plugin.getCitizensCommunicator().isNPC(player, plugin)) if (plugin.getCitizensCommunicator().isNPC(player, plugin))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -963,7 +968,7 @@ public class AuthMePlayerListener implements Listener {
if (event.isCancelled() || event.getPlayer() == null) if (event.isCancelled() || event.getPlayer() == null)
return; return;
Player player = (Player) event.getPlayer(); Player player = (Player) event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
@ -972,7 +977,7 @@ public class AuthMePlayerListener implements Listener {
if (plugin.getCitizensCommunicator().isNPC(player, plugin)) if (plugin.getCitizensCommunicator().isNPC(player, plugin))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -992,7 +997,7 @@ public class AuthMePlayerListener implements Listener {
if (!(event.getWhoClicked() instanceof Player)) if (!(event.getWhoClicked() instanceof Player))
return; return;
Player player = (Player) event.getWhoClicked(); Player player = (Player) event.getWhoClicked();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
@ -1001,7 +1006,7 @@ public class AuthMePlayerListener implements Listener {
if (plugin.getCitizensCommunicator().isNPC(player, plugin)) if (plugin.getCitizensCommunicator().isNPC(player, plugin))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -1021,13 +1026,13 @@ public class AuthMePlayerListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (plugin.getCitizensCommunicator().isNPC(player, plugin) || Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
return; return;
} }
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -1045,7 +1050,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) { if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) {
return; return;
@ -1054,7 +1059,7 @@ public class AuthMePlayerListener implements Listener {
if (plugin.getCitizensCommunicator().isNPC(player, plugin)) if (plugin.getCitizensCommunicator().isNPC(player, plugin))
return; return;
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -1072,13 +1077,13 @@ public class AuthMePlayerListener implements Listener {
return; return;
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
} }
if (PlayerCache.getInstance().isAuthenticated(player.getName().toLowerCase())) { if (PlayerCache.getInstance().isAuthenticated(player.getName())) {
return; return;
} }
@ -1096,7 +1101,7 @@ public class AuthMePlayerListener implements Listener {
return; return;
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player)) { if (Utils.getInstance().isUnrestricted(player)) {
return; return;
} }
@ -1118,7 +1123,7 @@ public class AuthMePlayerListener implements Listener {
} }
Player player = event.getPlayer(); Player player = event.getPlayer();
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player))
return; return;
@ -1158,7 +1163,7 @@ public class AuthMePlayerListener implements Listener {
if (plugin.authmePermissible(player, "authme.bypassforcesurvival")) if (plugin.authmePermissible(player, "authme.bypassforcesurvival"))
return; return;
String name = player.getName().toLowerCase(); String name = player.getName();
if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player)) if (Utils.getInstance().isUnrestricted(player) || CombatTagComunicator.isNPC(player))
return; return;

View File

@ -20,7 +20,7 @@ public class AuthMeSpoutListener implements Listener {
@EventHandler @EventHandler
public void onSpoutCraftEnable(final SpoutCraftEnableEvent event) { public void onSpoutCraftEnable(final SpoutCraftEnableEvent event) {
if (SpoutCfg.getInstance().getBoolean("LoginScreen.enabled")) { if (SpoutCfg.getInstance().getBoolean("LoginScreen.enabled")) {
if (data.isAuthAvailable(event.getPlayer().getName().toLowerCase()) && !PlayerCache.getInstance().isAuthenticated(event.getPlayer().getName().toLowerCase())) { if (data.isAuthAvailable(event.getPlayer().getName()) && !PlayerCache.getInstance().isAuthenticated(event.getPlayer().getName())) {
event.getPlayer().getMainScreen().attachPopupScreen(new LoginScreen(event.getPlayer())); event.getPlayer().getMainScreen().attachPopupScreen(new LoginScreen(event.getPlayer()));
} }
} }

View File

@ -28,7 +28,7 @@ public class BungeeCordMessage implements PluginMessageListener {
String subchannel = in.readUTF(); String subchannel = in.readUTF();
if (subchannel.equals("IP")) { // We need only the IP channel if (subchannel.equals("IP")) { // We need only the IP channel
String ip = in.readUTF(); String ip = in.readUTF();
plugin.realIp.put(player.getName().toLowerCase(), ip); plugin.realIp.put(player.getName(), ip);
// Put the IP (only the ip not the port) in the hashmap // Put the IP (only the ip not the port) in the hashmap
} }
} catch (IOException ex) { } catch (IOException ex) {

View File

@ -26,7 +26,6 @@ public class AsyncronousLogin {
protected Player player; protected Player player;
protected String name; protected String name;
protected String password; protected String password;
protected String realName;
protected boolean forceLogin; protected boolean forceLogin;
private AuthMe plugin; private AuthMe plugin;
private DataSource database; private DataSource database;
@ -37,8 +36,7 @@ public class AsyncronousLogin {
AuthMe plugin, DataSource data) { AuthMe plugin, DataSource data) {
this.player = player; this.player = player;
this.password = password; this.password = password;
name = player.getName().toLowerCase(); name = player.getName();
realName = player.getName();
this.forceLogin = forceLogin; this.forceLogin = forceLogin;
this.plugin = plugin; this.plugin = plugin;
this.database = data; this.database = data;
@ -99,7 +97,7 @@ public class AsyncronousLogin {
return null; return null;
} }
if (Settings.getMaxLoginPerIp > 0 && !plugin.authmePermissible(player, "authme.allow2accounts") && !getIP().equalsIgnoreCase("127.0.0.1") && !getIP().equalsIgnoreCase("localhost")) { if (Settings.getMaxLoginPerIp > 0 && !plugin.authmePermissible(player, "authme.allow2accounts") && !getIP().equalsIgnoreCase("127.0.0.1") && !getIP().equalsIgnoreCase("localhost")) {
if (plugin.isLoggedIp(realName, getIP())) { if (plugin.isLoggedIp(name, getIP())) {
m._(player, "logged_in"); m._(player, "logged_in");
return null; return null;
} }
@ -126,14 +124,14 @@ public class AsyncronousLogin {
boolean passwordVerified = true; boolean passwordVerified = true;
if (!forceLogin) if (!forceLogin)
try { try {
passwordVerified = PasswordSecurity.comparePasswordWithHash(password, hash, realName); passwordVerified = PasswordSecurity.comparePasswordWithHash(password, hash, name);
} catch (Exception ex) { } catch (Exception ex) {
ConsoleLogger.showError(ex.getMessage()); ConsoleLogger.showError(ex.getMessage());
m._(player, "error"); m._(player, "error");
return; return;
} }
if (passwordVerified && player.isOnline()) { if (passwordVerified && player.isOnline()) {
PlayerAuth auth = new PlayerAuth(name, hash, getIP(), new Date().getTime(), email, realName); PlayerAuth auth = new PlayerAuth(name, hash, getIP(), new Date().getTime(), email);
database.updateSession(auth); database.updateSession(auth);
if (Settings.useCaptcha) { if (Settings.useCaptcha) {

View File

@ -40,7 +40,7 @@ public class ProcessSyncronousPlayerLogin implements Runnable {
this.database = data; this.database = data;
this.pm = plugin.getServer().getPluginManager(); this.pm = plugin.getServer().getPluginManager();
this.player = player; this.player = player;
this.name = player.getName().toLowerCase(); this.name = player.getName();
this.limbo = LimboCache.getInstance().getLimboPlayer(name); this.limbo = LimboCache.getInstance().getLimboPlayer(name);
this.auth = database.getAuth(name); this.auth = database.getAuth(name);
this.playerCache = new FileCache(plugin); this.playerCache = new FileCache(plugin);

View File

@ -19,7 +19,6 @@ public class AsyncronousRegister {
protected Player player; protected Player player;
protected String name; protected String name;
protected String password; protected String password;
protected String realName;
protected String email = ""; protected String email = "";
protected boolean allowRegister; protected boolean allowRegister;
private AuthMe plugin; private AuthMe plugin;
@ -30,8 +29,7 @@ public class AsyncronousRegister {
AuthMe plugin, DataSource data) { AuthMe plugin, DataSource data) {
this.player = player; this.player = player;
this.password = password; this.password = password;
name = player.getName().toLowerCase(); name = player.getName();
realName = player.getName();
this.email = email; this.email = email;
this.plugin = plugin; this.plugin = plugin;
this.database = data; this.database = data;
@ -59,7 +57,7 @@ public class AsyncronousRegister {
allowRegister = false; allowRegister = false;
} }
if (database.isAuthAvailable(player.getName().toLowerCase())) { if (database.isAuthAvailable(player.getName())) {
m._(player, "user_regged"); m._(player, "user_regged");
if (plugin.pllog.getStringList("players").contains(player.getName())) { if (plugin.pllog.getStringList("players").contains(player.getName())) {
plugin.pllog.getStringList("players").remove(player.getName()); plugin.pllog.getStringList("players").remove(player.getName());
@ -103,7 +101,7 @@ public class AsyncronousRegister {
PlayerAuth auth = null; PlayerAuth auth = null;
try { try {
final String hashnew = PasswordSecurity.getHash(Settings.getPasswordHash, password, name); final String hashnew = PasswordSecurity.getHash(Settings.getPasswordHash, password, name);
auth = new PlayerAuth(name, hashnew, getIp(), 0, (int) player.getLocation().getX(), (int) player.getLocation().getY(), (int) player.getLocation().getZ(), player.getLocation().getWorld().getName(), email, realName); auth = new PlayerAuth(name, hashnew, getIp(), 0, (int) player.getLocation().getX(), (int) player.getLocation().getY(), (int) player.getLocation().getZ(), player.getLocation().getWorld().getName(), email);
} catch (NoSuchAlgorithmException e) { } catch (NoSuchAlgorithmException e) {
ConsoleLogger.showError(e.getMessage()); ConsoleLogger.showError(e.getMessage());
m._(player, "error"); m._(player, "error");
@ -142,9 +140,9 @@ public class AsyncronousRegister {
return; return;
} }
if (Settings.getMySQLColumnSalt.isEmpty() && !PasswordSecurity.userSalt.containsKey(name)) { if (Settings.getMySQLColumnSalt.isEmpty() && !PasswordSecurity.userSalt.containsKey(name)) {
auth = new PlayerAuth(name, hash, getIp(), new Date().getTime(), "your@email.com", player.getName()); auth = new PlayerAuth(name, hash, getIp(), new Date().getTime(), "your@email.com");
} else { } else {
auth = new PlayerAuth(name, hash, PasswordSecurity.userSalt.get(name), getIp(), new Date().getTime(), player.getName()); auth = new PlayerAuth(name, hash, PasswordSecurity.userSalt.get(name), getIp(), new Date().getTime());
} }
if (!database.saveAuth(auth)) { if (!database.saveAuth(auth)) {
m._(player, "error"); m._(player, "error");

View File

@ -27,7 +27,7 @@ public class ProcessSyncronousEmailRegister implements Runnable {
public ProcessSyncronousEmailRegister(Player player, AuthMe plugin) { public ProcessSyncronousEmailRegister(Player player, AuthMe plugin) {
this.player = player; this.player = player;
this.name = player.getName().toLowerCase(); this.name = player.getName();
this.plugin = plugin; this.plugin = plugin;
} }

View File

@ -31,7 +31,7 @@ public class ProcessSyncronousPasswordRegister implements Runnable {
public ProcessSyncronousPasswordRegister(Player player, AuthMe plugin) { public ProcessSyncronousPasswordRegister(Player player, AuthMe plugin) {
this.player = player; this.player = player;
this.name = player.getName().toLowerCase(); this.name = player.getName();
this.plugin = plugin; this.plugin = plugin;
} }

View File

@ -35,8 +35,8 @@ public class PlayersLogs extends CustomConfiguration {
public void addPlayer(String user) { public void addPlayer(String user) {
players = this.getStringList("players"); players = this.getStringList("players");
if (!players.contains(user.toLowerCase())) { if (!players.contains(user)) {
players.add(user.toLowerCase()); players.add(user);
set("players", players); set("players", players);
save(); save();
} }
@ -44,8 +44,8 @@ public class PlayersLogs extends CustomConfiguration {
public void removePlayer(String user) { public void removePlayer(String user) {
players = this.getStringList("players"); players = this.getStringList("players");
if (players.contains(user.toLowerCase())) { if (players.contains(user)) {
players.remove(user.toLowerCase()); players.remove(user);
set("players", players); set("players", players);
save(); save();
} }

View File

@ -28,7 +28,7 @@ public class MessageTask implements Runnable {
return; return;
for (Player player : plugin.getServer().getOnlinePlayers()) { for (Player player : plugin.getServer().getOnlinePlayers()) {
if (player.getName().toLowerCase().equals(name)) { if (player.getName().equals(name)) {
for (String ms : msg) { for (String ms : msg) {
player.sendMessage(ms); player.sendMessage(ms);
} }

View File

@ -35,7 +35,7 @@ public class TimeoutTask implements Runnable {
return; return;
for (Player player : plugin.getServer().getOnlinePlayers()) { for (Player player : plugin.getServer().getOnlinePlayers()) {
if (player.getName().toLowerCase().equals(name)) { if (player.getName().equals(name)) {
if (LimboCache.getInstance().hasLimboPlayer(name)) { if (LimboCache.getInstance().hasLimboPlayer(name)) {
LimboPlayer inv = LimboCache.getInstance().getLimboPlayer(name); LimboPlayer inv = LimboCache.getInstance().getLimboPlayer(name);
player.getServer().getScheduler().cancelTask(inv.getMessageTaskId()); player.getServer().getScheduler().cancelTask(inv.getMessageTaskId());