Guest User

Untitled

a guest
Oct 9th, 2018
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.86 KB | None | 0 0
  1. package me.bmx.register;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.net.HttpURLConnection;
  7. import java.net.URL;
  8. import java.util.logging.Logger;
  9.  
  10. import org.bukkit.ChatColor;
  11. import org.bukkit.command.Command;
  12. import org.bukkit.command.CommandExecutor;
  13. import org.bukkit.command.CommandSender;
  14. import org.bukkit.entity.Player;
  15.  
  16. public class CommandManager
  17. implements CommandExecutor
  18. {
  19. private final Register plugin;
  20.  
  21. public CommandManager(Register plugin)
  22. {
  23. this.plugin = plugin;
  24. }
  25.  
  26. public boolean onCommand(CommandSender sender, Command cmd, String cmdLayout, String[] args)
  27. {
  28. if ((sender instanceof Player)) {
  29. if (sender.hasPermission("metroville.register")) {
  30. if (args.length == 3) {
  31. if (args[0].matches("^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$")) {
  32. if ((args[1].length() >= 2) && (args[1].length() <= 16) && (args[1].equals(args[2]))) {
  33. HttpURLConnection conn = null;
  34. BufferedReader reader = null;
  35. try {
  36. String parameters = "?user=" + sender.getName() + "&email=" + args[0] + "&password=" + args[1];
  37. conn = (HttpURLConnection)new URL(this.plugin.getURL() + parameters).openConnection();
  38. reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
  39. String result = reader.readLine();
  40. if (result.equals("success"))
  41. sender.sendMessage("You have been registered successfully!");
  42. else if (result.contains("fail: "))
  43. sender.sendMessage("Failed to register: " + result.replaceFirst("fail: ", ""));
  44. else sender.sendMessage("An unknown error has happened. Error: " + result);
  45. }
  46. catch (IOException e) {
  47. this.plugin.log.info("Failed to open connection to the given URL: " + this.plugin.getURL());
  48. sender.sendMessage("The registration has failed. Please try again later.");
  49. } finally {
  50. try {
  51. reader.close();
  52. } catch (IOException e) {
  53. this.plugin.log.info("Failed to close a URL reader: " + e);
  54. }
  55. }
  56. } else {
  57. sender.sendMessage(ChatColor.RED + "Your password(s) has to be 2 or more and 16 or less characters. Passwords must match.");
  58. }
  59. } else sender.sendMessage("The first parameter doesn't seem to be a valid e-mail address.");
  60. }
  61. else return false;
  62. }
  63. else sender.sendMessage(ChatColor.RED + "You don't have permission to do this.");
  64. }
  65. else sender.sendMessage(ChatColor.RED + "This command can be used only by players.");
  66. return true;
  67. }
  68. }
Add Comment
Please, Sign In to add comment