From 252235798279f6bb1855a511378fabf97937a5c5 Mon Sep 17 00:00:00 2001 From: Xephi Date: Sat, 10 Aug 2013 13:50:05 +0200 Subject: [PATCH] Update 2.9.2 * Add Register API * Fix Captcha message * Translate email commands * Fix 'cannot measure distance' problem * Fix some problem with connection manager * Add DOUBLEMD5 password hashing md5(md5(password)) * Add pt_PT translate * Add Korean translate --- pom.xml | 2 +- .../java/uk/org/whoami/authme/api/API.java | 23 ++++++++ .../authme/commands/CaptchaCommand.java | 2 +- .../whoami/authme/commands/EmailCommand.java | 38 ++++++------- .../datasource/MiniConnectionPoolManager.java | 2 +- .../authme/listener/AuthMePlayerListener.java | 5 ++ .../authme/security/PasswordSecurity.java | 27 +++++----- .../org/whoami/authme/settings/Messages.java | 11 ++++ .../org/whoami/authme/settings/Settings.java | 2 +- src/main/resources/messages_br.yml | 12 ++++- src/main/resources/messages_cz.yml | 10 ++++ src/main/resources/messages_de.yml | 12 ++++- src/main/resources/messages_en.yml | 11 +++- src/main/resources/messages_es.yml | 12 ++++- src/main/resources/messages_fi.yml | 10 ++++ src/main/resources/messages_fr.yml | 10 ++++ src/main/resources/messages_hu.yml | 10 ++++ src/main/resources/messages_it.yml | 10 ++++ src/main/resources/messages_ko.yml | 53 ++++++++++++++++++ src/main/resources/messages_lt.yml | 12 ++++- src/main/resources/messages_pl.yml | 10 ++++ src/main/resources/messages_pt.yml | 54 +++++++++++++++++++ src/main/resources/messages_ru.yml | 12 ++++- src/main/resources/messages_sk.yml | 12 ++++- src/main/resources/messages_zhcn.yml | 12 ++++- src/main/resources/messages_zhtw.yml | 12 ++++- src/main/resources/plugin.yml | 2 +- 27 files changed, 340 insertions(+), 48 deletions(-) create mode 100644 src/main/resources/messages_ko.yml create mode 100644 src/main/resources/messages_pt.yml diff --git a/pom.xml b/pom.xml index cff91fff..4c8bab4e 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ - 2.9.1 + 2.9.2 org.bukkit diff --git a/src/main/java/uk/org/whoami/authme/api/API.java b/src/main/java/uk/org/whoami/authme/api/API.java index babd0848..00879592 100644 --- a/src/main/java/uk/org/whoami/authme/api/API.java +++ b/src/main/java/uk/org/whoami/authme/api/API.java @@ -11,6 +11,7 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.plugin.Plugin; import uk.org.whoami.authme.AuthMe; +import uk.org.whoami.authme.ConsoleLogger; import uk.org.whoami.authme.Utils; import uk.org.whoami.authme.cache.auth.PlayerAuth; import uk.org.whoami.authme.cache.auth.PlayerCache; @@ -203,5 +204,27 @@ public class API { return false; } } + + /** + * Register a player + * @param String playerName, String password + * @return true if the player is register correctly + */ + public static boolean registerPlayer(String playerName, String password) { + try { + String name = playerName.toLowerCase(); + String hash = PasswordSecurity.getHash(Settings.getPasswordHash, password, name); + if (database.isAuthAvailable(name)) { + return false; + } + PlayerAuth auth = new PlayerAuth(name, hash, "198.18.0.1", 0); + if (!database.saveAuth(auth)) { + return false; + } + return true; + } catch (NoSuchAlgorithmException ex) { + return false; + } + } } diff --git a/src/main/java/uk/org/whoami/authme/commands/CaptchaCommand.java b/src/main/java/uk/org/whoami/authme/commands/CaptchaCommand.java index cff9ca99..d76170b4 100644 --- a/src/main/java/uk/org/whoami/authme/commands/CaptchaCommand.java +++ b/src/main/java/uk/org/whoami/authme/commands/CaptchaCommand.java @@ -68,7 +68,7 @@ public class CaptchaCommand implements CommandExecutor { plugin.cap.remove(name); } catch (NullPointerException npe) { } - player.sendMessage("Your captcha is correct"); + player.sendMessage(m._("valid_captcha")); player.sendMessage(m._("login_msg")); return true; } diff --git a/src/main/java/uk/org/whoami/authme/commands/EmailCommand.java b/src/main/java/uk/org/whoami/authme/commands/EmailCommand.java index c312b842..84ca73da 100644 --- a/src/main/java/uk/org/whoami/authme/commands/EmailCommand.java +++ b/src/main/java/uk/org/whoami/authme/commands/EmailCommand.java @@ -62,25 +62,25 @@ public class EmailCommand implements CommandExecutor { String name = player.getName().toLowerCase(); if (args.length == 0) { - player.sendMessage("usage: /email add "); - player.sendMessage("usage: /email change "); - player.sendMessage("usage: /email recovery "); + player.sendMessage(m._("usage_email_add")); + player.sendMessage(m._("usage_email_change")); + player.sendMessage(m._("usage_email_recovery")); return true; } if(args[0].equalsIgnoreCase("add")) { if (args.length != 3) { - player.sendMessage("[AuthMe] /email add "); + player.sendMessage(m._("usage_email_add")); return true; } if(args[1].equals(args[2]) && PlayerCache.getInstance().isAuthenticated(name)) { PlayerAuth auth = PlayerCache.getInstance().getAuth(name); if (auth.getEmail() == null || !auth.getEmail().contains("your@email.com")) { - player.sendMessage("[AuthMe] /email change "); + player.sendMessage("usage_email_change"); return true; } if (!args[1].contains("@")) { - player.sendMessage("[AuthMe] Invalid Email !"); + player.sendMessage(m._("email_invalid")); return true; } auth.setEmail(args[1]); @@ -89,10 +89,10 @@ public class EmailCommand implements CommandExecutor { return true; } PlayerCache.getInstance().updatePlayer(auth); - player.sendMessage("[AuthMe] Email Added !"); + player.sendMessage(m._("email_added")); player.sendMessage(auth.getEmail()); } else if (PlayerCache.getInstance().isAuthenticated(name)){ - player.sendMessage("[AuthMe] Confirm your Email ! "); + player.sendMessage(m._("email_confirm")); } else { if (!data.isAuthAvailable(name)) { player.sendMessage(m._("login_msg")); @@ -104,27 +104,27 @@ public class EmailCommand implements CommandExecutor { if(PlayerCache.getInstance().isAuthenticated(name)) { PlayerAuth auth = PlayerCache.getInstance().getAuth(name); if (auth.getEmail() == null || auth.getEmail().equals("your@email.com")) { - player.sendMessage("[AuthMe] Please use : /email add "); + player.sendMessage(m._("usage_email_add")); return true; } - if (!args[1].equals(auth.getEmail())) { - player.sendMessage("[AuthMe] Invalid Email !"); + if (!args[1].equals(auth.getEmail())) { + player.sendMessage(m._("old_email_invalid")); return true; } if (!args[2].contains("@")) { - player.sendMessage("[AuthMe] New Email is Invalid !"); + player.sendMessage(m._("new_email_invalid")); return true; } auth.setEmail(args[2]); if (!data.updateEmail(auth)) { - player.sendMessage("[AuthMe] /email command only available with MySQL and SQLite"); + player.sendMessage(m._("bad_database_email")); return true; } PlayerCache.getInstance().updatePlayer(auth); - player.sendMessage("[AuthMe] Email Change !"); - player.sendMessage("[AuthMe] Your Email : " + auth.getEmail()); + player.sendMessage(m._("email_changed")); + player.sendMessage(m._("email_defined") + auth.getEmail()); } else if (PlayerCache.getInstance().isAuthenticated(name)){ - player.sendMessage("[AuthMe] Confirm your Email ! "); + player.sendMessage(m._("email_confirm")); } else { if (!data.isAuthAvailable(name)) { player.sendMessage(m._("login_msg")); @@ -135,7 +135,7 @@ public class EmailCommand implements CommandExecutor { } if(args[0].equalsIgnoreCase("recovery")) { if (args.length != 2) { - player.sendMessage("usage: /email recovery "); + player.sendMessage(m._("usage_email_recovery")); return true; } if (plugin.mail == null) { @@ -167,7 +167,7 @@ public class EmailCommand implements CommandExecutor { } if (!args[1].equalsIgnoreCase(auth.getEmail())) { - player.sendMessage("[AuthMe] Invalid Email"); + player.sendMessage(m._("email_invalid")); return true; } final String finalhashnew = hashnew; @@ -180,7 +180,7 @@ public class EmailCommand implements CommandExecutor { } }); plugin.mail.main(auth, thePass); - player.sendMessage("[AuthMe] Recovery Email Send !"); + player.sendMessage(m._("email_send")); } catch (NoSuchAlgorithmException ex) { ConsoleLogger.showError(ex.getMessage()); sender.sendMessage(m._("error")); diff --git a/src/main/java/uk/org/whoami/authme/datasource/MiniConnectionPoolManager.java b/src/main/java/uk/org/whoami/authme/datasource/MiniConnectionPoolManager.java index d0ed6d08..45d626de 100644 --- a/src/main/java/uk/org/whoami/authme/datasource/MiniConnectionPoolManager.java +++ b/src/main/java/uk/org/whoami/authme/datasource/MiniConnectionPoolManager.java @@ -153,8 +153,8 @@ private synchronized Connection getConnection3() throws SQLException { else { pconn = dataSource.getPooledConnection(); pconn.addConnectionEventListener(poolConnectionEventListener); } - Connection conn = pconn.getConnection(); activeConnections++; + Connection conn = pconn.getConnection(); assertInnerState(); return conn; } diff --git a/src/main/java/uk/org/whoami/authme/listener/AuthMePlayerListener.java b/src/main/java/uk/org/whoami/authme/listener/AuthMePlayerListener.java index bcf30427..e83ba35e 100644 --- a/src/main/java/uk/org/whoami/authme/listener/AuthMePlayerListener.java +++ b/src/main/java/uk/org/whoami/authme/listener/AuthMePlayerListener.java @@ -521,8 +521,13 @@ public class AuthMePlayerListener implements Listener { if (Spawn.getInstance().getLocation() != null && Spawn.getInstance().getLocation().getWorld().equals(player.getWorld())) spawn = Spawn.getInstance().getLocation(); + if (!event.getPlayer().getWorld().equals(spawn.getWorld())) { + event.getPlayer().teleport(spawn); + return; + } if ((spawn.distance(player.getLocation()) > radius) ) { event.getPlayer().teleport(spawn); + return; } } diff --git a/src/main/java/uk/org/whoami/authme/security/PasswordSecurity.java b/src/main/java/uk/org/whoami/authme/security/PasswordSecurity.java index 722330cf..111ff2a9 100644 --- a/src/main/java/uk/org/whoami/authme/security/PasswordSecurity.java +++ b/src/main/java/uk/org/whoami/authme/security/PasswordSecurity.java @@ -224,6 +224,8 @@ public class PasswordSecurity { return getWBB3(password, saltwbb); case SHA512: return getSHA512(password); + case DOUBLEMD5: + return getMD5(getMD5(password)); default: throw new NoSuchAlgorithmException("Unknown hash algorithm"); } @@ -254,15 +256,14 @@ public class PasswordSecurity { String saltmybb = AuthMe.getInstance().database.getAuth(playername).getSalt(); return hash.equals(getSaltedMyBB(password, saltmybb)); } - if(Settings.getPasswordHash == HashAlgorithm.SMF) { + if(Settings.getPasswordHash == HashAlgorithm.SMF) return hash.equals(getSHA1(playername.toLowerCase() + password)); - } - if(Settings.getPasswordHash == HashAlgorithm.XFSHA1) { + if(Settings.getPasswordHash == HashAlgorithm.XFSHA1) return hash.equals(getSHA1(getSHA1(password) + Settings.getPredefinedSalt)); - } - if(Settings.getPasswordHash == HashAlgorithm.XFSHA256) { + if(Settings.getPasswordHash == HashAlgorithm.XFSHA256) return hash.equals(getSHA256(getSHA256(password)+ Settings.getPredefinedSalt)); - } + if(Settings.getPasswordHash == HashAlgorithm.DOUBLEMD5) + return hash.equals(getMD5(getMD5(password))); if(!Settings.getMySQLColumnSalt.isEmpty() && Settings.getPasswordHash == HashAlgorithm.SALTED2MD5) { String salt2md5 = AuthMe.getInstance().database.getAuth(playername).getSalt(); return hash.equals(getMD5(getMD5(password) + salt2md5)); @@ -271,19 +272,15 @@ public class PasswordSecurity { String saltj = hash.split(":")[1]; return hash.equals(getMD5(password + saltj) + ":" + saltj); } - if(Settings.getPasswordHash == HashAlgorithm.SHA512) { + if(Settings.getPasswordHash == HashAlgorithm.SHA512) return hash.equals(getSHA512(password)); - } // PlainText Password - if(hash.length() < 32 ) { + if(hash.length() < 32 ) return hash.equals(password); - } - if (hash.length() == 32) { + if (hash.length() == 32) return hash.equals(getMD5(password)); - } - if (hash.length() == 40) { + if (hash.length() == 40) return hash.equals(getSHA1(password)); - } if (hash.length() == 140) { int saltPos = (password.length() >= hash.length() ? hash.length() - 1 : password.length()); String salt = hash.substring(saltPos, saltPos + 12); @@ -339,7 +336,7 @@ public class PasswordSecurity { public enum HashAlgorithm { MD5, SHA1, SHA256, WHIRLPOOL, XAUTH, MD5VB, PHPBB, PLAINTEXT, MYBB, IPB3, PHPFUSION, SMF, XFSHA1, - XFSHA256, SALTED2MD5, JOOMLA, BCRYPT, WBB3, SHA512 + XFSHA256, SALTED2MD5, JOOMLA, BCRYPT, WBB3, SHA512, DOUBLEMD5 } } diff --git a/src/main/java/uk/org/whoami/authme/settings/Messages.java b/src/main/java/uk/org/whoami/authme/settings/Messages.java index cd4e106c..21437786 100644 --- a/src/main/java/uk/org/whoami/authme/settings/Messages.java +++ b/src/main/java/uk/org/whoami/authme/settings/Messages.java @@ -73,6 +73,17 @@ public class Messages extends CustomConfiguration { this.set("valid_captcha", "&cYour captcha is valid !"); this.set("kick_forvip", "&cA VIP Player join the full server!"); this.set("kick_fullserver", "&cThe server is actually full, Sorry!"); + this.set("usage_email_add", "&fUsage: /email add "); + this.set("usage_email_change", "&Usage: /email change "); + this.set("usage_email_recovery", "&Usage: /email recovery "); + this.set("email_add", "[AuthMe] /email add "); + this.set("new_email_invalid", "[AuthMe] New email invalid!"); + this.set("old_email_invalid", "[AuthMe] Old email invalid!"); + this.set("email_invalid", "[AuthMe] Invalid Email !"); + this.set("email_added", "[AuthMe] Email Added !"); + this.set("email_confirm", "[AuthMe] Confirm your Email !"); + this.set("email_changed", "[AuthMe] Email Change !"); + this.set("email_send", "[AuthMe] Recovery Email Send !"); } private void loadFile() { diff --git a/src/main/java/uk/org/whoami/authme/settings/Settings.java b/src/main/java/uk/org/whoami/authme/settings/Settings.java index bb1ef2f3..ba1e2323 100644 --- a/src/main/java/uk/org/whoami/authme/settings/Settings.java +++ b/src/main/java/uk/org/whoami/authme/settings/Settings.java @@ -588,7 +588,7 @@ public void mergeConfig() { } public enum messagesLang { - en, de, br, cz, pl, fr, ru, hu, sk, es, zhtw, fi, zhcn, lt, it + en, de, br, cz, pl, fr, ru, hu, sk, es, zhtw, fi, zhcn, lt, it, ko, pt } } diff --git a/src/main/resources/messages_br.yml b/src/main/resources/messages_br.yml index b6ab82f7..35c8b11d 100644 --- a/src/main/resources/messages_br.yml +++ b/src/main/resources/messages_br.yml @@ -38,4 +38,14 @@ usage_captcha: '&cUsage: /captcha ' wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA' valid_captcha: '&cYour captcha is valid !' kick_forvip: '&cA VIP Player join the full server!' -kick_fullserver: '&cThe server is actually full, Sorry!' \ No newline at end of file +kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/messages_cz.yml b/src/main/resources/messages_cz.yml index 39ed815f..b8626ce8 100644 --- a/src/main/resources/messages_cz.yml +++ b/src/main/resources/messages_cz.yml @@ -41,3 +41,13 @@ wrong_captcha: '&cSpatne opsana Captcha, pouzij prosim: /captcha CAPTCHA_TEXT' valid_captcha: '&cZadana captcha je OK !' kick_forvip: '&cA VIP Hrac se pripojil na plny server!' kick_fullserver: '&cServer je plne obsazen, zkus to pozdeji prosim !' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_de.yml b/src/main/resources/messages_de.yml index 7dad6614..380b0585 100644 --- a/src/main/resources/messages_de.yml +++ b/src/main/resources/messages_de.yml @@ -40,4 +40,14 @@ usage_captcha: '&cBenutze: /captcha ' wrong_captcha: '&cFalsches Captcha, bitte nutze: /captcha ' valid_captcha: '&cDas Captcha ist korrekt!' kick_forvip: '&cEin VIP Spieler hat den vollen Server betreten!' -kick_fullserver: '&cDer Server ist momentan voll, Sorry!' \ No newline at end of file +kick_fullserver: '&cDer Server ist momentan voll, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/messages_en.yml b/src/main/resources/messages_en.yml index 8b88fdaf..59d598b4 100644 --- a/src/main/resources/messages_en.yml +++ b/src/main/resources/messages_en.yml @@ -41,4 +41,13 @@ wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA' valid_captcha: '&cYour captcha is valid !' kick_forvip: '&cA VIP Player join the full server!' kick_fullserver: '&cThe server is actually full, Sorry!' - +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_es.yml b/src/main/resources/messages_es.yml index a25517e6..85b5a44a 100644 --- a/src/main/resources/messages_es.yml +++ b/src/main/resources/messages_es.yml @@ -41,4 +41,14 @@ usage_captcha: '&cUso: /captcha ' wrong_captcha: '&cCaptcha incorrecto, please use : /captcha EL_CAPTCHA' valid_captcha: '&c¡ Captcha ingresado correctamente !' kick_forvip: '&cA VIP Player join the full server!' -kick_fullserver: '&cThe server is actually full, Sorry!' \ No newline at end of file +kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/messages_fi.yml b/src/main/resources/messages_fi.yml index 3158619d..28497888 100644 --- a/src/main/resources/messages_fi.yml +++ b/src/main/resources/messages_fi.yml @@ -41,3 +41,13 @@ wrong_captcha: '&cVäärä varmistus, käytä : /captcha THE_CAPTCHA' valid_captcha: '&cSinun varmistus epäonnistui.!' kick_forvip: '&cA VIP Player join the full server!' kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_fr.yml b/src/main/resources/messages_fr.yml index 6b3df976..1f203dd5 100644 --- a/src/main/resources/messages_fr.yml +++ b/src/main/resources/messages_fr.yml @@ -42,3 +42,13 @@ wrong_captcha: '&cCaptcha incorrect, écrivez de nouveau : /captcha THE_CAPTCHA' valid_captcha: '&cLe Captcha est valide, merci!' kick_forvip: '&cUn joueur VIP a rejoint le serveur plein!' kick_fullserver: '&cLe serveur est actuellement plein, désolé!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_hu.yml b/src/main/resources/messages_hu.yml index c7cc93b7..4ab51fa9 100644 --- a/src/main/resources/messages_hu.yml +++ b/src/main/resources/messages_hu.yml @@ -41,3 +41,13 @@ wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA' valid_captcha: '&cYour captcha is valid !' kick_forvip: '&cA VIP Player join the full server!' kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_it.yml b/src/main/resources/messages_it.yml index e272bcbf..a6747d87 100644 --- a/src/main/resources/messages_it.yml +++ b/src/main/resources/messages_it.yml @@ -41,3 +41,13 @@ wrong_captcha: '&cCaptcha sbagliato, perfavore fai: /captcha THE_CAPTCHA' valid_captcha: "&cIl tuo captcha è valido!" kick_forvip: "&cUn player VIP è entrato mentre il server era pieno!" kick_fullserver: "&cIl server è attualmente pieno, ci dispiace!" +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/messages_ko.yml b/src/main/resources/messages_ko.yml new file mode 100644 index 00000000..6fb56a48 --- /dev/null +++ b/src/main/resources/messages_ko.yml @@ -0,0 +1,53 @@ +unknown_user: 사용자는 데이터베이스에 없습니다 +unsafe_spawn: 당신이 나갔던 위치는 안전하지 않았습니다, 당신을 윌드 스폰으로 텔레포트시킵니다 +not_logged_in: '&c로그인하지 않았습니다!' +reg_voluntarily: 당신이 서버에 게정을 등록하고 싶다면 "/register 비밀번호 비밀번호재입력"을 치세요 +usage_log: '&c사용법: /login 비밀번호' +wrong_pwd: '&c잘못된 비밀번호입니다' +unregistered: '&c성공적으로 회원탈퇴되었습니다!' +reg_disabled: '&c회원가입이 성공적으로 비활성화되었습니다' +valid_session: '&c세션 로그인' +login: '&c성공적으로 로그인 되었습니다!' +vb_nonActiv: 당신의 계정은 활성화되어 있지 않습니다 당신의 이메일을 체크해주세요! +user_regged: '&c사용자 이름은 이미 등록되어 있습니다' +usage_reg: '&c사용법: /register 비밀번호 비밀번호재입력' +max_reg: 당신은 가입할 수 있는 계정의 최대 한도 수를 넘었습니다 +no_perm: '&c권한이 없습니다' +error: 오류가 발생했습니다; 관리자한테 문의하세요 +login_msg: '&c로그인 하실려면 "/login 비밀번호"를 치세요' +reg_msg: '&c가입하실려면 "/register 비밀번호 비밀번호재입력"을 치세요' +reg_email_msg: '&c가입하실려면 "/register <이메일> <이메일재입력>을 치세요"' +usage_unreg: '&c사용법: /unregister 비밀번호' +pwd_changed: '&c비밀번호가 변경되었습니다!' +user_unknown: '&c사용자 이름은 등록되지 않았습니다' +password_error: 비밀번호가 일치하지 않습니다 +unvalid_session: Session Dataes doesnt corrispond 세션이 끝날때 까지 기달려주세요 +reg_only: 회원가입은 플레이어만 할 수 있습니다! http://example.com 에 가입해주세요 +logged_in: '&c이미 로그인되어 있습니다!' +logout: '&c성공적으로 로그아웃되었습니다' +same_nick: 같은 닉네임이 이미 게임중입니다 +registered: '&c성공적으로 회원가입되었습니다!' +pass_len: 당신의 비밀번호는 최소 글자나 최대글자를 초과하였습니다 적당한 비밀번호 글자로 해주세요 +reload: 설정과 데이터베이스가 리로드되었습니다 +timeout: 로그인 시간 초과 +usage_changepassword: '사용법: /changepassword 기존비밀번호 새비밀번호' +name_len: '&c당신의 닉네임은 너무 길거나 짧습니다' +regex: '&c당신의 닉네임에 잘못된 문자가 포함되어 있습니다. 허용된 글자: REG_EX' +add_email: '&c당신의 이메일을 : /email add yourEmail confirmEmail 명령어로 추가해주세요' +bad_database_email: '[AuthMe] /email 명령어는 오직 MySQL 와 SQLite에서만 가능합니다, 관리자에게 문의해보세요' +recovery_email: '&c비밀번호를 잊어버리셨다고요? /email recovery <자신의이메일>을 사용해서 복구해보세요' +usage_captcha: '&c사용법: /captcha <캡차>' +wrong_captcha: '&c잘못된 캡차입니다, 올바른 사용법 : /captcha THE_CAPTCHA' +valid_captcha: '&c당신의 캡차는 올바릅니다 !' +kick_forvip: '&c한 VIP 플레이어가 만원인 서버에 입장했습니다!!' +kick_fullserver: '&c그 서버는 실제로 만원입니다, 미안!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_lt.yml b/src/main/resources/messages_lt.yml index e1e40714..734ff07c 100644 --- a/src/main/resources/messages_lt.yml +++ b/src/main/resources/messages_lt.yml @@ -40,4 +40,14 @@ usage_captcha: '&cPanaudojimas: /captcha ' wrong_captcha: '&cNeteisinga Captcha, naudokite : /captcha THE_CAPTCHA' valid_captcha: '&cJusu captcha Teisinga!' kick_forvip: '&cA VIP prisijunge i pilna serveri!' -kick_fullserver: '&cServeris yra pilnas, Atsiprasome.' \ No newline at end of file +kick_fullserver: '&cServeris yra pilnas, Atsiprasome.' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/messages_pl.yml b/src/main/resources/messages_pl.yml index 5b0fd967..fb081acc 100644 --- a/src/main/resources/messages_pl.yml +++ b/src/main/resources/messages_pl.yml @@ -41,3 +41,13 @@ wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA' valid_captcha: '&cYour captcha is valid !' kick_forvip: '&cA VIP Player join the full server!' kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_pt.yml b/src/main/resources/messages_pt.yml new file mode 100644 index 00000000..beacb965 --- /dev/null +++ b/src/main/resources/messages_pt.yml @@ -0,0 +1,54 @@ +unknown_user: '&fUtilizador não existente na base de dados' +unsafe_spawn: '&fA sua localização na saída não é segura, será tele-portado para a Spawn' +not_logged_in: '&cNão autenticado!' +reg_voluntarily: '&fPode registar o seu nickname no servidor com o comando "/register password ConfirmePassword"' +usage_log: '&cUse: /login password' +wrong_pwd: '&cPassword errada!' +unregistered: '&cRegisto eliminado com sucesso!' +reg_disabled: '&cRegito de novos utilizadores desactivado' +valid_session: '&cSessão válida' +login: '&cAutenticado com sucesso!' +vb_nonActiv: '&fA sua conta não foi ainda activada, verifique o seu email onde irá receber indicações para activação de conta. ' +user_regged: '&cUtilizador já registado' +usage_reg: '&cUse: /register seu@email.com seu@email.com' +max_reg: '&cAtingiu o numero máximo de registos permitidos' +no_perm: '&cSem Permissões' +error: '&fOcorreu um erro; Por favor contacte um admin' +login_msg: '&cIdentifique-se com "/login password"' +reg_msg: '&cPor favor registe-se com "/register password ConfirmePassword"' +reg_email_msg: '&ePor favor registe-se com "/register "' +usage_unreg: '&cUse: /unregister password' +pwd_changed: '&cPassword alterada!' +user_unknown: '&cUsername não registado' +password_error: '&fAs passwords não coincidem' +unvalid_session: '&fDados de sessão não correspondem. Por favor aguarde o fim da sessão' +reg_only: '&fApenas jogadores registados! Visite http://example.com para se registar' +logged_in: '&cJá se encontra autenticado!' +logout: '&cSaida com sucesso' +same_nick: '&fO mesmo nickname já se encontra a jogar no servidor' +registered: '&cRegistado com sucesso!' +pass_len: '&fPassword demasiado curta' +reload: '&fConfiguração e base de dados foram recarregadas' +timeout: '&fExcedeu o tempo para autenticação' +usage_changepassword: '&fUse: /changepassword passwordAntiga passwordNova' +name_len: '&cO seu nick é demasiado curto ou muito longo.' +regex: '&cO seu nickname contém caracteres não permitidos. Permitido: REG_EX' +add_email: '&cPor favor adicione o seu email com : /email add seuEmail confirmarSeuEmail' +bad_database_email: '[AuthMe] O comando /email não está disponível contacte o staff via ticket' +recovery_email: '&cPerdeu a sua password? Para a recuperar escreva /email recovery ' +usage_captcha: '&cUse: /captcha ' +wrong_captcha: '&cCaptcha errado, por favor use : /captcha THE_CAPTCHA' +valid_captcha: '&cO seu captcha é válido!' +kick_forvip: '&cUm jogador VIP entrou no servidor cheio!' +kick_fullserver: '&cO servidor está actualmente cheio, lamentamos!' +usage_email_add: '&fUse: /email add ' +usage_email_change: '&fUse: /email change ' +usage_email_recovery: '&fUse: /email recovery ' +email_add: '/email add ' +new_email_invalid: 'Novo email inválido!' +old_email_invalid: 'Email antigo inválido!' +email_invalid: 'Email inválido!' +email_added: 'Email adicionado com sucesso!' +email_confirm: 'Confirme o seu email!' +email_changed: 'Email alterado com sucesso!' +email_send: 'Nova palavra-passe enviada para o seu email!' diff --git a/src/main/resources/messages_ru.yml b/src/main/resources/messages_ru.yml index 22088bbf..78d6cefb 100644 --- a/src/main/resources/messages_ru.yml +++ b/src/main/resources/messages_ru.yml @@ -45,4 +45,14 @@ usage_captcha: '&cUsage: /captcha ' wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA' valid_captcha: '&cYour captcha is valid !' kick_forvip: '&cA VIP Player join the full server!' -kick_fullserver: '&cThe server is actually full, Sorry!' +kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_sk.yml b/src/main/resources/messages_sk.yml index 03ccb659..ce201838 100644 --- a/src/main/resources/messages_sk.yml +++ b/src/main/resources/messages_sk.yml @@ -44,4 +44,14 @@ usage_captcha: '&cUsage: /captcha ' wrong_captcha: '&cWrong Captcha, please use : /captcha THE_CAPTCHA' valid_captcha: '&cYour captcha is valid !' kick_forvip: '&cA VIP Player join the full server!' -kick_fullserver: '&cThe server is actually full, Sorry!' \ No newline at end of file +kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/messages_zhcn.yml b/src/main/resources/messages_zhcn.yml index 57c389fe..6cc2f81d 100644 --- a/src/main/resources/messages_zhcn.yml +++ b/src/main/resources/messages_zhcn.yml @@ -40,4 +40,14 @@ usage_captcha: '&c正确用法:/captcha <验证码>' wrong_captcha: '&c错误的验证码,请输入:“/captcha <验证码>”' valid_captcha: '&c你的验证码是有效的!' kick_forvip: '&cA VIP Player join the full server!' -kick_fullserver: '&cThe server is actually full, Sorry!' +kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' diff --git a/src/main/resources/messages_zhtw.yml b/src/main/resources/messages_zhtw.yml index 9be69621..c83dbb76 100644 --- a/src/main/resources/messages_zhtw.yml +++ b/src/main/resources/messages_zhtw.yml @@ -40,4 +40,14 @@ usage_captcha: '&c用法 : 《 /captcha <驗證碼> 》' wrong_captcha: '&c你輸入了錯誤的驗證碼,請使用 《 /captcha <驗證碼> 》 再次輸入 。' valid_captcha: '&c你的驗證碼是無效的 !' kick_forvip: '&cA VIP Player join the full server!' -kick_fullserver: '&cThe server is actually full, Sorry!' \ No newline at end of file +kick_fullserver: '&cThe server is actually full, Sorry!' +usage_email_add: '&fUsage: /email add ' +usage_email_change: '&fUsage: /email change ' +usage_email_recovery: '&fUsage: /email recovery ' +new_email_invalid: '[AuthMe] New email invalid!' +old_email_invalid: '[AuthMe] Old email invalid!' +email_invalid: '[AuthMe] Invalid Email' +email_added: '[AuthMe] Email Added !' +email_confirm: '[AuthMe] Confirm your Email !' +email_changed: '[AuthMe] Email Change !' +email_send: '[AuthMe] Recovery Email Send !' \ No newline at end of file diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 23cd557b..33afb27d 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -3,7 +3,7 @@ author: Xephi59 website: http://www.multiplayer-italia.com/ description: AuthMe prevents people, which aren't logged in, from doing stuff like placing blocks, moving, typing commands or seeing the inventory of the current player. main: uk.org.whoami.authme.AuthMe -version: 2.9.1 +version: 2.9.2 softdepend: [Vault, ChestShop, Spout, Multiverse-Core, Notifications, Citizens, CombatTag, Essentials, EssentialsSpawn] commands: register: